[package]
name = "ptr_hash"
version = "1.0.0"
edition = "2021"
license = "MIT"
authors = ["Ragnar Groot Koerkamp"]
repository = "https://github.com/RagnarGrootKoerkamp/ptrhash"
homepage = "https://curiouscoding.nl/posts/ptrhash"
description = "A high-throughput minimal perfect hash function"
readme = "readme.md"
keywords = ["hashing", "minimal", "perfect", "mphf"]
categories = ["data-structures", "science"]
include = ["src/**/*", "examples/*", "readme.md"]
[profile.release]
lto = "thin"
incremental = true
[dependencies]
anyhow = "1.0.75"
bitvec = "1.0.1"
clap = { version = "4.4.6", features = ["derive"] }
colored = "3.0.0"
common_traits = "0.11.2"
epserde = { version = "0.8.0", optional = true }
epserde-derive = {version = "0.8.0", optional = true }
itertools = "0.14.0"
lazy_static = "1.4.0"
rand = "0.9.0"
rand_chacha = "0.9.0"
rayon = "1.8.0"
rdst = "0.20.11"
rustc-hash = "2.1.1"
sucds = "0.8.0"
tempfile = "3.8.1"
fastrand = "2.0.1"
serde = { version = "1.0.215", features = ["derive"] }
mem_dbg = "0.3.0"
cacheline-ef = "1.0.0"
fxhash = "0.2.1"
xxhash-rust = {version = "0.8.7", features = ["xxh64", "xxh3"]}
cityhash-102-rs = {version="0.1.0", optional=true}
fastmurmur3 = {version="0.2.0", optional=true}
hashers = {version="1.0.1", optional=true}
highway = {version="1.1.0", optional=true}
metrohash = {version="1.0.6", optional=true}
murmur2 = {version="0.1.0", optional=true}
murmur3 = {version="0.5.2", optional=true}
wyhash = {version="0.5.0", optional=true}
[features]
epserde = ["dep:epserde", "dep:epserde-derive", "cacheline-ef/epserde"]
unstable = []
hashers = ["dep:cityhash-102-rs", "dep:fastmurmur3", "dep:hashers", "dep:highway", "dep:metrohash", "dep:murmur2", "dep:murmur3", "dep:wyhash"]
default = ["epserde"]
[dev-dependencies]
serde_json = "1.0.133"
[[example]]
name = "epserde"
required-features = ["epserde"]