27次发布

0.2.2 2024年5月14日
0.2.1 2024年1月16日
0.2.0 2023年4月11日
0.1.25 2023年3月30日
0.1.7 2018年10月13日

Rust模式中排名27

Download history 198714/week @ 2024-05-02 187929/week @ 2024-05-09 202210/week @ 2024-05-16 205415/week @ 2024-05-23 207104/week @ 2024-05-30 208226/week @ 2024-06-06 221199/week @ 2024-06-13 224051/week @ 2024-06-20 214528/week @ 2024-06-27 210587/week @ 2024-07-04 214655/week @ 2024-07-11 224907/week @ 2024-07-18 226709/week @ 2024-07-25 220864/week @ 2024-08-01 237221/week @ 2024-08-08 221370/week @ 2024-08-15

每月下载量947,680
2,152个crate(186个直接)中使用

MIT/Apache

32KB
784

smol_str

CI Crates.io API reference

SmolStr是一种具有以下特性的字符串类型

  • size_of::<SmolStr>() == 24(因此,在64位平台上等于== size_of::<String>()
  • CloneO(1)
  • 如果字符串满足以下条件,则为栈分配
    • 长度不超过23字节
    • 长度超过23字节,但为WS(见src/lib.rs)的子字符串。此类字符串仅由连续的换行符后跟连续的空格组成
  • 如果字符串不满足上述条件,则为堆分配
  • 此外,可以从&'static str显式创建SmolStr,而无需分配

然而,与String不同,SmolStr是不可变的。SmolStr的主要用途是典型编程语言中令牌的足够好的默认存储。由于缩进,由一系列换行符后跟一系列空白符组成的字符串是计算机程序中的典型模式。请注意,对于某些用例,专门的intern器可能是一个更好的解决方案。

MSRV策略

最小支持的Rust版本:最新稳定版。

提高MSRV不被视为semver破坏性更改。

依赖项

~185KB