pub struct PrepublicationRealtimeFrame<T, C, H>where
H: RealtimeFrameHostObserver<T>,{ /* private fields */ }Expand description
Scheduler transition which gates publication on exact completion and host observation.
Core schedulers call TransitionOutput::is_complete before committing the associated
semantic-state branch. This wrapper returns true only after the native completion has
validated and the family-blind observer has produced and cached the host output. Therefore an
observation failure follows the scheduler’s ordinary failed-transition path and cannot publish
the branch. The cached output is consumed only from the transition returned after commit.
Implementations§
Source§impl<T, C, H> PrepublicationRealtimeFrame<T, C, H>where
H: RealtimeFrameHostObserver<T>,
impl<T, C, H> PrepublicationRealtimeFrame<T, C, H>where
H: RealtimeFrameHostObserver<T>,
Sourcepub fn new(submitted: SubmittedRealtimeFrame<T, C>, observer: H) -> Self
pub fn new(submitted: SubmittedRealtimeFrame<T, C>, observer: H) -> Self
Binds one submitted native frame to its mandatory prepublication observer.
Sourcepub fn into_host_output(
self,
) -> Result<H::Output, RealtimeHostOutputUnavailable<H::Error>>
pub fn into_host_output( self, ) -> Result<H::Output, RealtimeHostOutputUnavailable<H::Error>>
Consumes the cached host output after the scheduler returns this committed transition.
Calling this before TransitionOutput::is_complete succeeds reports that observation is
still pending. A failed observation retains its original error for stable diagnostics.