Enum regex_syntax::hir::Look
source · pub enum Look {
Start = 1,
End = 2,
StartLF = 4,
EndLF = 8,
StartCRLF = 16,
EndCRLF = 32,
WordAscii = 64,
WordAsciiNegate = 128,
WordUnicode = 256,
WordUnicodeNegate = 512,
}
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 = 1
Match the beginning of text. Specifically, this matches at the starting position of the input.
End = 2
Match the end of text. Specifically, this matches at the ending position of the input.
StartLF = 4
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 = 8
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 = 16
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 = 32
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 = 64
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 = 128
Match an ASCII-only negation of a word boundary.
WordUnicode = 256
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 = 512
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.