[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 = []
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"