1个不稳定发布
0.1.0 | 2024年7月11日 |
---|
#30 在 编程语言
33,269 每月下载量
52KB
871 行
rustc-stable-hash
rustc使用的稳定哈希算法:跨平台、确定性的,但不安全。
该crate提供通过抽象处理字节序和目标usize/isize
位大小差异,在不稳定哈希器上创建稳定哈希器的设施。
目前,该crate提供了自己的128位SipHasher
实现:SipHasher128
;以及用于稳定版本的StableSipHasher128
。
用法
use rustc_stable_hash::hashers::{StableSipHasher128, SipHasher128Hash};
use rustc_stable_hash::FromStableHash;
use std::hash::Hasher;
struct Hash128([u64; 2]);
impl FromStableHash for Hash128 {
type Hash = SipHasher128Hash;
fn from(SipHasher128Hash(hash): SipHasher128Hash) -> Hash128 {
Hash128(hash)
}
}
let mut hasher = StableSipHasher128::new();
hasher.write_usize(0xFA);
let hash: Hash128 = hasher.finish();