[package] name = "typesize" description = "A library to fetch an accurate estimate of the total memory usage of a value." repository = "https://github.com/GnomedDev/typesize" keywords = ["memory", "optimisation", "derive"] categories = ["development-tools", "no-std"] rust-version = "1.65" version = "0.1.10" edition = "2021" license = "MIT" [workspace] members = ["typesize-derive"] [dependencies] parking_lot = { version = "0.12.1", default-features = false, optional = true } hashbrown = { version = "0.14.2", default-features = false, optional = true } mini-moka = { version = "0.10.2", default-features = false, optional = true } halfbrown = { version = "0.2.4", default-features = false, optional = true } simd-json = { version = "0.13", default-features = false, optional = true } arrayvec = { version = "0.7.4", default-features = false, optional = true } chrono = { version = "0.4.31", default-features = false, optional = true } dashmap = { version = "5.5.3", features = ["raw-api"], optional = true } time = { version = "0.3.30", default-features = false, optional = true } url = { version = "2.4", default-features = false, optional = true } extract_map = { version = "0.1.0", optional = true } secrecy = { version = "0.8.0", optional = true } serde_json = { version = "1", optional = true } nonmax = { version = "0.5.5", optional = true } bitvec = { version = "1.0.1", optional = true } web-time = { version = "1.1.0", optional = true } typesize-derive = { version = "=0.1.10", path = "typesize-derive" } [features] default = ["std"] std = [] details = ["typesize-derive/details"] saturating_impls = [] # Update docs in lib.rs, and tests in .github/workflows/ci.yml! dashmap = ["dep:dashmap", "mini-moka?/sync", "hashbrown"] arrayvec = ["dep:arrayvec", "halfbrown?/arraybackend"] simd_json = ["dep:simd-json", "halfbrown"] halfbrown = ["dep:halfbrown", "hashbrown"] extract_map_01 = ["dep:extract_map"] parking_lot = ["dep:parking_lot"] serde_json = ["dep:serde_json"] mini_moka = ["dep:mini-moka"] hashbrown = ["dep:hashbrown"] secrecy = ["dep:secrecy"] chrono = ["dep:chrono"] nonmax = ["dep:nonmax"] time = ["dep:time"] url = ["dep:url"] bitvec = ["dep:bitvec"] web-time = ["dep:web-time"] [package.metadata.docs.rs] all-features = true [workspace.lints.clippy] pedantic = { level = "warn", priority = -1 } [workspace.lints.rust] rust_2018_idioms = { level = "warn", priority = -1 } unsafe_code = "forbid"