# 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 = "2018"
name = "heapless"
version = "0.7.16"
authors = [
    "Jorge Aparicio <jorge@japaric.io>",
    "Per Lindgren <per.lindgren@ltu.se>",
    "Emil Fresk <emil.fresk@gmail.com>",
]
description = "`static` friendly data structures that don't require dynamic memory allocation"
documentation = "https://docs.rs/heapless"
readme = "README.md"
keywords = [
    "static",
    "no-heap",
]
categories = [
    "data-structures",
    "no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/japaric/heapless"

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

[dependencies.defmt]
version = ">=0.2.0,<0.4"
optional = true

[dependencies.hash32]
version = "0.2.1"

[dependencies.serde]
version = "1"
optional = true
default-features = false

[dependencies.stable_deref_trait]
version = "1"
default-features = false

[dependencies.ufmt-write]
version = "0.1"
optional = true

[dev-dependencies.ufmt]
version = "0.1"

[build-dependencies.rustc_version]
version = "0.4.0"

[features]
__trybuild = []
cas = ["atomic-polyfill"]
default = ["cas"]
defmt-impl = ["defmt"]
mpmc_large = []
ufmt-impl = ["ufmt-write"]
x86-sync-pool = []

[target."cfg(target_arch = \"avr\")".dependencies.atomic-polyfill]
version = "0.1.8"
optional = true

[target."cfg(target_arch = \"x86_64\")".dependencies.spin]
version = "0.9.2"

[target.riscv32i-unknown-none-elf.dependencies.atomic-polyfill]
version = "0.1.4"

[target.riscv32imc-unknown-none-elf.dependencies.atomic-polyfill]
version = "0.1.4"

[target.thumbv6m-none-eabi.dependencies.atomic-polyfill]
version = "0.1.2"
optional = true
