# 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 = "2021"
rust-version = "1.64.0"
name = "winnow"
version = "0.6.5"
include = [
    "build.rs",
    "src/**/*",
    "Cargo.toml",
    "Cargo.lock",
    "LICENSE*",
    "README.md",
    "benches/**/*",
    "examples/**/*",
]
autoexamples = false
description = "A byte-oriented, zero-copy, parser combinators library"
readme = "README.md"
keywords = [
    "parser",
    "parser-combinators",
    "parsing",
    "streaming",
    "bit",
]
categories = ["parsing"]
license = "MIT"
repository = "https://github.com/winnow-rs/winnow"

[package.metadata.docs.rs]
cargo-args = [
    "-Zunstable-options",
    "-Zrustdoc-scrape-examples",
]
features = ["unstable-doc"]
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[[package.metadata.release.pre-release-replacements]]
file = "CHANGELOG.md"
min = 1
replace = "{{version}}"
search = "Unreleased"

[[package.metadata.release.pre-release-replacements]]
exactly = 1
file = "CHANGELOG.md"
replace = "...{{tag_name}}"
search = '\.\.\.HEAD'

[[package.metadata.release.pre-release-replacements]]
file = "CHANGELOG.md"
min = 1
replace = "{{date}}"
search = "ReleaseDate"

[[package.metadata.release.pre-release-replacements]]
exactly = 1
file = "CHANGELOG.md"
replace = """
<!-- next-header -->
## [Unreleased] - ReleaseDate
"""
search = "<!-- next-header -->"

[[package.metadata.release.pre-release-replacements]]
exactly = 1
file = "CHANGELOG.md"
replace = """
<!-- next-url -->
[Unreleased]: https://github.com/winnow-rs/winnow/compare/{{tag_name}}...HEAD"""
search = "<!-- next-url -->"

[[package.metadata.release.pre-release-replacements]]
exactly = 1
file = "src/lib.rs"
replace = "blob/v{{version}}/CHANGELOG.md"
search = 'blob/v.+\..+\..+/CHANGELOG.md'

[profile.bench]
lto = true
codegen-units = 1
debug = 2

[[example]]
name = "arithmetic"
test = true
required-features = ["alloc"]

[[example]]
name = "css"
test = true
required-features = ["alloc"]

[[example]]
name = "custom_error"
test = true
required-features = ["alloc"]

[[example]]
name = "http"
required-features = ["alloc"]

[[example]]
name = "ini"
test = true
required-features = ["std"]

[[example]]
name = "json"
test = true
required-features = ["std"]

[[example]]
name = "ndjson"
test = true
required-features = ["std"]

[[example]]
name = "json_iterator"
required-features = ["std"]

[[example]]
name = "iterator"

[[example]]
name = "s_expression"
required-features = ["alloc"]

[[example]]
name = "string"
required-features = ["alloc"]

[[bench]]
name = "arithmetic"
path = "examples/arithmetic/bench.rs"
harness = false
required-features = ["alloc"]

[[bench]]
name = "contains_token"
harness = false

[[bench]]
name = "find_slice"
harness = false

[[bench]]
name = "iter"
harness = false

[[bench]]
name = "next_slice"
harness = false

[[bench]]
name = "number"
harness = false

[[bench]]
name = "http"
path = "examples/http/bench.rs"
harness = false
required-features = ["alloc"]

[[bench]]
name = "ini"
path = "examples/ini/bench.rs"
harness = false
required-features = ["std"]

[[bench]]
name = "json"
path = "examples/json/bench.rs"
harness = false
required-features = ["std"]

[dependencies.anstream]
version = "0.3.2"
optional = true

[dependencies.anstyle]
version = "1.0.1"
optional = true

[dependencies.is-terminal]
version = "0.4.9"
optional = true

[dependencies.memchr]
version = "2.5"
optional = true
default-features = false

[dependencies.terminal_size]
version = "0.2.6"
optional = true

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

[dev-dependencies.criterion]
version = "0.5.1"

[dev-dependencies.doc-comment]
version = "0.3"

[dev-dependencies.escargot]
version = "0.5.7"

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

[dev-dependencies.proptest]
version = "1.2.0"

[dev-dependencies.rustc-hash]
version = "1.1.0"

[dev-dependencies.snapbox]
version = "0.4.11"
features = ["examples"]

[dev-dependencies.term-transcript]
version = "0.2.0"

[features]
alloc = []
debug = [
    "dep:anstream",
    "dep:anstyle",
    "dep:is-terminal",
    "dep:terminal_size",
]
default = ["std"]
simd = ["dep:memchr"]
std = [
    "alloc",
    "memchr?/std",
]
unstable-doc = [
    "alloc",
    "std",
    "simd",
    "unstable-recover",
]
unstable-recover = []
