Struct regex_automata::util::alphabet::ByteSet

source ·
pub(crate) struct ByteSet {
    bits: BitSet,
}
Expand description

A simple set of bytes that is reasonably cheap to copy and allocation free.

Fields§

§bits: BitSet

Implementations§

source§

impl ByteSet

source

pub(crate) fn empty() -> ByteSet

Create an empty set of bytes.

source

pub(crate) fn add(&mut self, byte: u8)

Add a byte to this set.

If the given byte already belongs to this set, then this is a no-op.

source

pub(crate) fn remove(&mut self, byte: u8)

Remove a byte from this set.

If the given byte is not in this set, then this is a no-op.

source

pub(crate) fn contains(&self, byte: u8) -> bool

Return true if and only if the given byte is in this set.

source

pub(crate) fn contains_range(&self, start: u8, end: u8) -> bool

Return true if and only if the given inclusive range of bytes is in this set.

source

pub(crate) fn iter(&self) -> ByteSetIter<'_>

Returns an iterator over all bytes in this set.

source

pub(crate) fn iter_ranges(&self) -> ByteSetRangeIter<'_>

Returns an iterator over all contiguous ranges of bytes in this set.

source

pub(crate) fn is_empty(&self) -> bool

Return true if and only if this set is empty.

source

pub(crate) fn from_bytes( slice: &[u8], ) -> Result<(ByteSet, usize), DeserializeError>

Deserializes a byte set from the given slice. If the slice is of incorrect length or is otherwise malformed, then an error is returned. Upon success, the number of bytes read along with the set are returned. The number of bytes read is always a multiple of 8.

source

pub(crate) fn write_to<E: Endian>( &self, dst: &mut [u8], ) -> Result<usize, SerializeError>

Writes this byte set to the given byte buffer. If the given buffer is too small, then an error is returned. Upon success, the total number of bytes written is returned. The number of bytes written is guaranteed to be a multiple of 8.

source

pub(crate) fn write_to_len(&self) -> usize

Returns the total number of bytes written by write_to.

Trait Implementations§

source§

impl Clone for ByteSet

source§

fn clone(&self) -> ByteSet

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ByteSet

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ByteSet

source§

fn default() -> ByteSet

Returns the “default value” for a type. Read more
source§

impl PartialEq for ByteSet

source§

fn eq(&self, other: &ByteSet) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for ByteSet

source§

impl Eq for ByteSet

source§

impl StructuralPartialEq for ByteSet

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.