Skip to main content

InterlaceMachine

Struct InterlaceMachine 

Source
pub struct InterlaceMachine { /* private fields */ }
Expand description

The sole semantic owner of either a same-runtime pair or one connected carrier.

Implementations§

Source§

impl InterlaceMachine

Source

pub fn new_direct(config: DirectConfig) -> Result<Self, CoreError>

Source

pub fn new_connected( role: CarrierRole, config: ConnectedConfig, ) -> Result<Self, CoreError>

Source

pub fn protocol_phase_token( &self, side: InterlaceSide, ) -> Option<ProtocolPhaseToken>

Source

pub fn active_store_call(&self, side: InterlaceSide) -> Option<&StoreCall>

Source

pub fn active_store_call_mut( &mut self, side: InterlaceSide, ) -> Option<&mut StoreCall>

Source

pub fn replace_direct_policy( &mut self, operands: [InterlaceModule; 2], ) -> Result<(), CoreError>

Source

pub fn replace_connected_policy( &mut self, operand: InterlaceModule, ) -> Result<(), CoreError>

Source

pub fn submit_store_call(&mut self, id: u64) -> Result<(), MachineError>

Source

pub fn try_store_position_advanced( &mut self, boundary: &FixedPointWakeBoundary, position: StorePosition, ) -> StorePositionAdvance

Source

pub fn timeout(&mut self, side: InterlaceSide) -> Result<(), CoreError>

Source

pub fn can_read_peer_input(&self) -> Result<bool, CoreError>

Source

pub fn peer_record_ingress(&self) -> Result<RecordIngress, CoreError>

Source

pub fn peer_input_disposition( &self, input: &PeerInput, ) -> Result<PeerInputDisposition, CoreError>

Source

pub fn push_peer_input( &mut self, input: impl Into<PeerInput>, ) -> Result<(), MachineError>

Source

pub fn accept_peer_output(&mut self) -> Result<Vec<IltpItem>, MachineError>

Accept the retained connected output. A terminal transition this causes returns the same error the next poll reports as Failed. Accept the polled peer output, handing its items to the writer.

Source

pub fn adopt_operand_cache( &mut self, cache: OperandCache, ) -> Result<(), MachineError>

Answer MachinePoll::SelectOperand on a port-selecting carrier: this logical session’s operand, or None to refuse the port. Share cache with every logical session, while the first operand selection is unanswered (ConnectedCarrier::adopt_operand_cache).

Source

pub fn select_operand( &mut self, selection: Option<SessionOperand>, ) -> Result<(), MachineError>

Source

pub fn peer_port(&self) -> Option<&PortText>

The port of the latest peer preface; a direct pair has none.

Source

pub fn peer_by(&self) -> Option<&ByValue>

The By the live peer proved in the latest logical session; a direct pair has none.

Source

pub fn outgoing_encoding(&self) -> Option<StreamEncoding>

The encoding of the local-to-peer direction the latest preface pair selects; a direct pair has none.

Source

pub fn incoming_encoding(&self) -> Option<StreamEncoding>

The encoding of the peer-to-local direction the latest preface pair selects; a direct pair has none.

Source

pub fn peer_diagnostics(&self) -> PeerDiagnostics

The connected route’s diagnostics for a bounded outcome.

Source

pub fn peer_eof(&mut self) -> Result<(), MachineError>

Source

pub fn cancel(&mut self)

Source

pub fn poll(&mut self) -> MachinePoll<'_>

Trait Implementations§

Source§

impl Debug for InterlaceMachine

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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.