arcbox_error/lib.rs
1//! Common error types for `ArcBox`.
2//!
3//! This crate provides unified error types that are shared across multiple `ArcBox` crates,
4//! reducing code duplication and ensuring consistent error handling patterns.
5//!
6//! # Usage
7//!
8//! ```rust
9//! use arcbox_error::CommonError;
10//!
11//! fn example() -> Result<(), CommonError> {
12//! // Use CommonError for common error scenarios
13//! Err(CommonError::NotFound("resource".to_string()))
14//! }
15//! ```
16//!
17//! # Crate-Specific Errors
18//!
19//! Each crate can define its own error type that wraps `CommonError`:
20//!
21//! ```rust,ignore
22//! use arcbox_error::CommonError;
23//! use thiserror::Error;
24//!
25//! #[derive(Debug, Error)]
26//! pub enum MyError {
27//! #[error(transparent)]
28//! Common(#[from] CommonError),
29//!
30//! #[error("my specific error: {0}")]
31//! Specific(String),
32//! }
33//! ```
34
35mod common;
36
37pub use common::CommonError;
38
39/// Result type alias using `CommonError`.
40pub type Result<T> = std::result::Result<T, CommonError>;