pub enum RequiredPermission {
Select,
Insert,
Update,
Delete,
}Expand description
The permission “shape” needed for a table operation. This is separate
from crate::auth::Permission because at the call site we know the
operation kind (read/insert/update/delete) and the table name, but
constructing the full Permission requires allocating a String for the
table name. RequiredPermission is a lightweight enum that defers the
allocation to into_permission, which is only called when enforcement is
actually active (i.e. require_auth is true).
Variants§
Select
SELECT on the table.
Insert
INSERT on the table.
Update
UPDATE on the table.
Delete
DELETE on the table.
Implementations§
Source§impl RequiredPermission
impl RequiredPermission
Sourcepub fn into_permission(self, table_name: &str) -> Permission
pub fn into_permission(self, table_name: &str) -> Permission
Construct the full crate::auth::Permission for this kind, allocating
the table-name String.
Trait Implementations§
Source§impl Clone for RequiredPermission
impl Clone for RequiredPermission
Source§fn clone(&self) -> RequiredPermission
fn clone(&self) -> RequiredPermission
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RequiredPermission
Source§impl Debug for RequiredPermission
impl Debug for RequiredPermission
impl Eq for RequiredPermission
Source§impl PartialEq for RequiredPermission
impl PartialEq for RequiredPermission
Source§fn eq(&self, other: &RequiredPermission) -> bool
fn eq(&self, other: &RequiredPermission) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for RequiredPermission
Auto Trait Implementations§
impl Freeze for RequiredPermission
impl RefUnwindSafe for RequiredPermission
impl Send for RequiredPermission
impl Sync for RequiredPermission
impl Unpin for RequiredPermission
impl UnsafeUnpin for RequiredPermission
impl UnwindSafe for RequiredPermission
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more