spin 0.12.0

Spin-based synchronization primitives
Documentation
# 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.71"
name = "spin"
version = "0.12.0"
authors = [
    "Mathijs van de Nes <git@mathijs.vd-nes.nl>",
    "John Ericson <git@JohnEricson.me>",
    "Joshua Barretto <joshua.s.barretto@gmail.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Spin-based synchronization primitives"
readme = "README.md"
keywords = [
    "spinlock",
    "mutex",
    "rwlock",
]
license = "MIT"
repository = "https://codeberg.org/zesterer/spin"

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

[features]
barrier = ["mutex"]
default = [
    "lock_api",
    "mutex",
    "spin_mutex",
    "rwlock",
    "once",
    "lazylock",
    "barrier",
]
fair_mutex = ["mutex"]
lazy = ["lazylock"]
lazylock = ["once"]
lock_api = ["dep:lock_api_crate"]
mutex = []
once = []
portable-atomic = ["dep:portable-atomic"]
portable_atomic = ["portable-atomic"]
rustc-dep-of-std = ["core"]
rwlock = []
spin_mutex = ["mutex"]
std = []
ticket_mutex = ["mutex"]
use_ticket_mutex = [
    "mutex",
    "ticket_mutex",
]

[lib]
name = "spin"
path = "src/lib.rs"

[[example]]
name = "debug"
path = "examples/debug.rs"
required-features = [
    "mutex",
    "rwlock",
]

[[bench]]
name = "mutex"
path = "benches/mutex.rs"
harness = false
required-features = ["ticket_mutex"]

[dependencies.core]
version = "1.0.0"
optional = true
package = "rustc-std-workspace-core"

[dependencies.lock_api_crate]
version = "0.4"
optional = true
package = "lock_api"

[dependencies.portable-atomic]
version = "1.3"
features = ["require-cas"]
optional = true
default-features = false

[dev-dependencies.criterion]
version = "0.4"