Back to Eqiora docs Skip to main content

AssemblyBackend

Trait AssemblyBackend 

pub trait AssemblyBackend<S>: Debug {
    // Required method
    fn assemble(
        &self,
        plan: &AssemblyPlan,
        work: &dyn AssemblyWork<S>,
    ) -> Result<AssemblyResult<S>, Diagnostic>;
}
Description

Backend-neutral indexed assembly execution.

AssemblyWork is Sync so a backend may evaluate independent packets concurrently. The backend itself is not required to be Sync: a physical transport adapter may own one application-serialized collective stream. Concurrent operations use distinct backend instances rather than sharing one mutable transport context implicitly.

Required Methods§

fn assemble( &self, plan: &AssemblyPlan, work: &dyn AssemblyWork<S>, ) -> Result<AssemblyResult<S>, Diagnostic>

Evaluate, scatter, and finalize one complete assembly operation.

§Errors

Returns the lowest failing logical packet diagnostic or a structured plan/scatter/finalization diagnostic. No partial result escapes.

Implementations on Foreign Types§

§

impl AssemblyBackend<f64> for LoopbackSpatialAssemblyBackend

§

fn assemble( &self, plan: &AssemblyPlan, work: &dyn AssemblyWork<f64>, ) -> Result<AssemblyResult<f64>, Diagnostic>

Implementors§