pub enum RoleSpec {
Public {
meta: Meta,
},
CurrentRole {
meta: Meta,
},
CurrentUser {
meta: Meta,
},
SessionUser {
meta: Meta,
},
Name {
name: Ident,
meta: Meta,
},
}Expand description
A role specification: a named role, PUBLIC, or a session-role pseudo-role.
Shared by grantees and the GRANTED BY grantor.
Variants§
Public
PUBLIC — the implicit role every role belongs to.
CurrentRole
CURRENT_ROLE — the current role.
CurrentUser
CURRENT_USER — the current user.
SessionUser
SESSION_USER — the session user.
Name
A named role.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for RoleSpec
impl<'de> Deserialize<'de> for RoleSpec
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
impl Eq for RoleSpec
Source§impl Render for RoleSpec
impl Render for RoleSpec
Source§fn render(&self, ctx: &RenderCtx<'_>, f: &mut Formatter<'_>) -> Result
fn render(&self, ctx: &RenderCtx<'_>, f: &mut Formatter<'_>) -> Result
Return the render for this value.
Source§fn operand_binding_power(&self) -> Option<BindingPower>
fn operand_binding_power(&self) -> Option<BindingPower>
The binding power this node contributes when it appears as an operand, or
None (the default) for a self-delimiting node — an atom, call, or
constructor — that never needs parentheses. Read moreimpl StructuralPartialEq for RoleSpec
Auto Trait Implementations§
impl Freeze for RoleSpec
impl RefUnwindSafe for RoleSpec
impl Send for RoleSpec
impl Sync for RoleSpec
impl Unpin for RoleSpec
impl UnsafeUnpin for RoleSpec
impl UnwindSafe for RoleSpec
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> DynAstExt for T
impl<T> DynAstExt for T
Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Erase to
&dyn Any for downcasting a node back to its concrete type.Source§fn dyn_clone(&self) -> Box<dyn DynAstExt>
fn dyn_clone(&self) -> Box<dyn DynAstExt>
Clone into a fresh box — the object-safe stand-in for
Clone (whose
Self-returning signature cannot go through a vtable).Source§fn dyn_eq(&self, other: &dyn DynAstExt) -> bool
fn dyn_eq(&self, other: &dyn DynAstExt) -> bool
Structural equality against another erased node — the object-safe stand-in
for
PartialEq (whose &Self argument cannot go through a vtable). Equal
iff other holds the same concrete type and that type deems the values
equal; differently-typed nodes are never equal.