pub struct Flags {
pub span: Span,
pub items: Vec<FlagsItem>,
}
Expand description
A group of flags.
This corresponds only to the sequence of flags themselves, e.g., is-u
.
Fields§
§span: Span
The 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§
Source§impl Flags
impl Flags
Sourcepub fn add_item(&mut self, item: FlagsItem) -> Option<usize>
pub 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 None
is returned. If the
given item is a duplicate, then Some(i)
is returned, where
items[i].kind == item.kind
.
Sourcepub fn flag_state(&self, flag: Flag) -> Option<bool>
pub 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, None
is returned.
Trait Implementations§
impl Eq for Flags
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 UnwindSafe for Flags
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 72 bytes