2个版本
0.1.2 | 2024年4月1日 |
---|---|
0.1.1 |
|
0.1.0 | 2024年1月14日 |
#1229 in 算法
100KB
2.5K SLoC
用于生成任何类型哈希的特性和实用工具
此crate提供Hash
、Hasher
和BuildHasher
特性和,它们几乎与core
/std
中的对应物完全相同,除了Hasher
和BuildHasher
是泛型哈希类型之外,Hash
可以与任何类型的哈希一起使用。还提供Hash
的derive宏。
Hash
特性和使用HasherWrite
特性和进行哈希,该特性包含您在Hasher
中熟悉的所有写方法,除了finish
方法,因为Hash
不知道哈希的类型。
哈希算法实现了Hasher
和HasherWrite
特性和。Hasher
是泛型哈希类型,仅包含finish
方法。它依赖于HasherWrite
,因此您可以像使用核心中的Hasher
一样使用它。
此crate还提供用于处理端序无关哈希的工具和一些哈希器实现。
功能
该crate是no_std
,默认不启用任何功能。以下功能可用
alloc
:启用对标准alloc
crate的特实现。std
:启用对标准std
crate的特实现。隐含alloc
。
可选集成
bnum
:为bnum
crate的类型实现Hash
,并添加支持将它们用作内置哈希器使用的哈希类型。
内置哈希器
fnv
:使用Fnv1和Fnv1a算法的哈希器。spooky
:使用SpookyHash算法的哈希器。V1和V2都可用。xxh64
:使用Xxh64算法的哈希器。
依赖项
~0.3–0.9MB
~20K SLoC