9 个版本

0.1.7 2021 年 12 月 29 日
0.1.6 2021 年 12 月 24 日
0.1.5 2021 年 1 月 2 日
0.1.4 2018 年 12 月 26 日
0.0.0 2018 年 10 月 22 日

#286并发

Download history 843/week @ 2024-03-14 434/week @ 2024-03-21 475/week @ 2024-03-28 424/week @ 2024-04-04 483/week @ 2024-04-11 577/week @ 2024-04-18 613/week @ 2024-04-25 507/week @ 2024-05-02 535/week @ 2024-05-09 495/week @ 2024-05-16 581/week @ 2024-05-23 983/week @ 2024-05-30 898/week @ 2024-06-06 862/week @ 2024-06-13 604/week @ 2024-06-20 369/week @ 2024-06-27

2,871 每月下载量
10 软件包中使用 (直接使用 7 个)

GPL-3.0-or-later

18KB
168

pipeline coverage crates.io Docs rustc

uid

uid(代表 唯一 标识符)是一个软件包,用于在 Rust 程序中创建唯一 ID。ID 在程序中可以有许多用途,但此软件包的 ID 主要用于标识任务。例如,考虑某种形式的简单内存数据库(以 HashMap 或更复杂的结构形式)。此软件包创建的 ID 完美地作为主键。

这些 ID 具有一些属性,根据上下文,这些属性可能很有用

  1. ID 轻量级,最终只是一个带有一些编译时魔法(以及少量创建成本)的数字。
  2. 创建的 ID 保证是唯一的。也就是说,在运行时创建时(出于明显的原因,不支持反序列化),两个新创建的 ID 保证永远不会相同。
  3. 它们是完全线程安全的。也就是说,即使在不同的线程之间,唯一性也是保证的。
  4. ID 是不可变的。一旦创建,ID 可以(可能)被复制、哈希、比较等,但不能更改。
  5. ID 可以形成名称(或类型)空间。也就是说,ID 可以通过任意(可能是私有的)类型进行参数化,并且只有通过相同类型参数化的 ID 可以交互(即进行比较等)。

无运行时依赖