Skip to main content

Prepared

Struct Prepared 

Source
pub struct Prepared<S, I> { /* private fields */ }
Expand description

Fully validated, proof-carrying startup input for one worker driver.

Retains the installer with its claims until the exact domain is entered.

Implementations§

Source§

impl<S, I> Prepared<S, I>

Source

pub const fn layout(&self) -> Config

Source§

impl<S, I> Prepared<S, I>
where S: Direct,

Source

pub fn enter_local<O, R, Done>( self, op: O, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, Infallible, (I, O), R>>) -> Done, ) -> Done
where O: for<'scope, 'life, 'p, 'd> Operation<'d, Worker<'scope, 'life, 'p, 'd, S, I, ()>, Output = R>,

Source

pub fn with_local<F, R, Done>( self, op: F, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, Infallible, (I, F), R>>) -> Done, ) -> Done
where F: for<'scope, 'life, 'p, 'd> FnOnce(Worker<'scope, 'life, 'p, 'd, S, I, ()>) -> R,

Source

pub fn enter<C, O, R, Done>( self, context: C, op: O, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, Infallible, (I, O), R, C::Shutdown>>) -> Done, ) -> Done
where C: Build, O: for<'scope, 'life, 'p, 'd> Operation<'d, Worker<'scope, 'life, 'p, 'd, S, I, C::Shutdown>, Output = R>,

Source

pub fn enter_with<C, F, R, Done>( self, context: C, op: F, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, Infallible, (I, F), R, C::Shutdown>>) -> Done, ) -> Done
where C: Build, F: for<'scope, 'life, 'p, 'd> FnOnce(Worker<'scope, 'life, 'p, 'd, S, I, C::Shutdown>) -> R,

Source

pub fn run<'report, C, F>( self, context: C, complete: &'report mut Completion, report: impl Observe, failed: impl for<'owner> FnOnce(RunError<'owner, Infallible, I::Error, (I, Run<'report>), Requested<C::Shutdown>, C::Shutdown>) -> Result<Requested<C::Shutdown>, F>, ) -> Result<Requested<C::Shutdown>, F>
where C: Build, I: Execute<S>,

Installs and runs one application, retaining every failure for its handler.

Source§

impl<S, I> Prepared<S, I>
where S: Build,

Source

pub fn try_local<O, R, Done>( self, op: O, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, S::Error, (I, O), R>>) -> Done, ) -> Done
where O: for<'scope, 'life, 'p, 'd> Operation<'d, Worker<'scope, 'life, 'p, 'd, S, I, ()>, Output = R>,

Source

pub fn try_scoped<F, R, Done>( self, op: F, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, S::Error, (I, F), R>>) -> Done, ) -> Done
where F: for<'scope, 'life, 'p, 'd> FnOnce(Worker<'scope, 'life, 'p, 'd, S, I, ()>) -> R,

Source

pub fn try_enter<C, O, R, Done>( self, context: C, op: O, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, S::Error, (I, O), R, C::Shutdown>>) -> Done, ) -> Done
where C: Build, O: for<'scope, 'life, 'p, 'd> Operation<'d, Worker<'scope, 'life, 'p, 'd, S, I, C::Shutdown>, Output = R>,

Source

pub fn try_with<C, F, R, Done>( self, context: C, op: F, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, S::Error, (I, F), R, C::Shutdown>>) -> Done, ) -> Done
where C: Build, F: for<'scope, 'life, 'p, 'd> FnOnce(Worker<'scope, 'life, 'p, 'd, S, I, C::Shutdown>) -> R,

Source§

impl<S, I> Prepared<S, I>
where S: Create,

Source

pub fn try_create<C, F, R, Done>( self, context: C, op: F, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, S::Error, (I, F), R, C::Shutdown>>) -> Done, ) -> Done
where C: Build, F: for<'scope, 'life, 'p, 'd> FnOnce(Worker<'scope, 'life, 'p, 'd, S, I, C::Shutdown>) -> R,

Source

pub fn try_scope<C, O, R, Done>( self, context: C, op: O, report: impl Observe, finish: impl for<'owner> FnOnce(Result<R, EnterError<'owner, S::Error, (I, O), R, C::Shutdown>>) -> Done, ) -> Done
where C: Build, O: for<'scope, 'life, 'p, 'd> Operation<'d, Worker<'scope, 'life, 'p, 'd, S, I, C::Shutdown>, Output = R>,

Auto Trait Implementations§

§

impl<S, I> Forget for Prepared<S, I>

§

impl<S, I> Freeze for Prepared<S, I>
where Domain<S>: Freeze, I: Freeze,

§

impl<S, I> RefUnwindSafe for Prepared<S, I>

§

impl<S, I> Send for Prepared<S, I>
where Domain<S>: Send, I: Send,

§

impl<S, I> Sync for Prepared<S, I>
where Domain<S>: Sync, I: Sync,

§

impl<S, I> Unpin for Prepared<S, I>
where Domain<S>: Unpin, I: Unpin,

§

impl<S, I> UnsafeUnpin for Prepared<S, I>

§

impl<S, I> UnwindSafe for Prepared<S, I>

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> Convert<T> for T

Source§

fn into(self) -> T

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.