pub enum ItemSettlement<Item, Accepted, Rejection, Prerequisite> {
Accepted(Accepted),
Rejected {
item: Item,
reason: Rejection,
},
Blocked {
item: Item,
prerequisite: Prerequisite,
},
Corrupt {
item: Item,
fault: InterpreterFault,
},
}Expand description
Total settlement of one statically selected action item.
Rejection and dependency blocking retain the complete original item.
Interpreter corruption does the same. Accepted items are consumed and leave
only the capability’s promised receipt. Whether an item was attempted at all
belongs to SettledItem, so a concrete interpreter cannot fabricate that
product-level fact.
Variants§
Accepted(Accepted)
The capability consumed the item and returned its promised receipt.
Rejected
The capability lawfully rejected the complete item.
Blocked
A declared prerequisite did not commit, so the item remains untouched.
Corrupt
The interpreter violated its contract while the item remained owned.
Trait Implementations§
Source§impl<Item, Accepted, Rejection, Prerequisite> ClassifySettlement for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> ClassifySettlement for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
Source§fn settlement_status(&self) -> SettlementStatus
fn settlement_status(&self) -> SettlementStatus
Inspect every member without consuming or rewriting the settlement.
Source§impl<Item: Clone, Accepted: Clone, Rejection: Clone, Prerequisite: Clone> Clone for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item: Clone, Accepted: Clone, Rejection: Clone, Prerequisite: Clone> Clone for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
Source§fn clone(&self) -> ItemSettlement<Item, Accepted, Rejection, Prerequisite>
fn clone(&self) -> ItemSettlement<Item, Accepted, Rejection, Prerequisite>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<Item: Debug, Accepted: Debug, Rejection: Debug, Prerequisite: Debug> Debug for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item: Debug, Accepted: Debug, Rejection: Debug, Prerequisite: Debug> Debug for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
Source§impl<Item: PartialEq, Accepted: PartialEq, Rejection: PartialEq, Prerequisite: PartialEq> PartialEq for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item: PartialEq, Accepted: PartialEq, Rejection: PartialEq, Prerequisite: PartialEq> PartialEq for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
Source§fn eq(
&self,
other: &ItemSettlement<Item, Accepted, Rejection, Prerequisite>,
) -> bool
fn eq( &self, other: &ItemSettlement<Item, Accepted, Rejection, Prerequisite>, ) -> bool
Tests for
self and other values to be equal, and is used by ==.impl<Item: Copy, Accepted: Copy, Rejection: Copy, Prerequisite: Copy> Copy for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item: Eq, Accepted: Eq, Rejection: Eq, Prerequisite: Eq> Eq for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> StructuralPartialEq for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
Auto Trait Implementations§
impl<Item, Accepted, Rejection, Prerequisite> Freeze for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> RefUnwindSafe for ItemSettlement<Item, Accepted, Rejection, Prerequisite>where
Accepted: RefUnwindSafe,
Item: RefUnwindSafe,
Rejection: RefUnwindSafe,
Prerequisite: RefUnwindSafe,
impl<Item, Accepted, Rejection, Prerequisite> Send for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> Sync for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> Unpin for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> UnsafeUnpin for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
impl<Item, Accepted, Rejection, Prerequisite> UnwindSafe for ItemSettlement<Item, Accepted, Rejection, Prerequisite>
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