Struct ClassSetUnion
pub struct ClassSetUnion { pub span: Span, pub items: Vec<ClassSetItem> }
A union of items inside a character class set.
Fields
span: SpanThe span of the items in this operation. e.g., the
a-z0-9in[^a-z0-9]items: Vec<ClassSetItem>The sequence of items that make up this union.
Implementations
impl ClassSetUnion
fn push(&mut self, item: ClassSetItem)Push a new item in this union.
The ending position of this union's span is updated to the ending position of the span of the item given. If the union is empty, then the starting position of this union is set to the starting position of this item.
In other words, if you only use this method to add items to a union and you set the spans on each item correctly, then you should never need to adjust the span of the union directly.
fn into_item(self) -> ClassSetItemReturn this union as a character class set item.
If this union contains zero items, then an empty union is returned. If this concatenation contains exactly 1 item, then the corresponding item is returned. Otherwise, ClassSetItem::Union is returned.
Trait Implementations
impl Clone for ClassSetUnion
fn clone(&self) -> Self
impl Debug for ClassSetUnion
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Eq for ClassSetUnion
impl PartialEq for ClassSetUnion
fn eq(&self, other: &Self) -> bool
impl StructuralPartialEq for ClassSetUnion
Auto Trait Implementations
impl Freeze for ClassSetUnion
impl RefUnwindSafe for ClassSetUnion
impl Send for ClassSetUnion
impl Sync for ClassSetUnion
impl Unpin for ClassSetUnion
impl UnsafeUnpin for ClassSetUnion
impl UnwindSafe for ClassSetUnion
Blanket Implementations
impl<T> Any for ClassSetUnion
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for ClassSetUnion
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for ClassSetUnion
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for ClassSetUnion
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for ClassSetUnion
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for ClassSetUnion
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for ClassSetUnion
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for ClassSetUnion
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for ClassSetUnion
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>