eros/
lib.rs

1#![cfg_attr(feature = "min_specialization", feature(min_specialization))]
2#![doc = include_str!("../README.md")]
3
4mod context;
5mod error_union;
6mod error_union_to_enum;
7mod generic_error;
8mod macros;
9mod str_error;
10mod type_set;
11
12// aliases
13pub type UResult<T, E> = std::result::Result<T, ErrorUnion<E>>;
14pub type Result<T, E = Box<dyn AnyError>> = std::result::Result<T, TracedError<E>>;
15pub type TE<E = Box<dyn AnyError>> = TracedError<E>;
16
17// data structures
18pub use context::AbsentValueError;
19pub use generic_error::AnyError;
20pub use generic_error::TracedError;
21pub use str_error::StrError;
22
23pub use error_union::ErrorUnion;
24pub use type_set::{E1, E2, E3, E4, E5, E6, E7, E8, E9};
25pub use type_set::End;
26pub use type_set::Cons;
27pub use type_set::Recurse;
28
29
30// traits
31pub use context::Context;
32pub use error_union::Union;
33pub use error_union::IntoUnion;
34pub use error_union::ReshapeUnion;
35pub use generic_error::Traced;
36pub use generic_error::TracedDyn;
37pub use generic_error::IntoTraced;