Enum RusticxError

Source
pub enum RusticxError {
    ConnectionError(String),
    QueryError(String),
    TransactionError(String),
    SerializationError(String),
    ValidationError(String),
    NotFound(String),
    InvalidColumn(String),
    DatabaseError(String),
    FeatureNotEnabled(String),
    DeserializationError(String),
}
Expand description

Represents the various errors that can occur in the Rusticx ORM.

This enum encapsulates different types of errors that might arise during database operations, serialization/deserialization, validation, or connection management.

Variants§

§

ConnectionError(String)

Represents a connection error with a message detailing the issue.

This error typically occurs when establishing or managing connections to the database.

§

QueryError(String)

Represents a query execution error with a message detailing the issue.

This error occurs when a SQL query fails to execute successfully on the database.

§

TransactionError(String)

Represents a transaction error with a message detailing the issue.

This error covers failures during the lifecycle of a database transaction, such as starting, committing, or rolling back.

§

SerializationError(String)

Represents a serialization error with a message detailing the issue.

This error occurs when converting Rust data structures into a format suitable for the database (e.g., JSON, specific database types).

§

ValidationError(String)

Represents a validation error with a message detailing the issue.

This error can be used for business logic validations that fail before interacting with the database.

§

NotFound(String)

Represents an error when a requested item (e.g., a database record) is not found.

§

InvalidColumn(String)

Represents an error when an invalid column name or definition is specified.

§

DatabaseError(String)

Represents a general database error with a message detailing the issue.

This is a catch-all for database-related errors that don’t fit into more specific categories like QueryError or ConnectionError.

§

FeatureNotEnabled(String)

Represents an error when a requested feature (e.g., support for a specific database) is not enabled.

§

DeserializationError(String)

Represents an error during deserialization with a message detailing the issue.

This error occurs when converting data received from the database (e.g., rows, JSON) into Rust data structures.

Trait Implementations§

Source§

impl Debug for RusticxError

Source§

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

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

impl Display for RusticxError

Implements the fmt::Display trait for RusticxError.

This allows RusticxError instances to be easily printed using {} format specifier, providing a user-friendly representation of the error.

Source§

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

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

impl Error for RusticxError

Implements the std::error::Error trait for RusticxError.

This makes RusticxError a standard error type in Rust, allowing it to be used with features like ? operator for easy error propagation and boxed dynamic error types (Box<dyn std::error::Error>).

1.30.0 · Source§

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

Returns the lower-level source of this error, if any. Read more
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
Source§

impl From<Error> for RusticxError

Implements conversion from tokio_postgres::Error to RusticxError.

This simplifies error handling by automatically converting errors from the tokio-postgres crate into a RusticxError::QueryError.

Source§

fn from(err: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for RusticxError

Implements conversion from serde_json::Error to RusticxError.

This simplifies error handling by automatically converting errors from the serde_json crate into a RusticxError::SerializationError.

Source§

fn from(err: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

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

Source§

type Output = T

Should always be Self
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V