pub enum RoleId {
System(u64),
Predefined(u64),
User(u64),
Public,
}
Expand description
The identifier for a role.
Variants§
System(u64)
Predefined(u64)
Like system roles, these are roles built into the system. However, they are grantable to users and provide access to certain, commonly needed, privileged capabilities and information (modelled after https://www.postgresql.org/docs/16/predefined-roles.html).
User(u64)
Public
Implementations§
source§impl RoleId
impl RoleId
pub fn is_system(&self) -> bool
pub fn is_user(&self) -> bool
pub fn is_public(&self) -> bool
pub fn is_predefined(&self) -> bool
pub fn is_builtin(&self) -> bool
pub fn encode_binary(&self) -> Vec<u8> ⓘ
pub fn decode_binary(raw: &[u8]) -> Result<RoleId, Error>
pub const fn binary_size() -> usize
Trait Implementations§
source§impl Arbitrary for RoleId
impl Arbitrary for RoleId
§type Parameters = (<u64 as Arbitrary>::Parameters, <u64 as Arbitrary>::Parameters, <u64 as Arbitrary>::Parameters)
type Parameters = (<u64 as Arbitrary>::Parameters, <u64 as Arbitrary>::Parameters, <u64 as Arbitrary>::Parameters)
The type of parameters that
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.§type Strategy = Union<BoxedStrategy<RoleId>>
type Strategy = Union<BoxedStrategy<RoleId>>
The type of
Strategy
used to generate values of type Self
.source§fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
source§impl Columnation for RoleId
impl Columnation for RoleId
§type InnerRegion = CopyRegion<RoleId>
type InnerRegion = CopyRegion<RoleId>
The type of region capable of absorbing allocations owned by
the
Self
type. Note: not allocations of Self
, but of the
things that it owns.source§impl<'de> Deserialize<'de> for RoleId
impl<'de> Deserialize<'de> for RoleId
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl MzReflect for RoleId
impl MzReflect for RoleId
source§fn add_to_reflected_type_info(rti: &mut ReflectedTypeInfo)
fn add_to_reflected_type_info(rti: &mut ReflectedTypeInfo)
Adds names and types of the fields of the struct or enum to
rti
. Read moresource§impl Ord for RoleId
impl Ord for RoleId
source§impl PartialOrd for RoleId
impl PartialOrd for RoleId
source§impl RustType<ProtoRoleId> for RoleId
impl RustType<ProtoRoleId> for RoleId
source§fn into_proto(&self) -> ProtoRoleId
fn into_proto(&self) -> ProtoRoleId
Convert a
Self
into a Proto
value.source§fn from_proto(proto: ProtoRoleId) -> Result<Self, TryFromProtoError>
fn from_proto(proto: ProtoRoleId) -> Result<Self, TryFromProtoError>
source§fn into_proto_owned(self) -> Proto
fn into_proto_owned(self) -> Proto
A zero clone version of
Self::into_proto
that types can
optionally implement, otherwise, the default implementation
delegates to Self::into_proto
.impl Copy for RoleId
impl Eq for RoleId
impl StructuralPartialEq for RoleId
Auto Trait Implementations§
impl Freeze for RoleId
impl RefUnwindSafe for RoleId
impl Send for RoleId
impl Sync for RoleId
impl Unpin for RoleId
impl UnwindSafe for RoleId
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
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> PreferredContainer for T
impl<T> PreferredContainer for T
source§impl<T> ProgressEventTimestamp for T
impl<T> ProgressEventTimestamp for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.