# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.56"
name = "once_cell"
version = "1.17.1"
authors = ["Aleksey Kladov <aleksey.kladov@gmail.com>"]
exclude = [
    "*.png",
    "*.svg",
    "/Cargo.lock.msrv",
    "rustfmt.toml",
]
description = "Single assignment cells and lazy values."
documentation = "https://docs.rs/once_cell"
readme = "README.md"
keywords = [
    "lazy",
    "static",
]
categories = [
    "rust-patterns",
    "memory-management",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/matklad/once_cell"

[package.metadata.docs.rs]
all-features = true

[[example]]
name = "bench"
required-features = ["std"]

[[example]]
name = "bench_acquire"
required-features = ["std"]

[[example]]
name = "bench_vs_lazy_static"
required-features = ["std"]

[[example]]
name = "lazy_static"
required-features = ["std"]

[[example]]
name = "reentrant_init_deadlocks"
required-features = ["std"]

[[example]]
name = "regex"
required-features = ["std"]

[[example]]
name = "test_synchronization"
required-features = ["std"]

[dependencies.atomic_polyfill]
version = "1"
optional = true
package = "atomic-polyfill"

[dependencies.critical_section]
version = "1"
optional = true
package = "critical-section"

[dependencies.parking_lot_core]
version = "0.9.3"
optional = true
default_features = false

[dev-dependencies.critical_section]
version = "1.1.1"
features = ["std"]
package = "critical-section"

[dev-dependencies.crossbeam-utils]
version = "0.8.7"

[dev-dependencies.lazy_static]
version = "1.0.0"

[dev-dependencies.regex]
version = "1.2.0"

[features]
alloc = ["race"]
atomic-polyfill = ["critical-section"]
critical-section = [
    "critical_section",
    "atomic_polyfill",
]
default = ["std"]
parking_lot = ["parking_lot_core"]
race = []
std = ["alloc"]
unstable = []
