[package]
edition = "2021"
rust-version = "1.65"
name = "hazarc"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A wait-free AtomicArc optimized for read-intensive use cases."
readme = "README.md"
keywords = [
"atomic",
"arc",
"cache",
"no_std",
]
categories = [
"concurrency",
"data-structures",
"memory-management",
"caching",
"no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/wyfo/hazarc"
[package.metadata.docs.rs]
all-features = true
[features]
default = ["default-domain"]
default-domain = []
domain-gc = []
pthread-domain = ["dep:libc"]
serde = ["dep:serde"]
[lib]
name = "hazarc"
path = "src/lib.rs"
bench = false
[[test]]
name = "miri"
path = "tests/miri.rs"
[[bench]]
name = "comparison"
path = "benches/comparison.rs"
harness = false
required-features = ["default-domain"]
[dependencies.crossbeam-utils]
version = "0.8"
[dependencies.libc]
version = "0.2"
optional = true
[dependencies.serde]
version = "1"
optional = true
[dev-dependencies.arc-swap]
version = "1.8.0"
[dev-dependencies.divan]
version = "0.1.21"
[lints.clippy]
dbg_macro = "warn"
incompatible_msrv = "allow"
semicolon_if_nothing_returned = "forbid"
[lints.rust]
missing_debug_implementations = "forbid"
unsafe_op_in_unsafe_fn = "deny"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(hazarc_force_active_writer_count_64bit)"]