[dependencies.critical-section]
optional = true
version = "1.1.3"
[dependencies.parking_lot_core]
default-features = false
optional = true
version = "0.9.10"
[dependencies.portable-atomic]
default-features = false
optional = true
version = "1.8"
[dev-dependencies.critical-section]
features = ["std"]
version = "1.1.3"
[dev-dependencies.regex]
version = "1.10.6"
[[example]]
name = "bench"
path = "examples/bench.rs"
required-features = ["std"]
[[example]]
name = "bench_acquire"
path = "examples/bench_acquire.rs"
required-features = ["std"]
[[example]]
name = "lazy_static"
path = "examples/lazy_static.rs"
required-features = ["std"]
[[example]]
name = "reentrant_init_deadlocks"
path = "examples/reentrant_init_deadlocks.rs"
required-features = ["std"]
[[example]]
name = "regex"
path = "examples/regex.rs"
required-features = ["std"]
[[example]]
name = "test_synchronization"
path = "examples/test_synchronization.rs"
required-features = ["std"]
[features]
alloc = ["race"]
atomic-polyfill = ["critical-section"]
critical-section = ["dep:critical-section", "portable-atomic"]
default = ["std"]
parking_lot = ["dep:parking_lot_core"]
portable-atomic = ["dep:portable-atomic"]
race = []
std = ["alloc"]
unstable = []
[lib]
name = "once_cell"
path = "src/lib.rs"
[package]
authors = ["Aleksey Kladov <aleksey.kladov@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autotests = false
build = false
categories = ["rust-patterns", "memory-management"]
description = "Single assignment cells and lazy values."
documentation = "https://docs.rs/once_cell"
edition = "2021"
exclude = ["*.png", "*.svg", "/Cargo.lock.msrv", "rustfmt.toml"]
keywords = ["lazy", "static"]
license = "MIT OR Apache-2.0"
name = "once_cell"
readme = "README.md"
repository = "https://github.com/matklad/once_cell"
rust-version = "1.60"
version = "1.20.2"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--generate-link-to-definition"]
[[test]]
name = "it"
path = "tests/it/main.rs"