# 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 believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "regex"
version = "1.5.4"
authors = ["The Rust Project Developers"]
exclude = ["/scripts/*", "/.github/*"]
autotests = false
description = "An implementation of regular expressions for Rust. This implementation uses\nfinite automata and guarantees linear time matching on all inputs.\n"
homepage = "https://github.com/rust-lang/regex"
documentation = "https://docs.rs/regex"
readme = "README.md"
categories = ["text-processing"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang/regex"
[profile.bench]
debug = true

[profile.release]
debug = true

[profile.test]
debug = true

[lib]
doctest = false
bench = false

[[test]]
name = "default"
path = "tests/test_default.rs"

[[test]]
name = "default-bytes"
path = "tests/test_default_bytes.rs"

[[test]]
name = "nfa"
path = "tests/test_nfa.rs"

[[test]]
name = "nfa-utf8bytes"
path = "tests/test_nfa_utf8bytes.rs"

[[test]]
name = "nfa-bytes"
path = "tests/test_nfa_bytes.rs"

[[test]]
name = "backtrack"
path = "tests/test_backtrack.rs"

[[test]]
name = "backtrack-utf8bytes"
path = "tests/test_backtrack_utf8bytes.rs"

[[test]]
name = "backtrack-bytes"
path = "tests/test_backtrack_bytes.rs"

[[test]]
name = "crates-regex"
path = "tests/test_crates_regex.rs"
[dependencies.aho-corasick]
version = "0.7.18"
optional = true

[dependencies.memchr]
version = "2.4.0"
optional = true

[dependencies.regex-syntax]
version = "0.6.25"
default-features = false
[dev-dependencies.lazy_static]
version = "1"

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

[dev-dependencies.rand]
version = "0.8.3"
features = ["getrandom", "small_rng"]
default-features = false

[features]
default = ["std", "perf", "unicode", "regex-syntax/default"]
pattern = []
perf = ["perf-cache", "perf-dfa", "perf-inline", "perf-literal"]
perf-cache = []
perf-dfa = []
perf-inline = []
perf-literal = ["aho-corasick", "memchr"]
std = []
unicode = ["unicode-age", "unicode-bool", "unicode-case", "unicode-gencat", "unicode-perl", "unicode-script", "unicode-segment", "regex-syntax/unicode"]
unicode-age = ["regex-syntax/unicode-age"]
unicode-bool = ["regex-syntax/unicode-bool"]
unicode-case = ["regex-syntax/unicode-case"]
unicode-gencat = ["regex-syntax/unicode-gencat"]
unicode-perl = ["regex-syntax/unicode-perl"]
unicode-script = ["regex-syntax/unicode-script"]
unicode-segment = ["regex-syntax/unicode-segment"]
unstable = ["pattern"]
use_std = ["std"]
