1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
[]
= "regex"
= "0.1.53" #:version
= ["The Rust Project Developers"]
= "MIT/Apache-2.0"
= "README.md"
= "https://github.com/rust-lang/regex"
= "https://doc.rust-lang.org/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.
"""
[]
# For very fast prefix literal matching.
= "0.5"
# For skipping along search text quickly when a leading byte is known.
= "0.1"
# For parsing regular expressions.
= { = "regex-syntax", = "0.2.4" }
# For compiling UTF-8 decoding into automata.
= "0.1"
[]
# To prevent the benchmarking harness from running setup code more than once.
# Why? Because it takes too long.
= "0.1"
# For generating random text to test/benchmark with.
= "0.3"
[]
# Enable to use the unstable pattern traits defined in std.
= []
# Runs unit tests defined inside the regex package.
# Generally these tests specific pieces of the regex implementation.
[[]]
= "src/lib.rs"
= "regex"
# 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_dynamic.rs"
= "dynamic"
# Run the test suite on the NFA algorithm over Unicode codepoints.
[[]]
= "tests/test_dynamic_nfa.rs"
= "dynamic-nfa"
# Run the test suite on the NFA algorithm over bytes.
[[]]
= "tests/test_dynamic_nfa_bytes.rs"
= "dynamic-nfa-bytes"
# Run the test suite on the backtracking engine over Unicode codepoints.
[[]]
= "tests/test_dynamic_backtrack.rs"
= "dynamic-backtrack"
# Run the test suite on the backtracking engine over bytes.
[[]]
= "tests/test_dynamic_backtrack_bytes.rs"
= "dynamic-backtrack-bytes"
# Run the benchmarks on the default behavior of Regex::new.
#
# N.B. These benchmarks were originally taken from Russ Cox.
[[]]
= "dynamic"
= "benches/bench_dynamic.rs"
= false
= true
# Run the benchmarks on the NFA algorithm. We avoid chasing other permutations.
#
# N.B. These can take a *loong* time to run.
[[]]
= "dynamic-nfa"
= "benches/bench_dynamic_nfa.rs"
= false
= true
[]
= true
[]
= true