# 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.31"
name = "serde"
version = "1.0.197"
authors = [
    "Erick Tryzelaar <erick.tryzelaar@gmail.com>",
    "David Tolnay <dtolnay@gmail.com>",
]
build = "build.rs"
description = "A generic serialization/deserialization framework"
homepage = "https://serde.rs"
documentation = "https://docs.rs/serde"
readme = "crates-io.md"
keywords = [
    "serde",
    "serialization",
    "no_std",
]
categories = [
    "encoding",
    "no-std",
    "no-std::no-alloc",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/serde-rs/serde"

[package.metadata.docs.rs]
features = [
    "derive",
    "rc",
    "unstable",
]
rustdoc-args = [
    "--cfg",
    "doc_cfg",
    "--generate-link-to-definition",
]
targets = ["x86_64-unknown-linux-gnu"]

[package.metadata.playground]
features = [
    "derive",
    "rc",
]

[lib]
doc-scrape-examples = false

[dependencies.serde_derive]
version = "1"
optional = true

[dev-dependencies.serde_derive]
version = "1"

[features]
alloc = []
default = ["std"]
derive = ["serde_derive"]
rc = []
std = []
unstable = []

[target."cfg(any())".dependencies.serde_derive]
version = "=1.0.197"
