Struct Flags
pub struct Flags { pub span: Span, pub items: Vec<FlagsItem> }
A group of flags.
This corresponds only to the sequence of flags themselves, e.g., is-u.
Fields
span: SpanThe span of this group of flags.
items: Vec<FlagsItem>A sequence of flag items. Each item is either a flag or a negation operator.
Implementations
impl Flags
fn add_item(&mut self, item: FlagsItem) -> Option<usize>Add the given item to this sequence of flags.
If the item was added successfully, then
Noneis returned. If the given item is a duplicate, thenSome(i)is returned, whereitems[i].kind == item.kind.fn flag_state(&self, flag: Flag) -> Option<bool>Returns the state of the given flag in this set.
If the given flag is in the set but is negated, then
Some(false)is returned.If the given flag is in the set and is not negated, then
Some(true)is returned.Otherwise,
Noneis returned.
Trait Implementations
impl Clone for Flags
fn clone(&self) -> Self
impl Debug for Flags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Eq for Flags
impl PartialEq for Flags
fn eq(&self, other: &Self) -> bool
impl StructuralPartialEq for Flags
Auto Trait Implementations
impl Freeze for Flags
impl RefUnwindSafe for Flags
impl Send for Flags
impl Sync for Flags
impl Unpin for Flags
impl UnsafeUnpin for Flags
impl UnwindSafe for Flags
Blanket Implementations
impl<T> Any for Flags
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for Flags
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for Flags
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for Flags
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for Flags
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for Flags
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for Flags
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 Flags
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for Flags
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>