2 个版本
0.1.1 | 2023年6月20日 |
---|---|
0.1.0 | 2023年6月20日 |
#2782 in Rust 模式
7KB
145 行
哈希一致性静态短字符串存储
此软件包用于尽可能紧凑地存储静态短字符串(最多256字节)。而不是为每个字符串分配自己的空间,并关联填充、头部等,它们被打包存储在1 MiB的分配中。长度存储在分配中,使得 Str 类型的栈大小为1个词,而不是 &str 的通常2个。因为长度限制为256字节,堆分配中只使用一个额外的字节来存储长度。
lib.rs
:
全局、永久、打包、哈希一致性、短字符串存储。
- 支持长达256字节的字符串
- 解引用为 &str,但在栈上只使用1个词,在堆上使用 len + 1 个字节
- 实际字节被打包存储在1 MiB的分配中,以避免大量小 mallocs 的开销
- 可复制!
- 哈希一致性,相同的 &str 总是产生指向同一内存的指针
永远不会被释放
依赖项
~0.6–6MB
~16K SLoC