pub enum WalletCard {
Concrete(PermissionCard),
Template(PolymorphicPermissionCard),
Scope(ScopeCard),
}Expand description
A card in the caller’s wallet, labelled with its kind.
The three cases hold three distinct card types, and this module offers no conversion between them.
Variants§
Concrete(PermissionCard)
A concrete card: every grant names concrete owners and resources.
Template(PolymorphicPermissionCard)
A template card: its grants may contain slot variables (?agent,
?env, …), which resolve for each holder.
Scope(ScopeCard)
The scope card lent to the current invocation. The host lists it only
if the agent holds card:inspect, and retires it when the invocation
ends.
Implementations§
Trait Implementations§
Source§impl Debug for WalletCard
impl Debug for WalletCard
Source§impl<'a> From<&'a WalletCard> for ScopeParent<'a>
impl<'a> From<&'a WalletCard> for ScopeParent<'a>
Source§fn from(card: &'a WalletCard) -> Self
fn from(card: &'a WalletCard) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for WalletCard
impl RefUnwindSafe for WalletCard
impl Send for WalletCard
impl Sync for WalletCard
impl Unpin for WalletCard
impl UnsafeUnpin for WalletCard
impl UnwindSafe for WalletCard
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