Skip to main content

Crate bombay_machine_executor

Crate bombay_machine_executor 

Source
Expand description

Concurrent execution policies for pure representable machines.

ExclusiveExecutor directly returns outputs to a caller that serializes turns through exclusive access. SerializedExecutor provides run-to-completion turns: it queues inputs and does not advance the next transition until the preceding output handler returns. LinearizedExecutor advances inputs immediately under its lock, then dispatches already-ordered outputs. The latter policy is appropriate only when transition linearization may precede completion of earlier work.

Structs§

ExclusiveExecutor
Allocation-free execution of an affine machine through exclusive access.
ExclusivePoisoned
Failure to recover a machine consumed by a panicking transition.
LinearizedExecutor
Transition-linearized execution with separately ordered output dispatch.
PoisonedInput
Rejection of an input after a serialized executor was poisoned.
SerializedExecutor
Serialized run-to-completion execution of one machine.
TurnReceipt
Completion receipt for one serialized input.

Enums§

DispatchOutcome
Ownership result of one LinearizedExecutor::dispatch_pending call.
ExclusiveState
Observable state of an ExclusiveExecutor.
TurnOutcome
Result of waiting for a serialized turn.

Traits§

Machine
A stateful transducer whose composition remains structurally inspectable.
OutputEvidence
Extracts small copyable evidence before an output is queued for dispatch.
OutputHandler
Handles one machine output synchronously.