Enum regex_automata::MatchErrorKind
source · #[non_exhaustive]pub enum MatchErrorKind {
Quit {
byte: u8,
offset: usize,
},
GaveUp {
offset: usize,
},
HaystackTooLong {
len: usize,
},
UnsupportedAnchored {
mode: Anchored,
},
}
Expand description
The underlying kind of a MatchError
.
This is a non-exhaustive enum. That means new variants may be added in a semver-compatible release.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Quit
Fields
The search saw a “quit” byte at which it was instructed to stop searching.
GaveUp
Fields
The search, based on heuristics, determined that it would be better to stop, typically to provide the caller an opportunity to use an alternative regex engine.
Currently, the only way for this to occur is via the lazy DFA and only when it is configured to do so (it will not return this error by default).
HaystackTooLong
This error occurs if the haystack given to the regex engine was too long to be searched. This occurs, for example, with regex engines like the bounded backtracker that have a configurable fixed amount of capacity that is tied to the length of the haystack. Anything beyond that configured limit will result in an error at search time.
UnsupportedAnchored
An error indicating that a particular type of anchored search was requested, but that the regex engine does not support it.
Note that this error should not be returned by a regex engine simply because the pattern ID is invalid (i.e., equal to or exceeds the number of patterns in the regex). In that case, the regex engine should report a non-match.
Trait Implementations§
source§impl Clone for MatchErrorKind
impl Clone for MatchErrorKind
source§fn clone(&self) -> MatchErrorKind
fn clone(&self) -> MatchErrorKind
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for MatchErrorKind
impl Debug for MatchErrorKind
source§impl PartialEq<MatchErrorKind> for MatchErrorKind
impl PartialEq<MatchErrorKind> for MatchErrorKind
source§fn eq(&self, other: &MatchErrorKind) -> bool
fn eq(&self, other: &MatchErrorKind) -> bool
self
and other
values to be equal, and is used
by ==
.