[package]
name = "expire_cache"
version = "0.1.14"
edition = "2024"
license = "MulanPSL-2.0"
repository = "https://github.com/js0-site/rust.git"
homepage = "https://github.com/js0-site/rust/tree/main/expire_cache"
description = "Efficient double-buffered expiration cache / 高效双缓冲过期缓存"
keywords = ["cache", "expire", "concurrent", "async", "buffer"]

[features]
default = []
dashmap = ["dep:dashmap"]
dashset = ["dep:dashmap"]
get_or_init_async = []
get_or_init = []


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

[dependencies]
aok = "0.1.18"
boxleak = "0.1.2"
dashmap = { version = "6.1.0", optional = true }
defer-lite = "1.0.0"
sendptr = { version = "0.1.2", path = "../sendptr" }
tokio = { version = "1.48.0", features = [
  "macros",
  "rt",
  "rt-multi-thread",
  "time",
  "sync",
] }

[dev-dependencies]
aok = "0.1.18"
log = "0.4.29"
log_init = "0.1.28"
static_init = "1.0.4"