# 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.60"
name = "bstr"
version = "1.4.0"
authors = ["Andrew Gallant <jamslam@gmail.com>"]
exclude = ["/.github"]
description = "A string type that is not required to be valid UTF-8."
homepage = "https://github.com/BurntSushi/bstr"
documentation = "https://docs.rs/bstr"
readme = "README.md"
keywords = [
    "string",
    "str",
    "byte",
    "bytes",
    "text",
]
categories = [
    "text-processing",
    "encoding",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/BurntSushi/bstr"
resolver = "2"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[profile.release]
debug = true

[lib]
bench = false

[[example]]
name = "graphemes"
required-features = [
    "std",
    "unicode",
]

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

[[example]]
name = "uppercase"
required-features = [
    "std",
    "unicode",
]

[[example]]
name = "words"
required-features = [
    "std",
    "unicode",
]

[dependencies.memchr]
version = "2.4.0"
default-features = false

[dependencies.once_cell]
version = "1.14.0"
optional = true

[dependencies.regex-automata]
version = "0.1.5"
optional = true
default-features = false

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

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

[dev-dependencies.ucd-parse]
version = "0.1.3"

[dev-dependencies.unicode-segmentation]
version = "1.2.1"

[features]
alloc = ["serde?/alloc"]
default = [
    "std",
    "unicode",
]
serde = ["dep:serde"]
std = [
    "alloc",
    "memchr/std",
    "serde?/std",
]
unicode = [
    "dep:once_cell",
    "dep:regex-automata",
]
