# 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"
rust-version = "1.60.0"
name = "zerocopy"
version = "0.7.35"
authors = ["Joshua Liebow-Feeser <joshlf@google.com>"]
exclude = [".*"]
description = "Utilities for zero-copy parsing and serialization"
readme = "README.md"
keywords = [
    "cast",
    "convert",
    "transmute",
    "transmutation",
    "type-punning",
]
categories = [
    "embedded",
    "encoding",
    "no-std::no-alloc",
    "parsing",
    "rust-patterns",
]
license = "BSD-2-Clause OR Apache-2.0 OR MIT"
repository = "https://github.com/google/zerocopy"

[package.metadata.ci]
pinned-nightly = "nightly-2024-06-19"
pinned-stable = "1.79.0"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "doc_cfg",
    "--generate-link-to-definition",
]

[package.metadata.playground]
features = ["__internal_use_only_features_that_work_on_stable"]

[dependencies.byteorder]
version = "1.3"
optional = true
default-features = false

[dependencies.zerocopy-derive]
version = "=0.7.35"
optional = true

[dev-dependencies.assert_matches]
version = "1.5"

[dev-dependencies.elain]
version = "0.3.0"

[dev-dependencies.itertools]
version = "0.11"

[dev-dependencies.rand]
version = "0.8.5"
features = ["small_rng"]

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

[dev-dependencies.static_assertions]
version = "1.1"

[dev-dependencies.trybuild]
version = "=1.0.85"
features = ["diff"]

[dev-dependencies.zerocopy-derive]
version = "=0.7.35"

[features]
__internal_use_only_features_that_work_on_stable = [
    "alloc",
    "derive",
    "simd",
]
alloc = []
default = ["byteorder"]
derive = ["zerocopy-derive"]
simd = []
simd-nightly = ["simd"]

[target."cfg(any())".dependencies.zerocopy-derive]
version = "=0.7.35"
