17个版本 (10个重大更新)

0.10.0 2022年10月6日
0.8.1 2022年7月22日
0.6.0 2022年3月25日
0.0.2 2021年12月15日
0.0.1 2021年11月24日

#1158 in 数据结构

每月48次下载

MIT/Apache

390KB
10K SLoC

crates.io docs.rs

cds - 优化数据结构集合

cds 实现了为速度、小内存占用和安全性而编写的便捷数据结构。

包含哪些内容?

  • SpareMemoryPolicy - 一个用于处理集合中备用内存的自定义策略(允许擦除未使用的内存以删除可能敏感的数据)
  • LengthType - 一个用于跟踪集合长度的自定义类型(允许创建非常紧凑的集合类型)
  • ArrayVec - 具有类似向量API的数组
  • ArrayString - 具有类似字符串API的数组
  • lformat! - 一个宏,用于在堆上格式化字符串,无需内存分配(产生一个 ArrayString
  • aformat! - 一个宏,用于在堆上格式化字符串,无需内存分配(产生一个 Result<ArrayString>
  • SmallVec - 一个具有对小容量优化的小型可增长数组

包功能

  • arrayvec - 启用 ArrayVec
  • arraystring - 启用 ArrayString
  • smallvec - 启用 SmallVec,意味着 alloc
  • alloc - 启用标准 alloc 包的使用
  • std- 启用Rust标准库的使用。意味着 alloc,并启用在 core 中不可用的标准特质的实现。如果没有此功能,则包为 no_std

默认情况下,所有可选功能都启用。要在 no_std 环境中构建,或避免编译不需要的功能,请使用 default-features = false 并显式选择所需功能。

文档

文档位于 docs.rs/cds

路线图

  • SmallString - 具有本地容量的字符串,以避免堆分配

变更日志

变更日志维护在 CHANGELOG.md

许可证

许可协议为以下之一

由您选择。

贡献

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

标签

small secure vector string array smallvec smallstr

无运行时依赖

功能