pub struct ProjectionEngine<'a> { /* private fields */ }Expand description
Pure projection coordinator over a sealed world and federated closure.
Implementations§
Source§impl<'a> ProjectionEngine<'a>
impl<'a> ProjectionEngine<'a>
Sourcepub fn new(
registry: &'a ProjectionRegistry,
shapes: &'a dyn ConfigShapeVerifier,
closure: &'a FederatedClosure,
) -> Self
pub fn new( registry: &'a ProjectionRegistry, shapes: &'a dyn ConfigShapeVerifier, closure: &'a FederatedClosure, ) -> Self
Binds the loaded registry, Shape verifier, and sealed closure.
Sourcepub fn project(
&self,
world: &ObservedWorld,
spec: &ProjectionSpec,
policy: &ProjectorPolicy,
confinement: Option<ConfinementEvidence>,
) -> Result<ProjectionResult, ProjectionError>
pub fn project( &self, world: &ObservedWorld, spec: &ProjectionSpec, policy: &ProjectorPolicy, confinement: Option<ConfinementEvidence>, ) -> Result<ProjectionResult, ProjectionError>
Runs one qualified projection without acquiring observation or effects.
Qualification is not a caller-suppliable parameter: it is fetched from this engine’s own bound registry, for this exact registered provider instance, at the moment of dispatch. A caller cannot obtain a qualification once and replay it later, against this registry after the provider changed, or against a different registry entirely – there is no value of that shape for it to hold or pass.
§Errors
Returns ProjectionError::UnqualifiedProjector if spec.kind was
never granted bootstrap admission, or if the underlying receipt is no
longer current.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for ProjectionEngine<'a>
impl<'a> !Send for ProjectionEngine<'a>
impl<'a> !Sync for ProjectionEngine<'a>
impl<'a> !UnwindSafe for ProjectionEngine<'a>
impl<'a> Freeze for ProjectionEngine<'a>
impl<'a> Unpin for ProjectionEngine<'a>
impl<'a> UnsafeUnpin for ProjectionEngine<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more