[package] name = "utils-atomics" description = "Various atomic utils" version = "1.1.2" edition = "2021" exclude = ["src/bin"] repository = "https://github.com/Aandreba/atomic-utils" keywords = ["atomic", "parallel", "thread", "async"] categories = ["no-std", "asynchronous", "concurrency", "rust-patterns"] license = "MIT" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = ["std"] std = [ "alloc", "crossbeam/std", "bytemuck/extern_crate_std", "num-traits/std", "once_cell/std", "futures?/std", ] alloc = [ "crossbeam/alloc", "bytemuck/extern_crate_alloc", "once_cell/alloc", "futures?/alloc", ] alloc_api = ["nightly", "alloc"] futures = ["dep:futures"] nightly = [] const = ["nightly"] [dependencies] cfg-if = "1" crossbeam = { version = "0.8.2", default-features = false } bytemuck = { version = "1.11.0", default-features = false } num-traits = { version = "0.2.15", default-features = false } once_cell = { version = "1.14.0", default-features = false } futures = { version = "0.3.24", default-features = false, optional = true } docfg = "0.1.0" static_assertions = "1.1.0" pin-project-lite = "0.2.9" [dev-dependencies] criterion = "0.4.0" rand = "0.8.5" tokio = { version = "1.21.0", features = ["full"] } [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [[bench]] name = "queue_push" harness = false [[bench]] name = "queue_chop" harness = false