Skip to main content

Actions

Struct Actions 

Source
pub struct Actions<A: Address, Ph, Sends, Birth: BirthMode> {
    pub sends: Sends,
    pub creates: Vec<Create<A, Birth::Child>>,
    pub become_: Become<A, Ph>,
}
Expand description

Bombay’s typed realization of the actor transition effects: communications, fresh actor creation, and next behavior or termination.

An interpreter installs every fresh actor in creates before interpreting any ordinary delivery or crate::ServiceSends request in sends from this value. Creation order is vector order, and each concrete send lane retains its own order; this contract does not impose an order between independent lanes of a crate::SendProduct. Constructing a value remains pure.

Fields§

§sends: Sends§creates: Vec<Create<A, Birth::Child>>§become_: Become<A, Ph>

Implementations§

Source§

impl<A: Address, Ph, Sends: SendAlgebra, Birth: BirthMode> Actions<A, Ph, Sends, Birth>

Source

pub fn just(become_: Become<A, Ph>) -> Self

Source

pub fn cont() -> Self

Source

pub fn stop(exit: Exit<A>) -> Self

Source

pub fn goto(phase: Ph) -> Self

Auto Trait Implementations§

§

impl<A, Ph, Sends, Birth> Freeze for Actions<A, Ph, Sends, Birth>
where Sends: Freeze, Ph: Freeze, A: Freeze,

§

impl<A, Ph, Sends, Birth> RefUnwindSafe for Actions<A, Ph, Sends, Birth>

§

impl<A, Ph, Sends, Birth> Send for Actions<A, Ph, Sends, Birth>
where Sends: Send, Ph: Send, A: Send, <A as Address>::Nonce: Send, <Birth as BirthMode>::Child: Send,

§

impl<A, Ph, Sends, Birth> Sync for Actions<A, Ph, Sends, Birth>
where Sends: Sync, Ph: Sync, A: Sync, <A as Address>::Nonce: Sync, <Birth as BirthMode>::Child: Sync,

§

impl<A, Ph, Sends, Birth> Unpin for Actions<A, Ph, Sends, Birth>
where Sends: Unpin, Ph: Unpin, A: Unpin, <A as Address>::Nonce: Unpin, <Birth as BirthMode>::Child: Unpin,

§

impl<A, Ph, Sends, Birth> UnsafeUnpin for Actions<A, Ph, Sends, Birth>
where Sends: UnsafeUnpin, Ph: UnsafeUnpin, A: UnsafeUnpin,

§

impl<A, Ph, Sends, Birth> UnwindSafe for Actions<A, Ph, Sends, Birth>
where Sends: UnwindSafe, Ph: UnwindSafe, A: UnwindSafe, <A as Address>::Nonce: UnwindSafe, <Birth as BirthMode>::Child: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.