[]
= "regex"
= "1.5.1" #:version
= ["The Rust Project Developers"]
= "MIT OR Apache-2.0"
= "README.md"
= "https://github.com/rust-lang/regex"
= "https://docs.rs/regex"
= "https://github.com/rust-lang/regex"
= """
An implementation of regular expressions for Rust. This implementation uses
finite automata and guarantees linear time matching on all inputs.
"""
= ["text-processing"]
= false
= ["/scripts/*", "/.github/*"]
= "2018"
[]
= [
"bench", "regex-capi", "regex-debug", "regex-syntax",
]
[]
# There are no benchmarks in the library code itself
= false
# Doc tests fail when some features aren't present. The easiest way to work
# around this is to disable automatic doc testing, but explicitly test them
# with `cargo test --doc`.
= false
# Features are documented in the "Crate features" section of the crate docs:
# https://docs.rs/regex/*/#crate-features
[]
= ["std", "perf", "unicode", "regex-syntax/default"]
# ECOSYSTEM FEATURES
# The 'std' feature permits the regex crate to use the standard library. This
# is intended to support future use cases where the regex crate may be able
# to compile without std, and instead just rely on 'core' and 'alloc' (for
# example). Currently, this isn't supported, and removing the 'std' feature
# will prevent regex from compiling.
= []
# The 'use_std' feature is DEPRECATED. It will be removed in regex 2. Until
# then, it is an alias for the 'std' feature.
= ["std"]
# PERFORMANCE FEATURES
# Enables all performance features.
= ["perf-cache", "perf-dfa", "perf-inline", "perf-literal"]
# Enables fast caching. (If disabled, caching is still used, but is slower.)
# Currently, this feature has no effect. It used to remove the thread_local
# dependency and use a slower internal cache, but now the default cache has
# been improved and thread_local is no longer a dependency at all.
= []
# Enables use of a lazy DFA when possible.
= []
# Enables aggressive use of inlining.
= []
# Enables literal optimizations.
= ["aho-corasick", "memchr"]
# UNICODE DATA FEATURES
# Enables all Unicode features. This expands if new Unicode features are added.
= [
"unicode-age",
"unicode-bool",
"unicode-case",
"unicode-gencat",
"unicode-perl",
"unicode-script",
"unicode-segment",
"regex-syntax/unicode",
]
# Enables use of the `Age` property, e.g., `\p{Age:3.0}`.
= ["regex-syntax/unicode-age"]
# Enables use of a smattering of boolean properties, e.g., `\p{Emoji}`.
= ["regex-syntax/unicode-bool"]
# Enables Unicode-aware case insensitive matching, e.g., `(?i)β`.
= ["regex-syntax/unicode-case"]
# Enables Unicode general categories, e.g., `\p{Letter}` or `\pL`.
= ["regex-syntax/unicode-gencat"]
# Enables Unicode-aware Perl classes corresponding to `\w`, `\s` and `\d`.
= ["regex-syntax/unicode-perl"]
# Enables Unicode scripts and script extensions, e.g., `\p{Greek}`.
= ["regex-syntax/unicode-script"]
# Enables Unicode segmentation properties, e.g., `\p{gcb=Extend}`.
= ["regex-syntax/unicode-segment"]
# UNSTABLE FEATURES (requires Rust nightly)
# A blanket feature that governs whether unstable features are enabled or not.
# Unstable features are disabled by default, and typically rely on unstable
# features in rustc itself.
= ["pattern"]
# Enable to use the unstable pattern traits defined in std. This is enabled
# by default if the unstable feature is enabled.
= []
# For very fast prefix literal matching.
[]
= "0.7.18"
= true
# For skipping along search text quickly when a leading byte is known.
[]
= "2.4.0"
= true
# For parsing regular expressions.
[]
= "regex-syntax"
= "0.6.24"
= false
[]
# For examples.
= "1"
# For property based tests.
= { = "1.0.3", = false }
# For generating random test data.
= { = "0.8.3", = false, = ["getrandom", "small_rng"] }
# To check README's example
# TODO: Re-enable this once the MSRV is 1.43 or greater.
# See: https://github.com/rust-lang/regex/issues/684
# See: https://github.com/rust-lang/regex/issues/685
# doc-comment = "0.3"
# Run the test suite on the default behavior of Regex::new.
# This includes a mish mash of NFAs and DFAs, which are chosen automatically
# based on the regex. We test both of the NFA implementations by forcing their
# usage with the test definitions below. (We can't test the DFA implementations
# in the same way since they can't be used for every regex tested.)
[[]]
= "tests/test_default.rs"
= "default"
# The same as the default tests, but run on bytes::Regex.
[[]]
= "tests/test_default_bytes.rs"
= "default-bytes"
# Run the test suite on the NFA algorithm over Unicode codepoints.
[[]]
= "tests/test_nfa.rs"
= "nfa"
# Run the test suite on the NFA algorithm over bytes that match UTF-8 only.
[[]]
= "tests/test_nfa_utf8bytes.rs"
= "nfa-utf8bytes"
# Run the test suite on the NFA algorithm over arbitrary bytes.
[[]]
= "tests/test_nfa_bytes.rs"
= "nfa-bytes"
# Run the test suite on the backtracking engine over Unicode codepoints.
[[]]
= "tests/test_backtrack.rs"
= "backtrack"
# Run the test suite on the backtracking engine over bytes that match UTF-8
# only.
[[]]
= "tests/test_backtrack_utf8bytes.rs"
= "backtrack-utf8bytes"
# Run the test suite on the backtracking engine over arbitrary bytes.
[[]]
= "tests/test_backtrack_bytes.rs"
= "backtrack-bytes"
# Run all backends against each regex found on crates.io and make sure
# that they all do the same thing.
[[]]
= "tests/test_crates_regex.rs"
= "crates-regex"
[]
= true
[]
= true
[]
= true