1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*!
A wrapper of [`catch_unwind`] that also captures the panic information.
The main purpose of this library is to provide a utility for capturing
the error information from assetion macros in custom test libraries.
[`catch_unwind`]: https://doc.rust-lang.org/stable/std/panic/fn.catch_unwind.html
# Example
```
use maybe_unwind::maybe_unwind;
std::panic::set_hook(Box::new(|info| {
maybe_unwind::capture_panic_info(info);
}));
if let Err(unwind) = maybe_unwind(|| do_something()) {
eprintln!("payload = {:?}", unwind.payload());
eprintln!("location = {:?}", unwind.location());
}
# fn do_something() {}
```
!*/
pub use crate::;
pub use ;