[package]
name = "cnk"
version = "0.2.1"
authors = ["Arc <attobop@gmail.com>"]
edition = "2021"
description = "ID set compression with auto codec selection"
license = "MIT OR Apache-2.0"
repository = "https://github.com/arclabs561/cnk"
keywords = ["compression", "entropy", "inverted-index"]
categories = ["compression", "algorithms"]

[workspace]

[features]
default = []
# Enable foundational ANS entropy coding (internal module; API may change).
ans = ["dep:ans"]
# Enable Elias-Fano and other succinct baselines
sbits = ["dep:sbits"]
# All features
full = ["ans", "sbits"]

[dependencies]
ans = { version = "0.4", optional = true }
sbits = { version = "0.2", optional = true }
crc32fast = "1.4"
[lib]
path = "src/lib.rs"

[dev-dependencies]
proptest = "1.5"
criterion = { version = "0.5", features = ["html_reports"] }
postings = "0.2"

[[example]]
name = "roc_set_bounds"
path = "examples/roc_set_bounds.rs"
required-features = ["ans"]

[[bench]]
name = "compression"
harness = false
