# 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 = "tinyvec"
version = "1.4.0"
authors = ["Lokathor <zefria@gmail.com>"]
description = "`tinyvec` provides 100% safe vec-like data structures."
keywords = ["vec", "no_std", "no-std"]
categories = ["data-structures", "no-std"]
license = "Zlib OR Apache-2.0 OR MIT"
repository = "https://github.com/Lokathor/tinyvec"
[package.metadata.docs.rs]
features = ["alloc", "grab_spare_slice", "rustc_1_40", "rustc_1_55", "serde"]
rustdoc-args = ["--cfg", "docs_rs"]

[package.metadata.playground]
features = ["alloc", "grab_spare_slice", "rustc_1_40", "rustc_1_55", "serde"]
[profile.test]
opt-level = 3

[[test]]
name = "tinyvec"
required-features = ["alloc"]

[[bench]]
name = "macros"
harness = false
required-features = ["alloc"]
[dependencies.arbitrary]
version = "1"
optional = true

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

[dependencies.tinyvec_macros]
version = "0.1"
optional = true
[dev-dependencies.criterion]
version = "0.3.0"

[dev-dependencies.serde_test]
version = "1.0"

[features]
alloc = ["tinyvec_macros"]
default = []
experimental_write_impl = []
grab_spare_slice = []
nightly_slice_partition_dedup = []
rustc_1_40 = []
rustc_1_55 = ["rustc_1_40"]
