pub enum CollaboratorDecision<P> {
Add {
user: UserName,
permission: P,
},
Change {
user: UserName,
permission: P,
actual: Observed<P>,
},
Remove {
user: UserName,
},
SelfRemoval {
user: UserName,
},
Matches {
user: UserName,
},
}Expand description
One step toward the declared collaborator access.
Variants§
Add
Grant the user access with this permission.
Change
The user has access with a different permission.
Fields
§
permission: PThe declared permission.
Remove
Remove the user’s direct grant.
SelfRemoval
Removing the user’s direct grant would remove the caller’s own access.
Matches
The user already has the declared permission.
Implementations§
Trait Implementations§
Source§impl<P: Clone> Clone for CollaboratorDecision<P>
impl<P: Clone> Clone for CollaboratorDecision<P>
Source§fn clone(&self) -> CollaboratorDecision<P>
fn clone(&self) -> CollaboratorDecision<P>
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 moreSource§impl<P: Debug> Debug for CollaboratorDecision<P>
impl<P: Debug> Debug for CollaboratorDecision<P>
impl<P: Eq> Eq for CollaboratorDecision<P>
Source§impl<P: PartialEq> PartialEq for CollaboratorDecision<P>
impl<P: PartialEq> PartialEq for CollaboratorDecision<P>
impl<P: PartialEq> StructuralPartialEq for CollaboratorDecision<P>
Auto Trait Implementations§
impl<P> Freeze for CollaboratorDecision<P>
impl<P> RefUnwindSafe for CollaboratorDecision<P>
impl<P> Send for CollaboratorDecision<P>
impl<P> Sync for CollaboratorDecision<P>
impl<P> Unpin for CollaboratorDecision<P>
impl<P> UnsafeUnpin for CollaboratorDecision<P>
impl<P> UnwindSafe for CollaboratorDecision<P>
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.