pub struct KeyFileFlags { /* private fields */ }Implementations§
§impl KeyFileFlags
impl KeyFileFlags
pub const NONE: KeyFileFlags = Self{ bits: ffi::G_KEY_FILE_NONE as _,}
pub const KEEP_COMMENTS: KeyFileFlags = Self{ bits: ffi::G_KEY_FILE_KEEP_COMMENTS as _,}
pub const KEEP_TRANSLATIONS: KeyFileFlags = Self{ bits: ffi::G_KEY_FILE_KEEP_TRANSLATIONS as _,}
pub const fn empty() -> KeyFileFlags
pub const fn empty() -> KeyFileFlags
Returns an empty set of flags.
pub const fn all() -> KeyFileFlags
pub const fn all() -> KeyFileFlags
Returns the set containing all flags.
pub const fn from_bits(bits: u32) -> Option<KeyFileFlags>
pub const fn from_bits(bits: u32) -> Option<KeyFileFlags>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
pub const fn from_bits_truncate(bits: u32) -> KeyFileFlags
pub const fn from_bits_truncate(bits: u32) -> KeyFileFlags
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
pub const unsafe fn from_bits_unchecked(bits: u32) -> KeyFileFlags
pub const unsafe fn from_bits_unchecked(bits: u32) -> KeyFileFlags
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
Safety
The caller of the bitflags! macro can chose to allow or
disallow extra bits for their bitflags type.
The caller of from_bits_unchecked() has to ensure that
all bits correspond to a defined flag or that extra bits
are valid for this bitflags type.
pub const fn intersects(&self, other: KeyFileFlags) -> bool
pub const fn intersects(&self, other: KeyFileFlags) -> bool
Returns true if there are flags common to both self and other.
pub const fn contains(&self, other: KeyFileFlags) -> bool
pub const fn contains(&self, other: KeyFileFlags) -> bool
Returns true if all of the flags in other are contained within self.
pub fn insert(&mut self, other: KeyFileFlags)
pub fn insert(&mut self, other: KeyFileFlags)
Inserts the specified flags in-place.
pub fn remove(&mut self, other: KeyFileFlags)
pub fn remove(&mut self, other: KeyFileFlags)
Removes the specified flags in-place.
pub fn toggle(&mut self, other: KeyFileFlags)
pub fn toggle(&mut self, other: KeyFileFlags)
Toggles the specified flags in-place.
pub fn set(&mut self, other: KeyFileFlags, value: bool)
pub fn set(&mut self, other: KeyFileFlags, value: bool)
Inserts or removes the specified flags depending on the passed value.
pub const fn intersection(self, other: KeyFileFlags) -> KeyFileFlags
pub const fn intersection(self, other: KeyFileFlags) -> KeyFileFlags
Returns the intersection between the flags in self and
other.
Specifically, the returned set contains only the flags which are
present in both self and other.
This is equivalent to using the & operator (e.g.
ops::BitAnd), as in flags & other.
pub const fn union(self, other: KeyFileFlags) -> KeyFileFlags
pub const fn union(self, other: KeyFileFlags) -> KeyFileFlags
Returns the union of between the flags in self and other.
Specifically, the returned set contains all flags which are
present in either self or other, including any which are
present in both (see Self::symmetric_difference if that
is undesirable).
This is equivalent to using the | operator (e.g.
ops::BitOr), as in flags | other.
pub const fn difference(self, other: KeyFileFlags) -> KeyFileFlags
pub const fn difference(self, other: KeyFileFlags) -> KeyFileFlags
Returns the difference between the flags in self and other.
Specifically, the returned set contains all flags present in
self, except for the ones present in other.
It is also conceptually equivalent to the “bit-clear” operation:
flags & !other (and this syntax is also supported).
This is equivalent to using the - operator (e.g.
ops::Sub), as in flags - other.
pub const fn symmetric_difference(self, other: KeyFileFlags) -> KeyFileFlags
pub const fn symmetric_difference(self, other: KeyFileFlags) -> KeyFileFlags
Returns the symmetric difference between the flags
in self and other.
Specifically, the returned set contains the flags present which
are present in self or other, but that are not present in
both. Equivalently, it contains the flags present in exactly
one of the sets self and other.
This is equivalent to using the ^ operator (e.g.
ops::BitXor), as in flags ^ other.
pub const fn complement(self) -> KeyFileFlags
pub const fn complement(self) -> KeyFileFlags
Returns the complement of this set of flags.
Specifically, the returned set contains all the flags which are
not set in self, but which are allowed for this type.
Alternatively, it can be thought of as the set difference
between Self::all() and self (e.g. Self::all() - self)
This is equivalent to using the ! operator (e.g.
ops::Not), as in !flags.
Trait Implementations§
§impl Binary for KeyFileFlags
impl Binary for KeyFileFlags
§impl BitAnd<KeyFileFlags> for KeyFileFlags
impl BitAnd<KeyFileFlags> for KeyFileFlags
§fn bitand(self, other: KeyFileFlags) -> KeyFileFlags
fn bitand(self, other: KeyFileFlags) -> KeyFileFlags
Returns the intersection between the two sets of flags.
§type Output = KeyFileFlags
type Output = KeyFileFlags
& operator.§impl BitAndAssign<KeyFileFlags> for KeyFileFlags
impl BitAndAssign<KeyFileFlags> for KeyFileFlags
§fn bitand_assign(&mut self, other: KeyFileFlags)
fn bitand_assign(&mut self, other: KeyFileFlags)
Disables all flags disabled in the set.
§impl BitOr<KeyFileFlags> for KeyFileFlags
impl BitOr<KeyFileFlags> for KeyFileFlags
§fn bitor(self, other: KeyFileFlags) -> KeyFileFlags
fn bitor(self, other: KeyFileFlags) -> KeyFileFlags
Returns the union of the two sets of flags.
§type Output = KeyFileFlags
type Output = KeyFileFlags
| operator.§impl BitOrAssign<KeyFileFlags> for KeyFileFlags
impl BitOrAssign<KeyFileFlags> for KeyFileFlags
§fn bitor_assign(&mut self, other: KeyFileFlags)
fn bitor_assign(&mut self, other: KeyFileFlags)
Adds the set of flags.
§impl BitXor<KeyFileFlags> for KeyFileFlags
impl BitXor<KeyFileFlags> for KeyFileFlags
§fn bitxor(self, other: KeyFileFlags) -> KeyFileFlags
fn bitxor(self, other: KeyFileFlags) -> KeyFileFlags
Returns the left flags, but with all the right flags toggled.
§type Output = KeyFileFlags
type Output = KeyFileFlags
^ operator.§impl BitXorAssign<KeyFileFlags> for KeyFileFlags
impl BitXorAssign<KeyFileFlags> for KeyFileFlags
§fn bitxor_assign(&mut self, other: KeyFileFlags)
fn bitxor_assign(&mut self, other: KeyFileFlags)
Toggles the set of flags.
§impl Clone for KeyFileFlags
impl Clone for KeyFileFlags
§fn clone(&self) -> KeyFileFlags
fn clone(&self) -> KeyFileFlags
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for KeyFileFlags
impl Debug for KeyFileFlags
§impl Display for KeyFileFlags
impl Display for KeyFileFlags
§impl Extend<KeyFileFlags> for KeyFileFlags
impl Extend<KeyFileFlags> for KeyFileFlags
§fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = KeyFileFlags>,
fn extend<T>(&mut self, iterator: T)where T: IntoIterator<Item = KeyFileFlags>,
source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)§impl FromIterator<KeyFileFlags> for KeyFileFlags
impl FromIterator<KeyFileFlags> for KeyFileFlags
§fn from_iter<T>(iterator: T) -> KeyFileFlagswhere
T: IntoIterator<Item = KeyFileFlags>,
fn from_iter<T>(iterator: T) -> KeyFileFlagswhere T: IntoIterator<Item = KeyFileFlags>,
§impl Hash for KeyFileFlags
impl Hash for KeyFileFlags
§impl LowerHex for KeyFileFlags
impl LowerHex for KeyFileFlags
§impl Not for KeyFileFlags
impl Not for KeyFileFlags
§fn not(self) -> KeyFileFlags
fn not(self) -> KeyFileFlags
Returns the complement of this set of flags.
§type Output = KeyFileFlags
type Output = KeyFileFlags
! operator.§impl Octal for KeyFileFlags
impl Octal for KeyFileFlags
§impl Ord for KeyFileFlags
impl Ord for KeyFileFlags
§impl PartialEq<KeyFileFlags> for KeyFileFlags
impl PartialEq<KeyFileFlags> for KeyFileFlags
§fn eq(&self, other: &KeyFileFlags) -> bool
fn eq(&self, other: &KeyFileFlags) -> bool
self and other values to be equal, and is used
by ==.§impl PartialOrd<KeyFileFlags> for KeyFileFlags
impl PartialOrd<KeyFileFlags> for KeyFileFlags
§fn partial_cmp(&self, other: &KeyFileFlags) -> Option<Ordering>
fn partial_cmp(&self, other: &KeyFileFlags) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read more§impl Sub<KeyFileFlags> for KeyFileFlags
impl Sub<KeyFileFlags> for KeyFileFlags
§fn sub(self, other: KeyFileFlags) -> KeyFileFlags
fn sub(self, other: KeyFileFlags) -> KeyFileFlags
Returns the set difference of the two sets of flags.
§type Output = KeyFileFlags
type Output = KeyFileFlags
- operator.§impl SubAssign<KeyFileFlags> for KeyFileFlags
impl SubAssign<KeyFileFlags> for KeyFileFlags
§fn sub_assign(&mut self, other: KeyFileFlags)
fn sub_assign(&mut self, other: KeyFileFlags)
Disables all flags enabled in the set.