smoke/smoke.rs
1type E = Box<dyn std::error::Error + Send + Sync>;
2
3fn main() -> Result<(), errors::Main> {
4 one()?;
5 Ok(())
6}
7
8fn one() -> Result<(), E> {
9 println!("> one");
10 two().map_err(|e| errors::wrap("two failed", e))?;
11 println!("< one");
12 Ok(())
13}
14
15fn two() -> Result<(), E> {
16 println!("> two");
17 Err(errors::new("kaboom").into())
18}