Name Description Size
alphabet.rs 13496
buffer.rs 5515
byte_frequencies.rs 4431
debug.rs 981
error.rs 9353
int.rs ! This module provides several integer oriented traits for converting between both fixed size integers and integers whose size varies based on the target (like `usize`). The main design principle for this module is to centralize all uses of `as`. The thinking here is that `as` makes it very easy to perform accidental lossy conversions, and if we centralize all its uses here under more descriptive higher level operations, its use and correctness becomes easier to audit. This was copied mostly wholesale from `regex-automata`. NOTE: for simplicity, we don't take target pointer width into account here for `usize` conversions. Since we currently only panic in debug mode, skipping the check when it can be proven it isn't needed at compile time doesn't really matter. Now, if we wind up wanting to do as many checks as possible in release mode, then we would want to skip those when we know the conversions are always non-lossy. 6230
mod.rs 294
prefilter.rs 34291
primitives.rs ! Lower level primitive types that are useful in a variety of circumstances. # Overview This list represents the principle types in this module and briefly describes when you might want to use them. [`PatternID`] - A type that represents the identifier of a regex pattern. This is probably the most widely used type in this module (which is why it's also re-exported in the crate root). [`StateID`] - A type the represents the identifier of a finite automaton state. This is used for both NFAs and DFAs, with the notable exception of the hybrid NFA/DFA. (The hybrid NFA/DFA uses a special purpose "lazy" state identifier.) [`SmallIndex`] - The internal representation of both a `PatternID` and a `StateID`. Its purpose is to serve as a type that can index memory without being as big as a `usize` on 64-bit targets. The main idea behind this type is that there are many things in regex engines that will, in practice, never overflow a 32-bit integer. (For example, like the number of patterns in a regex or the number of states in an NFA.) Thus, a `SmallIndex` can be used to index memory without peppering `as` casts everywhere. Moreover, it forces callers to handle errors in the case where, somehow, the value would otherwise overflow either a 32-bit integer or a `usize` (e.g., on 16-bit targets). 27212
remapper.rs 9506
search.rs 40705
special.rs 1856