Skip to main content

ExecutionHost

Trait ExecutionHost 

Source
pub trait ExecutionHost: Sync {
    // Required method
    fn perform(
        &self,
        op: AbilityOp,
    ) -> impl Future<Output = Result<AbilityResult, ExecutionHostError>> + Send;

    // Provided methods
    fn yield_now(&self) -> impl Future<Output = ()> + Send { ... }
    fn execution_mode(&self) -> ExecutionMode { ... }
    fn projected_bindings(&self) -> ProjectedBindings { ... }
    fn trace_runtime_errors(&self) -> bool { ... }
    fn profile_execution(&self) -> bool { ... }
    fn take_scratch(&self) -> Option<ExecutionScratch> { ... }
    fn store_scratch(&self, _scratch: ExecutionScratch) { ... }
    fn observe_runtime_failure(&self, _failure: RuntimeFailure) { ... }
    fn observe_profile(&self, _profile: ProfileReport) { ... }
    fn observe_lashlang_execution(
        &self,
        _observation: LashlangExecutionObservation,
    ) { ... }
}

Required Methods§

Source

fn perform( &self, op: AbilityOp, ) -> impl Future<Output = Result<AbilityResult, ExecutionHostError>> + Send

Provided Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§