Skip to main content

PayloadBatch

Struct PayloadBatch 

Source
pub struct PayloadBatch<'a, P: SignatureProvider<'a>> { /* private fields */ }
Expand description

A prepared fan-out bound to the digest batch’s selected provider instance.

This is a processing mechanism, not CMS schema, signer selection or trust validation. The caller must resolve and validate every request first.

Implementations§

Source§

impl<'a, P: SignatureProvider<'a>> PayloadBatch<'a, P>

Source

pub fn prepare<W: Work>( digests: DigestBatch<'a, P>, requests: OwnedVec<RawRequest<'a, P>>, execution: &W, ) -> Result<Self, PayloadError<P::Error>>

Initializes raw challenges before source I/O, without retaining Work.

No identity/state cloning, provider switching or prehash substitution occurs. Every request’s metadata storage is admitted before its start callback. The callback accounts for its own complete transitive work.

Source

pub fn run<S: Source, W: Work>( self, source: &mut S, execution: &W, ) -> Result<Completed<'a, P>, PassError<S::Error, P::Error>>

Streams once to every digest and raw state, then consumes each once.

Output catalogues are admitted before calling the source. Incomplete source acquisition or any sticky callback refusal returns no completed digests or raw answers, even if other states processed an input prefix.

Auto Trait Implementations§

§

impl<'a, P> !Freeze for PayloadBatch<'a, P>

§

impl<'a, P> RefUnwindSafe for PayloadBatch<'a, P>

§

impl<'a, P> Send for PayloadBatch<'a, P>
where DigestBatch<'a, P>: Send, OwnedVec<<P as SignatureProvider<'a>>::RawState>: Send,

§

impl<'a, P> Sync for PayloadBatch<'a, P>
where DigestBatch<'a, P>: Sync, OwnedVec<<P as SignatureProvider<'a>>::RawState>: Sync,

§

impl<'a, P> Unpin for PayloadBatch<'a, P>

§

impl<'a, P> UnsafeUnpin for PayloadBatch<'a, P>

§

impl<'a, P> UnwindSafe for PayloadBatch<'a, P>

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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

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.