Struct rive::models::server::ServerFlags
source · pub struct ServerFlags(_);Expand description
Server flag enum
Implementations§
source§impl ServerFlags
impl ServerFlags
pub const Verified: ServerFlags = Self::from_bits_retain(1)
pub const Official: ServerFlags = Self::from_bits_retain(2)
source§impl ServerFlags
impl ServerFlags
sourcepub const fn empty() -> ServerFlags
pub const fn empty() -> ServerFlags
Returns an empty set of flags.
sourcepub const fn all() -> ServerFlags
pub const fn all() -> ServerFlags
Returns the set containing all flags.
sourcepub const fn from_bits(bits: u64) -> Option<ServerFlags>
pub const fn from_bits(bits: u64) -> Option<ServerFlags>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
sourcepub const fn from_bits_truncate(bits: u64) -> ServerFlags
pub const fn from_bits_truncate(bits: u64) -> ServerFlags
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
sourcepub const fn from_bits_retain(bits: u64) -> ServerFlags
pub const fn from_bits_retain(bits: u64) -> ServerFlags
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
sourcepub fn from_name(name: &str) -> Option<ServerFlags>
pub fn from_name(name: &str) -> Option<ServerFlags>
Get the value for a flag from its stringified name.
Names are case-sensitive, so must correspond exactly to the identifier given to the flag.
sourcepub const fn iter_names(&self) -> IterRaw
pub const fn iter_names(&self) -> IterRaw
Iterate over enabled flag values with their stringified names.
sourcepub const fn intersects(&self, other: ServerFlags) -> bool
pub const fn intersects(&self, other: ServerFlags) -> bool
Returns true if there are flags common to both self and other.
sourcepub const fn contains(&self, other: ServerFlags) -> bool
pub const fn contains(&self, other: ServerFlags) -> bool
Returns true if all of the flags in other are contained within self.
sourcepub fn insert(&mut self, other: ServerFlags)
pub fn insert(&mut self, other: ServerFlags)
Inserts the specified flags in-place.
sourcepub fn remove(&mut self, other: ServerFlags)
pub fn remove(&mut self, other: ServerFlags)
Removes the specified flags in-place.
sourcepub fn toggle(&mut self, other: ServerFlags)
pub fn toggle(&mut self, other: ServerFlags)
Toggles the specified flags in-place.
sourcepub fn set(&mut self, other: ServerFlags, value: bool)
pub fn set(&mut self, other: ServerFlags, value: bool)
Inserts or removes the specified flags depending on the passed value.
sourcepub const fn intersection(self, other: ServerFlags) -> ServerFlags
pub const fn intersection(self, other: ServerFlags) -> ServerFlags
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.
sourcepub const fn union(self, other: ServerFlags) -> ServerFlags
pub const fn union(self, other: ServerFlags) -> ServerFlags
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.
sourcepub const fn difference(self, other: ServerFlags) -> ServerFlags
pub const fn difference(self, other: ServerFlags) -> ServerFlags
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.
sourcepub const fn symmetric_difference(self, other: ServerFlags) -> ServerFlags
pub const fn symmetric_difference(self, other: ServerFlags) -> ServerFlags
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.
sourcepub const fn complement(self) -> ServerFlags
pub const fn complement(self) -> ServerFlags
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§
source§impl Binary for ServerFlags
impl Binary for ServerFlags
source§impl BitAnd<ServerFlags> for ServerFlags
impl BitAnd<ServerFlags> for ServerFlags
source§fn bitand(self, other: ServerFlags) -> ServerFlags
fn bitand(self, other: ServerFlags) -> ServerFlags
Returns the intersection between the two sets of flags.
§type Output = ServerFlags
type Output = ServerFlags
& operator.source§impl BitAndAssign<ServerFlags> for ServerFlags
impl BitAndAssign<ServerFlags> for ServerFlags
source§fn bitand_assign(&mut self, other: ServerFlags)
fn bitand_assign(&mut self, other: ServerFlags)
Disables all flags disabled in the set.
source§impl BitFlags for ServerFlags
impl BitFlags for ServerFlags
§type IterNames = IterRaw
type IterNames = IterRaw
source§fn empty() -> ServerFlags
fn empty() -> ServerFlags
source§fn all() -> ServerFlags
fn all() -> ServerFlags
source§fn from_bits(bits: u64) -> Option<ServerFlags>
fn from_bits(bits: u64) -> Option<ServerFlags>
source§fn from_bits_truncate(bits: u64) -> ServerFlags
fn from_bits_truncate(bits: u64) -> ServerFlags
source§fn from_bits_retain(bits: u64) -> ServerFlags
fn from_bits_retain(bits: u64) -> ServerFlags
source§fn iter_names(&self) -> <ServerFlags as BitFlags>::IterNames
fn iter_names(&self) -> <ServerFlags as BitFlags>::IterNames
source§fn intersects(&self, other: ServerFlags) -> bool
fn intersects(&self, other: ServerFlags) -> bool
true if there are flags common to both self and other.source§fn contains(&self, other: ServerFlags) -> bool
fn contains(&self, other: ServerFlags) -> bool
true if all of the flags in other are contained within self.source§fn insert(&mut self, other: ServerFlags)
fn insert(&mut self, other: ServerFlags)
source§fn remove(&mut self, other: ServerFlags)
fn remove(&mut self, other: ServerFlags)
source§fn toggle(&mut self, other: ServerFlags)
fn toggle(&mut self, other: ServerFlags)
source§fn set(&mut self, other: ServerFlags, value: bool)
fn set(&mut self, other: ServerFlags, value: bool)
source§impl BitOr<ServerFlags> for ServerFlags
impl BitOr<ServerFlags> for ServerFlags
source§fn bitor(self, other: ServerFlags) -> ServerFlags
fn bitor(self, other: ServerFlags) -> ServerFlags
Returns the union of the two sets of flags.
§type Output = ServerFlags
type Output = ServerFlags
| operator.source§impl BitOrAssign<ServerFlags> for ServerFlags
impl BitOrAssign<ServerFlags> for ServerFlags
source§fn bitor_assign(&mut self, other: ServerFlags)
fn bitor_assign(&mut self, other: ServerFlags)
Adds the set of flags.
source§impl BitXor<ServerFlags> for ServerFlags
impl BitXor<ServerFlags> for ServerFlags
source§fn bitxor(self, other: ServerFlags) -> ServerFlags
fn bitxor(self, other: ServerFlags) -> ServerFlags
Returns the left flags, but with all the right flags toggled.
§type Output = ServerFlags
type Output = ServerFlags
^ operator.source§impl BitXorAssign<ServerFlags> for ServerFlags
impl BitXorAssign<ServerFlags> for ServerFlags
source§fn bitxor_assign(&mut self, other: ServerFlags)
fn bitxor_assign(&mut self, other: ServerFlags)
Toggles the set of flags.
source§impl Clone for ServerFlags
impl Clone for ServerFlags
source§fn clone(&self) -> ServerFlags
fn clone(&self) -> ServerFlags
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for ServerFlags
impl Debug for ServerFlags
source§impl<'de> Deserialize<'de> for ServerFlags
impl<'de> Deserialize<'de> for ServerFlags
source§fn deserialize<D>(
deserializer: D
) -> Result<ServerFlags, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>( deserializer: D ) -> Result<ServerFlags, <D as Deserializer<'de>>::Error>where D: Deserializer<'de>,
source§impl Extend<ServerFlags> for ServerFlags
impl Extend<ServerFlags> for ServerFlags
source§fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = ServerFlags>,
fn extend<T>(&mut self, iterator: T)where T: IntoIterator<Item = ServerFlags>,
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)source§impl FromIterator<ServerFlags> for ServerFlags
impl FromIterator<ServerFlags> for ServerFlags
source§fn from_iter<T>(iterator: T) -> ServerFlagswhere
T: IntoIterator<Item = ServerFlags>,
fn from_iter<T>(iterator: T) -> ServerFlagswhere T: IntoIterator<Item = ServerFlags>,
source§impl Hash for ServerFlags
impl Hash for ServerFlags
source§impl IntoIterator for ServerFlags
impl IntoIterator for ServerFlags
§type Item = ServerFlags
type Item = ServerFlags
source§fn into_iter(self) -> <ServerFlags as IntoIterator>::IntoIter
fn into_iter(self) -> <ServerFlags as IntoIterator>::IntoIter
source§impl LowerHex for ServerFlags
impl LowerHex for ServerFlags
source§impl Not for ServerFlags
impl Not for ServerFlags
source§fn not(self) -> ServerFlags
fn not(self) -> ServerFlags
Returns the complement of this set of flags.
§type Output = ServerFlags
type Output = ServerFlags
! operator.source§impl Octal for ServerFlags
impl Octal for ServerFlags
source§impl Ord for ServerFlags
impl Ord for ServerFlags
source§fn cmp(&self, other: &ServerFlags) -> Ordering
fn cmp(&self, other: &ServerFlags) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl PartialEq<ServerFlags> for ServerFlags
impl PartialEq<ServerFlags> for ServerFlags
source§fn eq(&self, other: &ServerFlags) -> bool
fn eq(&self, other: &ServerFlags) -> bool
self and other values to be equal, and is used
by ==.source§impl PartialOrd<ServerFlags> for ServerFlags
impl PartialOrd<ServerFlags> for ServerFlags
source§fn partial_cmp(&self, other: &ServerFlags) -> Option<Ordering>
fn partial_cmp(&self, other: &ServerFlags) -> 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 moresource§impl Serialize for ServerFlags
impl Serialize for ServerFlags
source§fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>( &self, serializer: S ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where S: Serializer,
source§impl Sub<ServerFlags> for ServerFlags
impl Sub<ServerFlags> for ServerFlags
source§fn sub(self, other: ServerFlags) -> ServerFlags
fn sub(self, other: ServerFlags) -> ServerFlags
Returns the set difference of the two sets of flags.
§type Output = ServerFlags
type Output = ServerFlags
- operator.source§impl SubAssign<ServerFlags> for ServerFlags
impl SubAssign<ServerFlags> for ServerFlags
source§fn sub_assign(&mut self, other: ServerFlags)
fn sub_assign(&mut self, other: ServerFlags)
Disables all flags enabled in the set.
source§impl UpperHex for ServerFlags
impl UpperHex for ServerFlags
impl Copy for ServerFlags
impl Eq for ServerFlags
impl StructuralEq for ServerFlags
impl StructuralPartialEq for ServerFlags
Auto Trait Implementations§
impl RefUnwindSafe for ServerFlags
impl Send for ServerFlags
impl Sync for ServerFlags
impl Unpin for ServerFlags
impl UnwindSafe for ServerFlags
Blanket Implementations§
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.