Skip to main content

ExecutionContext

Struct ExecutionContext 

Source
pub struct ExecutionContext<T, E>
where E: Display,
{ /* private fields */ }
Expand description

Execution context (state after task execution)

This type provides result retrieval functionality after task execution.

Prepare lifecycle callbacks are configured on super::DoubleCheckedLockExecutor and are already applied before an ExecutionContext is returned. Task closures are responsible for their own rollback, cleanup, and commit logic.

§Type Parameters

  • T - The type of the task return value
  • E - The type of the task error

Implementations§

Source§

impl<T, E> ExecutionContext<T, E>
where E: Display,

Source

pub fn get_result(self) -> ExecutionResult<T, E>

Gets the execution result (consumes the context)

Prepare commit or rollback callbacks have already been executed by the builder before this context was created. This method does not trigger additional side effects.

§Returns

The owned ExecutionResult stored in this context.

Source

pub fn peek_result(&self) -> &ExecutionResult<T, E>

Checks the execution result (does not consume the context)

§Returns

A shared reference to the stored ExecutionResult.

Source

pub fn is_success(&self) -> bool

Checks if execution was successful

§Returns

true if the stored result is ExecutionResult::Success.

Source§

impl<E> ExecutionContext<(), E>
where E: Display,

Source

pub fn finish(self) -> bool

Completes execution (for operations without return values)

Returns whether the execution was successful

§Returns

true if the stored result is ExecutionResult::Success containing ().

Auto Trait Implementations§

§

impl<T, E> Freeze for ExecutionContext<T, E>
where T: Freeze, E: Freeze,

§

impl<T, E> RefUnwindSafe for ExecutionContext<T, E>

§

impl<T, E> Send for ExecutionContext<T, E>
where T: Send, E: Send,

§

impl<T, E> Sync for ExecutionContext<T, E>
where T: Sync, E: Sync,

§

impl<T, E> Unpin for ExecutionContext<T, E>
where T: Unpin, E: Unpin,

§

impl<T, E> UnsafeUnpin for ExecutionContext<T, E>
where T: UnsafeUnpin, E: UnsafeUnpin,

§

impl<T, E> UnwindSafe for ExecutionContext<T, E>
where T: UnwindSafe, E: UnwindSafe,

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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.