Skip to main content

ErrorCode

Enum ErrorCode 

Source
#[non_exhaustive]
pub enum ErrorCode {
Show 33 variants MissingColumn, DuplicateColumnName, DuplicateKey, ColumnLengthMismatch, TypeMismatch, ValueOutOfRange, DivisionByZero, IndexOutOfBounds, NullUnexpected, EmptyInput, PathIsDirectory, EmptyConstructionRequiresRuntime, CrossDeviceInputs, CrossProvenanceInputs, RuntimeBindingMismatch, ReadinessUnavailable, ExecutionBindingUnavailable, UnsupportedDtype, UnsupportedLayout, UnsupportedOperation, OutOfMemory, SizeOverflow, HostMaterializationLimitExceeded, CudaRuntime, FatalCuda, IoFailure, IoBusy, InvariantViolation, ForeignInvalidArgument, ForeignTransientDependencyFailure, ForeignPersistentDependencyFailure, ForeignInvariantViolation, ForeignResourceExhausted,
}
Expand description

Stable, machine-readable failure identity.

Leaf error code variants. Coarse classification uses ErrorKind.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

MissingColumn

A DataFrame column name was expected but did not exist.

§

DuplicateColumnName

A DataFrame column name was duplicated in an input list.

§

DuplicateKey

A lookup key was duplicated where uniqueness was required.

§

ColumnLengthMismatch

Two columns expected to have matching row counts did not.

§

TypeMismatch

A value’s type did not match the expected type.

§

ValueOutOfRange

A numeric, temporal, or fixed-point value could not fit in the required target range or exact representation.

§

DivisionByZero

An integer or decimal division, or an integer remainder, had a zero divisor in a row where both operands were valid.

§

IndexOutOfBounds

A row, column, or buffer index was out of bounds.

§

NullUnexpected

A null was present where a non-null value was required.

This leaf covers two physically distinct but contract-equivalent conditions:

  • An element whose mask bit is null appeared in an API that does not accept nulls (for example, a reduction or join key column that required non-null values).
  • A &str / String input contained a \0 byte somewhere before its end. This typically surfaces when the value must be handed to a C shim as a null-terminated string, where the embedded \0 would truncate the payload.

Although the two sources differ (mask bit versus string byte), downstream policy is the same. The input carries a null-ness the callee cannot process, so the caller must clean or reject it. Keeping both under one leaf avoids forcing downstreams to branch on an implementation detail that does not change their response.

§

EmptyInput

A collection-valued input was empty where at least one element was required.

§

PathIsDirectory

A file input path pointed to a directory.

§

EmptyConstructionRequiresRuntime

An empty-column construction path requires an explicit runtime.

§

CrossDeviceInputs

Inputs reside on different CUDA devices where a single-device invariant was required.

§

CrossProvenanceInputs

Inputs share a device but their runtime-provenance bundles conflict.

§

RuntimeBindingMismatch

A runtime-binding contract was violated at an execution boundary.

§

ReadinessUnavailable

A readiness (stream/event) primitive was required but unavailable.

§

ExecutionBindingUnavailable

An execution binding (stream/memory-resource) was required but unavailable.

§

UnsupportedDtype

The requested dtype is not supported on this path.

§

UnsupportedLayout

The requested physical layout is not supported on this path.

§

UnsupportedOperation

The requested operation is not supported on this path.

§

OutOfMemory

Device memory (or another bounded resource) was exhausted domestically.

§

SizeOverflow

A byte-size or element-count computation exceeded the representable platform range before allocation or copy.

§

HostMaterializationLimitExceeded

One unsplittable host result row exceeds a deterministic configured materialization ceiling.

§

CudaRuntime

A CUDA runtime call returned a potentially transient error.

§

FatalCuda

A CUDA call reported a fatal, unrecoverable error.

§

IoFailure

An I/O path (file, Arrow reader) failed.

§

IoBusy

I/O cleanup could not proceed because operations are still active.

§

InvariantViolation

An invariant in the crate’s own code was violated (soft-panic replacement).

§

ForeignInvalidArgument

The foreign layer reported caller-supplied invalid input; classification stopped at the boundary.

§

ForeignTransientDependencyFailure

The foreign layer reported a transient/runtime failure with a truthful retry signal.

§

ForeignPersistentDependencyFailure

The foreign layer reported a hard/intervention-required failure with a truthful non-retry signal.

§

ForeignInvariantViolation

The foreign layer violated or failed to uphold its own declared contract.

§

ForeignResourceExhausted

The foreign layer reported resource exhaustion with opaque classification.

Implementations§

Source§

impl ErrorCode

Source

pub const ALL: [Self; 33]

Every error code variant, in declaration order.

Trait Implementations§

Source§

impl Clone for ErrorCode

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for ErrorCode

Source§

impl Debug for ErrorCode

Source§

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

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

impl Display for ErrorCode

Source§

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

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

impl Eq for ErrorCode

Source§

impl Hash for ErrorCode

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ErrorCode

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for ErrorCode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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 = !

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.