9 个版本
| 0.2.5 | 2022 年 6 月 13 日 |
|---|---|
| 0.2.4 | 2022 年 6 月 13 日 |
| 0.1.2 | 2021 年 8 月 27 日 |
#171 in 无标准库
每月 27 次下载
115KB
2.5K SLoC
Department
一个 Rust 库,它提供了一个可能的 Storages API 实现,以及使用它实现的几个标准 std 集合。
受 storage-poc 的启发,重新实现并在此基础上构建,以提供(希望是)可发布的功能。
特性
默认情况下,所有功能都已开启 - 但如果您只想使用特定的存储和集合,则可以禁用它们
std:是否包含 std 错误支持和其他仅限 std 的功能all_storages:启用所有存储功能inline:堆栈上的内联存储static:由静态内存支持的存储,存储在二进制文件中alloc:由标准分配器支持的存储。需要alloccrate 可用fallback:尝试在一个存储中存储某个东西,然后回退到第二个存储的存储debug:包装另一个存储并提供在特定形式的 UB 或错误使用时引发 panic 的运行时检查的存储
all_collections:启用所有集合类型box:包含Box类型vec:包含Vec类型string:包含String类型,需要vec
未来工作
未来,需要添加更多类型的存储和集合,希望达到与 std 相当的水平。应为所有存储类型添加测试,并覆盖大多数边缘情况(ZST、对齐要求等)。
缺少的集合
btree,一个 BTreeMap 和 BTreeSet 的实现 hash,一个 HashMap 和 HashSet 的实现
依赖关系
~145KB