Enum regex_syntax::hir::Look
source · pub enum Look {
Start,
End,
StartLF,
EndLF,
StartCRLF,
EndCRLF,
WordAscii,
WordAsciiNegate,
WordUnicode,
WordUnicodeNegate,
}
Expand description
The high-level intermediate representation for a look-around assertion.
An assertion match is always zero-length. Also called an “empty match.”
Variants§
Start
Match the beginning of text. Specifically, this matches at the starting position of the input.
End
Match the end of text. Specifically, this matches at the ending position of the input.
StartLF
Match the beginning of a line or the beginning of text. Specifically,
this matches at the starting position of the input, or at the position
immediately following a \n
character.
EndLF
Match the end of a line or the end of text. Specifically, this matches
at the end position of the input, or at the position immediately
preceding a \n
character.
StartCRLF
Match the beginning of a line or the beginning of text. Specifically,
this matches at the starting position of the input, or at the position
immediately following either a \r
or \n
character, but never after
a \r
when a \n
follows.
EndCRLF
Match the end of a line or the end of text. Specifically, this matches
at the end position of the input, or at the position immediately
preceding a \r
or \n
character, but never before a \n
when a \r
precedes it.
WordAscii
Match an ASCII-only word boundary. That is, this matches a position where the left adjacent character and right adjacent character correspond to a word and non-word or a non-word and word character.
WordAsciiNegate
Match an ASCII-only negation of a word boundary.
WordUnicode
Match a Unicode-aware word boundary. That is, this matches a position where the left adjacent character and right adjacent character correspond to a word and non-word or a non-word and word character.
WordUnicodeNegate
Match a Unicode-aware negation of a word boundary.
Implementations§
source§impl Look
impl Look
sourcepub const fn reversed(self) -> Look
pub const fn reversed(self) -> Look
Flip the look-around assertion to its equivalent for reverse searches.
For example, StartLF
gets translated to EndLF
.
Some assertions, such as WordUnicode
, remain the same since they
match the same positions regardless of the direction of the search.
sourcepub const fn as_repr(self) -> u16
pub const fn as_repr(self) -> u16
Return the underlying representation of this look-around enumeration
as an integer. Giving the return value to the Look::from_repr
constructor is guaranteed to return the same look-around variant that
one started with within a semver compatible release of this crate.
sourcepub const fn from_repr(repr: u16) -> Option<Look>
pub const fn from_repr(repr: u16) -> Option<Look>
Given the underlying representation of a Look
value, return the
corresponding Look
value if the representation is valid. Otherwise
None
is returned.
sourcepub const fn as_char(self) -> char
pub const fn as_char(self) -> char
Returns a convenient single codepoint representation of this look-around assertion. Each assertion is guaranteed to be represented by a distinct character.
This is useful for succinctly representing a look-around assertion in human friendly but succinct output intended for a programmer working on regex internals.