Skip to main content

Executor

Struct Executor 

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

Channel-driven executor. One per ceremony run.

Implementations§

Source§

impl Executor

Source

pub fn new( ceremony: Ceremony, registry: ActionRegistry, backend_registry: BackendRegistry, output_config: OutputConfig, dry_run: bool, startup: StartupSnapshot, ) -> Self

Build an executor for a single ceremony run.

startup carries the system identity and device environment the CLI gathered at launch; the executor echoes them to the frontend as UI signals at ceremony start and does not otherwise inspect them.

Source

pub fn with_clock(self, clock: Arc<dyn Clock>) -> Self

Override the run clock. The default is SystemClock; tests inject a fixed or stepping clock to make recorded event times deterministic.

Source

pub fn run( self, cmd_rx: &Receiver<UiCommand>, event_tx: &Sender<ExecEvent>, transcript_sink: Box<dyn TranscriptSink>, ) -> Result<ExecutionSummary, ExecutionError>

Drive the ceremony to completion.

Blocking. Intended to be invoked on a dedicated executor thread spawned by the frontend. The transcript_sink is finalized before this function returns, and its fingerprint is included in the returned summary.

§Errors

Returns ExecutionError for any condition that prevents the ceremony from completing, validation failures, missing actions, abort, backend errors, or transcript I/O failures.

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> Same for T

Source§

type Output = T

Should always be Self
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.