Enum regex_syntax::utf8::Utf8Sequence [−][src]
pub enum Utf8Sequence { One(Utf8Range), Two([Utf8Range; 2]), Three([Utf8Range; 3]), Four([Utf8Range; 4]), }
Utf8Sequence represents a sequence of byte ranges.
To match a Utf8Sequence, a candidate byte sequence must match each successive range.
For example, if there are two ranges, [C2-DF][80-BF]
, then the byte
sequence \xDD\x61
would not match because 0x61 < 0x80
.
Variants
One(Utf8Range)
One byte range.
Two successive byte ranges.
Three successive byte ranges.
Four successive byte ranges.
Implementations
impl Utf8Sequence
[src]
impl Utf8Sequence
[src]pub fn as_slice(&self) -> &[Utf8Range]ⓘ
[src]
Returns the underlying sequence of byte ranges as a slice.
pub fn len(&self) -> usize
[src]
Returns the number of byte ranges in this sequence.
The length is guaranteed to be in the closed interval [1, 4]
.
pub fn reverse(&mut self)
[src]
Reverses the ranges in this sequence.
For example, if this corresponds to the following sequence:
[D0-D3][80-BF]
Then after reversal, it will be
[80-BF][D0-D3]
This is useful when one is constructing a UTF-8 automaton to match character classes in reverse.
pub fn matches(&self, bytes: &[u8]) -> bool
[src]
Returns true if and only if a prefix of bytes
matches this sequence
of byte ranges.
Trait Implementations
impl Clone for Utf8Sequence
[src]
impl Clone for Utf8Sequence
[src]fn clone(&self) -> Utf8Sequence
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for Utf8Sequence
[src]
impl Copy for Utf8Sequence
[src]impl Eq for Utf8Sequence
[src]
impl Eq for Utf8Sequence
[src]impl<'a> IntoIterator for &'a Utf8Sequence
[src]
impl<'a> IntoIterator for &'a Utf8Sequence
[src]impl Ord for Utf8Sequence
[src]
impl Ord for Utf8Sequence
[src]impl PartialEq<Utf8Sequence> for Utf8Sequence
[src]
impl PartialEq<Utf8Sequence> for Utf8Sequence
[src]fn eq(&self, other: &Utf8Sequence) -> bool
[src]
fn ne(&self, other: &Utf8Sequence) -> bool
[src]
impl PartialOrd<Utf8Sequence> for Utf8Sequence
[src]
impl PartialOrd<Utf8Sequence> for Utf8Sequence
[src]fn partial_cmp(&self, other: &Utf8Sequence) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for Utf8Sequence
[src]
impl StructuralEq for Utf8Sequence
[src]impl StructuralPartialEq for Utf8Sequence
[src]
impl StructuralPartialEq for Utf8Sequence
[src]Auto Trait Implementations
impl RefUnwindSafe for Utf8Sequence
impl RefUnwindSafe for Utf8Sequence
impl Send for Utf8Sequence
impl Send for Utf8Sequence
impl Sync for Utf8Sequence
impl Sync for Utf8Sequence
impl Unpin for Utf8Sequence
impl Unpin for Utf8Sequence
impl UnwindSafe for Utf8Sequence
impl UnwindSafe for Utf8Sequence