9个版本
0.4.3 | 2023年11月7日 |
---|---|
0.4.2 | 2023年10月18日 |
0.4.1 | 2022年12月18日 |
0.4.0 | 2022年5月26日 |
0.1.0 | 2022年3月11日 |
#57 in 文本处理
53,972 每月下载量
用于 150 个crates (6 直接)
74KB
1.5K SLoC
Str Indices
统计并转换utf8字符串切片上的不同索引方案。
当前支持以下方案
- 字符(Unicode标量值)。
- UTF16代码单元。
- 行,支持三种识别换行符的选项
- 仅行喂。
- 行喂和回车。
- 所有Unicode换行符,如Unicode附件#14中指定。
特性标志
默认启用的simd
特性标志在支持的平台上进行显式SIMD优化。禁用它将在所有平台上使用回退标量代码路径。此特性标志仅影响性能,不影响行为。
不安全代码
Str Indices使用不安全代码进行性能优化,主要用于SIMD内嵌函数。不安全代码保持最小化,主要隔离,易于审计。整个代码库也进行了模糊测试。
如果您想自己运行模糊测试套件,请安装Rust夜间版和cargo fuzz,然后从仓库根目录运行以下命令
cargo +nightly fuzz run random_strings
非常感谢运行模糊测试套件的额外运行以及代码库的一般审计。如果您发现任何不稳定性,请提交一个问题!
许可证
该项目根据以下任一许可证授权
- Apache许可证版本2.0,(LICENSE-APACHE 或 http://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则您提交的任何有意包含在Str Indices中的贡献将根据上述许可证授权,不附加任何额外条款或条件。
这个crate是no-std,不进行分配,并且没有依赖,旨在保持这种状态。请在提交的贡献中遵守这一点。