68个版本 (21个稳定版)

1.10.0 2024年7月9日
1.8.0 2024年3月19日
1.6.1 2023年11月20日
1.4.1 2023年7月17日
0.1.0 2014年11月27日

#1 in 解析器实现

Download history 1767825/week @ 2024-05-04 1878946/week @ 2024-05-11 1893436/week @ 2024-05-18 1842818/week @ 2024-05-25 2038859/week @ 2024-06-01 2080099/week @ 2024-06-08 1972961/week @ 2024-06-15 2029268/week @ 2024-06-22 1880110/week @ 2024-06-29 2162345/week @ 2024-07-06 2071670/week @ 2024-07-13 2107945/week @ 2024-07-20 2064253/week @ 2024-07-27 2073046/week @ 2024-08-03 2170729/week @ 2024-08-10 1822244/week @ 2024-08-17

每月下载量 8,485,474
13,785 个crate中使用 (4,639 个直接使用)

Apache-2.0 OR MIT

245KB
4K SLoC

uuid

Latest Version Continuous integration

以下是一个UUID的示例

67e55044-10b1-426f-9247-bb680e5fe0c8

UUID是一个唯一的128位值,存储为16个八位字节,通常以十六进制字符串的形式格式化为五组。UUID用于为实体分配唯一标识符,而无需中央分配权威机构。

它们在分布式系统中特别有用,尽管可以在不同的领域中使用,例如数据库和网络协议。通常,UUID以可读的字符串形式作为十六进制数字的序列显示,由连字符分隔成组。

唯一性属性并非严格保证,但从所有实际目的来看,无意中发生冲突的可能性极低。

入门

将以下内容添加到您的 Cargo.toml

[dependencies.uuid]
version = "1.10.0"
features = [
    "v4",                # Lets you generate random UUIDs
    "fast-rng",          # Use a faster (but still sufficiently random) RNG
    "macro-diagnostics", # Enable better diagnostics for compile-time UUIDs
]

当您需要UUID时,可以生成一个

use uuid::Uuid;

let id = Uuid::new_v4();

如果您有一个UUID值,您可以使用其字符串字面量形式内联使用

use uuid::{uuid, Uuid};

const ID: Uuid = uuid!("67e55044-10b1-426f-9247-bb680e5fe0c8");

您也可以不使用任何crate功能来解析UUID

use uuid::{Uuid, Version};

let my_uuid = Uuid::parse_str("67e55044-10b1-426f-9247-bb680e5fe0c8")?;

assert_eq!(Some(Version::Random), my_uuid.get_version());

如果您想以非常快的速度解析UUID,请查看uuid-simd库。

有关使用uuid的更多详细信息,请参阅库文档

参考


许可证

在以下许可证下发布:

由您选择。

FOSSA Status

贡献

除非您明确说明,否则根据Apache-2.0许可证定义的任何有意提交以包含在作品中的贡献,都将按上述方式双授权,不附加任何额外条款或条件。

依赖项

~0–1.1MB
~19K SLoC