# 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]
name = "spin"
version = "0.9.4"
authors = [
    "Mathijs van de Nes <git@mathijs.vd-nes.nl>",
    "John Ericson <git@JohnEricson.me>",
    "Joshua Barretto <joshua.s.barretto@gmail.com>",
]
description = "Spin-based synchronization primitives"
readme = "README.md"
keywords = [
    "spinlock",
    "mutex",
    "rwlock",
]
license = "MIT"
repository = "https://github.com/mvdnes/spin-rs.git"

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

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

[dependencies.portable-atomic]
version = "0.3"
optional = true
default-features = false

[features]
barrier = ["mutex"]
default = [
    "lock_api",
    "mutex",
    "spin_mutex",
    "rwlock",
    "once",
    "lazy",
    "barrier",
]
lazy = ["once"]
lock_api = ["lock_api_crate"]
mutex = []
once = []
portable_atomic = ["portable-atomic"]
rwlock = []
spin_mutex = ["mutex"]
std = []
ticket_mutex = ["mutex"]
use_ticket_mutex = [
    "mutex",
    "ticket_mutex",
]
