Skip to main content

ExecutorError

Enum ExecutorError 

Source
pub enum ExecutorError<E> {
    TaskFailed(E),
    Panic(CallbackError),
    PrepareFailed(CallbackError),
    PrepareCommitFailed(CallbackError),
    PrepareRollbackFailed {
        original: CallbackError,
        rollback: CallbackError,
    },
}
Expand description

Executor error types.

§Type Parameters

  • E - The original error type from task execution

§Examples

use qubit_dcl::double_checked::ExecutorError;
use qubit_dcl::double_checked::CallbackError;

let error: ExecutorError<String> =
    ExecutorError::TaskFailed("task failed".to_string());
println!("Error: {}", error);

let error_with_msg: ExecutorError<String> =
    ExecutorError::PrepareFailed(CallbackError::from_display("Service is not running"));
println!("Error: {}", error_with_msg);

Variants§

§

TaskFailed(E)

Task execution failed with original error

§

Panic(CallbackError)

Task execution panicked.

§

PrepareFailed(CallbackError)

Preparation action failed

§

PrepareCommitFailed(CallbackError)

Commit action for a successfully completed prepare action failed.

§

PrepareRollbackFailed

Rollback action for a successfully completed prepare action failed.

Fields

§original: CallbackError

The original error that triggered the rollback

§rollback: CallbackError

The error that occurred during prepare rollback

Implementations§

Source§

impl<E> ExecutorError<E>

Source

pub fn callback_type(&self) -> Option<&'static str>

Returns the callback type label, when the error comes from a callback and the type is available.

This returns None for task failures and callback errors without associated type labels.

§Returns

Some(label) for callback failures that carry callback type metadata, or None for task failures and untyped callback failures.

Trait Implementations§

Source§

impl<E: Debug> Debug for ExecutorError<E>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<E> Display for ExecutorError<E>
where E: Display,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats this executor error for user-facing diagnostics.

§Parameters
  • f - Formatter receiving the human-readable error text.
§Returns

fmt::Result from writing the formatted error text.

Source§

impl<E> Error for ExecutorError<E>
where E: Error + 'static,

Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the underlying task error as the standard error source.

Prepare lifecycle failures store their messages as strings and therefore do not expose a structured source error.

§Returns

Some(error) for ExecutorError::TaskFailed, or None for panic and prepare lifecycle failures.

1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0:

use the Display impl or to_string()

1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more

Auto Trait Implementations§

§

impl<E> Freeze for ExecutorError<E>
where E: Freeze,

§

impl<E> RefUnwindSafe for ExecutorError<E>
where E: RefUnwindSafe,

§

impl<E> Send for ExecutorError<E>
where E: Send,

§

impl<E> Sync for ExecutorError<E>
where E: Sync,

§

impl<E> Unpin for ExecutorError<E>
where E: Unpin,

§

impl<E> UnsafeUnpin for ExecutorError<E>
where E: UnsafeUnpin,

§

impl<E> UnwindSafe for ExecutorError<E>
where 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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.