[package]
name = "osom_lib_hash_tables"
version = "0.1.5"
edition.workspace = true
authors.workspace = true
rust-version.workspace = true
license-file.workspace = true
homepage.workspace = true
repository.workspace = true
readme.workspace = true
description = "ABI-stable hash table implementations for osom_lib."
documentation = "https://docs.rs/osom_lib_hash_tables"

[dependencies]
serde = { workspace = true, optional = true }

osom_lib_macros = { path = "../osom_lib_macros", version = "0.1" }
osom_lib_primitives = { path = "../osom_lib_primitives", version = "0.1" }
osom_lib_reprc = { path = "../osom_lib_reprc", version = "0.1" }
osom_lib_alloc = { path = "../osom_lib_alloc", version = "0.1" }
osom_lib_hashes = { path = "../osom_lib_hashes", version = "0.1" }
osom_lib_numbers = { path = "../osom_lib_numbers", version = "0.1" }
osom_lib_try_clone = { path = "../osom_lib_try_clone", version = "0.1" }
osom_lib_entropy_cprng = { path = "../osom_lib_entropy_cprng", version="0.1", optional=true }

[dev-dependencies]
paste = { workspace = true }
rstest = { workspace = true }
criterion = { workspace = true }
serde_json = { workspace = true }

[features]
default = ["std"]
serde = ["dep:serde"]
std = ["osom_lib_alloc/std", "osom_lib_entropy_cprng"]

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

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