pub struct InterpreterRequests<M> { /* private fields */ }Expand description
Requests interpreted by the runtime local to the emitting actor.
Unlike crate::Delivery, a interpreter request has no actor address. Its
recipient is definitionally the interpreter of the actor whose transition
emitted it. This distinct send lane lets interpreters route ordinary
deliveries and interpreter requests with disjoint static implementations.
Implementations§
Source§impl<M> InterpreterRequests<M>
impl<M> InterpreterRequests<M>
pub fn new(requests: Vec<M>) -> Self
pub fn one(request: M) -> Self
pub fn as_slice(&self) -> &[M]
pub fn iter(&self) -> Iter<'_, M> ⓘ
pub fn len(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn extend(&mut self, requests: impl IntoIterator<Item = M>)
pub fn into_requests(self) -> Vec<M>
Trait Implementations§
Source§impl<M: Clone> Clone for InterpreterRequests<M>
impl<M: Clone> Clone for InterpreterRequests<M>
Source§fn clone(&self) -> InterpreterRequests<M>
fn clone(&self) -> InterpreterRequests<M>
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<M: Debug> Debug for InterpreterRequests<M>
impl<M: Debug> Debug for InterpreterRequests<M>
impl<M: Eq> Eq for InterpreterRequests<M>
Source§impl<M> Index<usize> for InterpreterRequests<M>
impl<M> Index<usize> for InterpreterRequests<M>
Source§impl<Interpreter, RootEvent, Path, Request> InterpretSends<Interpreter, RootEvent, Path> for InterpreterRequests<Request>where
Interpreter: InterpretItem<Request, RootEvent, Path>,
Request: ActionItem,
impl<Interpreter, RootEvent, Path, Request> InterpretSends<Interpreter, RootEvent, Path> for InterpreterRequests<Request>where
Interpreter: InterpretItem<Request, RootEvent, Path>,
Request: ActionItem,
Source§fn interpret(
self,
interpreter: &mut Interpreter,
) -> impl Future<Output = Interpretation<Self::Settlements>> + Send
fn interpret( self, interpreter: &mut Interpreter, ) -> impl Future<Output = Interpretation<Self::Settlements>> + Send
Interpret every value in this product in its declared stable order.
Source§impl<M> IntoIterator for InterpreterRequests<M>
impl<M> IntoIterator for InterpreterRequests<M>
Source§impl<'a, M> IntoIterator for &'a InterpreterRequests<M>
impl<'a, M> IntoIterator for &'a InterpreterRequests<M>
Source§impl<M> LogicalDeliveryProtocols for InterpreterRequests<M>
impl<M> LogicalDeliveryProtocols for InterpreterRequests<M>
Source§type Protocols = NoBirthProtocols
type Protocols = NoBirthProtocols
Ordered, duplicate-preserving logical protocol occurrences.
Source§impl<M: PartialEq> PartialEq for InterpreterRequests<M>
impl<M: PartialEq> PartialEq for InterpreterRequests<M>
Source§impl<M> SendEffects for InterpreterRequests<M>
impl<M> SendEffects for InterpreterRequests<M>
Source§impl<Request> SendSettlements for InterpreterRequests<Request>where
Request: ActionItem,
impl<Request> SendSettlements for InterpreterRequests<Request>where
Request: ActionItem,
Source§type Settlements = Vec<SettledItem<Request, ItemSettlement<Request, <Request as ActionItem>::Accepted, <Request as ActionItem>::Rejection, <Request as ActionItem>::Prerequisite>>>
type Settlements = Vec<SettledItem<Request, ItemSettlement<Request, <Request as ActionItem>::Accepted, <Request as ActionItem>::Rejection, <Request as ActionItem>::Prerequisite>>>
Complete settlement product corresponding to
Self.Source§fn unattempted(self) -> Self::Settlements
fn unattempted(self) -> Self::Settlements
Preserve every item without granting interpretation authority.
impl<Event, M> SendsFor<Event> for InterpreterRequests<M>where
M: InterpreterRequest,
M::ReturnToEmitter: ReturnToEmitterFor<Event>,
impl<M: PartialEq> StructuralPartialEq for InterpreterRequests<M>
Auto Trait Implementations§
impl<M> Freeze for InterpreterRequests<M>
impl<M> RefUnwindSafe for InterpreterRequests<M>where
Vec<M>: RefUnwindSafe,
impl<M> Send for InterpreterRequests<M>
impl<M> Sync for InterpreterRequests<M>
impl<M> Unpin for InterpreterRequests<M>
impl<M> UnsafeUnpin for InterpreterRequests<M>where
Vec<M>: UnsafeUnpin,
impl<M> UnwindSafe for InterpreterRequests<M>where
Vec<M>: UnwindSafe,
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