Expand description
Error handling utilities.
Made into a separate crate so that it can be used in places where
risingwave_common is not available or not desired.
The crate is also re-exported in risingwave_common::error for easy
access if risingwave_common is already a dependency.
Re-exports§
pub use thiserror_ext;
Modules§
Macros§
- bail
- Return early with an error, in any type that can be converted from
an
anyhow::Error. - bail_
no_ function - Constructs a
NoFunctionand bails out. - bail_
not_ implemented - Constructs a
NotImplementedand bails out. - def_
anyhow_ newtype - Define a newtype wrapper around
anyhow::Error. - def_
anyhow_ variant - Define a newtype + it’s variant in the specified type. This is useful when you want to define a new error type, but also want to define a variant for it in another enum.
- ensure
- Util macro for generating error when condition check failed.
- ensure_
eq - Util macro to generate error when the two arguments are not equal.
- must_
match - Match an enum variant and return the internal value.
- no_
function - Constructs a
NoFunction. - not_
implemented - Constructs a
NotImplemented. - try_
match_ expand - Try to match an enum variant and return the internal value.
Structs§
- Report
- A wrapper around an error that provides a cleaned up error trace for display and debug formatting.
Traits§
- AsDyn
- Extension trait for
Errorthat casts the error to a trait object. - AsReport
- Extension trait for
Errorthat provides aReportwhich formats the error and its sources in a cleaned-up way.
Functions§
- error_
request_ copy - Request a copiable value from the error, trying both
request_valueandrequest_ref.
Type Aliases§
- Boxed
Error - A boxed error type that is
Send,Sync, and'static.
Derive Macros§
- Arc
- Generates a new type that wraps the original error type in an
Arc. - Box
- Generates a new type that wraps the original error type in a [
struct@Box]. - Construct
- Generates constructor functions for different variants of the error type.
- Context
Into - Generates extension traits for converting the external error type into the the provided one, with extra context.
- Macro
- Generates macros for different variants of the error type to construct it or directly bail out.
- Report
Debug - Generates the [
Debug] implementation that delegates to theReportof an error.