5个版本

使用旧的Rust 2015

0.0.5 2015年7月21日
0.0.4 2015年4月4日
0.0.3 2015年3月29日
0.0.2 2015年2月8日
0.0.1 2015年2月1日

#1220算法

Download history 1849/week @ 2024-03-14 1580/week @ 2024-03-21 1760/week @ 2024-03-28 1551/week @ 2024-04-04 1631/week @ 2024-04-11 1859/week @ 2024-04-18 1543/week @ 2024-04-25 2622/week @ 2024-05-02 2280/week @ 2024-05-09 1387/week @ 2024-05-16 1752/week @ 2024-05-23 23778/week @ 2024-05-30 19763/week @ 2024-06-06 13312/week @ 2024-06-13 6024/week @ 2024-06-20 4441/week @ 2024-06-27

50,268 每月下载量
24 个crate中使用了(直接使用13个)

MIT 协议

13KB
298

MurmurHash3.rs

https://travis-ci.org/mhallin/murmurhash3-rs.svg?branch=master

是MurmurHash3的Rust实现。包含32位和128位版本。128位版本使用64位数据类型实现,最适合x86_64或其他64位架构。


用法

在你的Cargo.toml:

[dependencies]
murmurhash3 = "*"

然后你可以开始使用以下任意一个murmurhash3_x86_32murmurhash3_x64_128:

use murmurhash3::murmurhash3_x64_128;

fn hash_value() {
    let data = "test data";
    let seed = 48221234;

    let hash = murmurhash3_x64_128(data.as_bytes(), seed);
}

不幸的是,在HashState库实现中存在一个bug,这阻止了新的Hasher实现,例如在HashMap中使用。此外,只能使用32位哈希器,因为它HashMap内部使用64位哈希。

测试

cargo test

以3级优化级别运行所有测试,以排除优化器可能引起的问题。

无运行时依赖