Struct polyphony_types::utils::Rights
source · pub struct Rights(_);Implementations§
source§impl Rights
impl Rights
pub const OPERATOR: Self = _
pub const MANAGE_APPLICATIONS: Self = _
pub const MANAGE_GUILDS: Self = _
pub const MANAGE_MESSAGES: Self = _
pub const MANAGE_RATE_LIMITS: Self = _
pub const MANAGE_ROUTING: Self = _
pub const MANAGE_TICKETS: Self = _
pub const MANAGE_USERS: Self = _
pub const ADD_MEMBERS: Self = _
pub const BYPASS_RATE_LIMITS: Self = _
pub const CREATE_APPLICATIONS: Self = _
pub const CREATE_CHANNELS: Self = _
pub const CREATE_DMS: Self = _
pub const CREATE_DM_GROUPS: Self = _
pub const CREATE_GUILDS: Self = _
pub const CREATE_INVITES: Self = _
pub const CREATE_ROLES: Self = _
pub const CREATE_TEMPLATES: Self = _
pub const CREATE_WEBHOOKS: Self = _
pub const JOIN_GUILDS: Self = _
pub const PIN_MESSAGES: Self = _
pub const SELF_ADD_REACTIONS: Self = _
pub const SELF_DELETE_MESSAGES: Self = _
pub const SELF_EDIT_MESSAGES: Self = _
pub const SELF_EDIT_NAME: Self = _
pub const SEND_MESSAGES: Self = _
pub const USE_ACTIVITIES: Self = _
pub const USE_VIDEO: Self = _
pub const USE_VOICE: Self = _
pub const INVITE_USERS: Self = _
pub const SELF_DELETE_DISABLE: Self = _
pub const DEBTABLE: Self = _
pub const CREDITABLE: Self = _
pub const KICK_BAN_MEMBERS: Self = _
pub const SELF_LEAVE_GROUPS: Self = _
pub const PRESENCE: Self = _
pub const SELF_ADD_DISCOVERABLE: Self = _
pub const MANAGE_GUILD_DIRECTORY: Self = _
pub const POGGERS: Self = _
pub const USE_ACHIEVEMENTS: Self = _
pub const INITIATE_INTERACTIONS: Self = _
pub const RESPOND_TO_INTERACTIONS: Self = _
pub const SEND_BACKDATED_EVENTS: Self = _
pub const USE_MASS_INVITES: Self = _
pub const ACCEPT_INVITES: Self = _
pub const SELF_EDIT_FLAGS: Self = _
pub const EDIT_FLAGS: Self = _
pub const MANAGE_GROUPS: Self = _
pub const VIEW_SERVER_STATS: Self = _
pub const RESEND_VERIFICATION_EMAIL: Self = _
source§impl Rights
impl Rights
sourcepub const fn from_bits(bits: u64) -> Option<Self>
pub const fn from_bits(bits: u64) -> Option<Self>
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) -> Self
pub const fn from_bits_truncate(bits: u64) -> Self
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
sourcepub const fn from_bits_retain(bits: u64) -> Self
pub const fn from_bits_retain(bits: u64) -> Self
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
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 intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Returns true if there are flags common to both self and other.
sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Returns true if all of the flags in other are contained within self.
sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Inserts or removes the specified flags depending on the passed value.
sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
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: Self) -> Self
pub const fn union(self, other: Self) -> Self
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: Self) -> Self
pub const fn difference(self, other: Self) -> Self
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: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
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) -> Self
pub const fn complement(self) -> Self
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 BitAndAssign<Rights> for Rights
impl BitAndAssign<Rights> for Rights
source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
Disables all flags disabled in the set.
source§impl BitOrAssign<Rights> for Rights
impl BitOrAssign<Rights> for Rights
source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
Adds the set of flags.
source§impl BitXorAssign<Rights> for Rights
impl BitXorAssign<Rights> for Rights
source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
Toggles the set of flags.
source§impl Extend<Rights> for Rights
impl Extend<Rights> for Rights
source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
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 Flags for Rights
impl Flags for Rights
source§fn from_bits_retain(bits: u64) -> Rights
fn from_bits_retain(bits: u64) -> Rights
source§fn from_bits(bits: Self::Bits) -> Option<Self>
fn from_bits(bits: Self::Bits) -> Option<Self>
source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
source§fn iter_names(&self) -> IterNames<Self>
fn iter_names(&self) -> IterNames<Self>
source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere Self: Sized,
true if there are flags common to both self and other.source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere Self: Sized,
true if all of the flags in other are contained within self.