[package]
name = "qfilter"
version = "0.2.3"
description = "Efficient bloom filter like datastructure, based on the Rank Select Quotient Filter (RSQF)"
repository = "https://github.com/arthurprs/qfilter"
authors = ["Arthur Silva <arthurprs@gmail.com>"]
edition = "2021"
license = "MIT"
keywords = ["rsqf", "cqf", "quotient-filter", "bloom-filter", "cuckoo-filter"]
categories = ["data-structures"]
readme = "README.md"
exclude = ["fuzz", "benches"]

[features]
default = []
# Enable to support running on x64 cpus released before 2008
legacy_x86_64_support = []
jsonschema = ["schemars"]
serde = ["dep:serde", "dep:serde_bytes"]

[dependencies]
xxhash-rust = { version = "0.8.12", features = ["xxh3"] }
serde = { optional = true, version = "1", features = ["derive"] }
serde_bytes = { optional = true, version = "0.11" }
schemars = { optional = true, version = "0.8" }

[dev-dependencies]
serde_cbor = "0.11"
qfilter01 = { package = "qfilter", version = "0.1", features = ["serde"] }

[profile.bench]
opt-level = 3
debug = true

[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }

[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
