A wrapper class that stores an error as well as a call stack associated with it.
This call stack is guaranteed to contain at least the location of this error’s construction (see new), and, if used with a TracedResult, will also contain the source location of every position where it was propagated using the ? operator. See TracedResult for more info.
A Result that traces the call stack of Err values.
Every time an Err value is propagated using the ? operator, TracedResults custom Try implementation will automatically append the location of the ? operator to the TracedErrors call stack.
Note that both TracedError::new() and TracedResult::try() use the #[track_caller] attribute to get their caller’s location. This won’t affect most users of this crate; However, if you use #[track_caller] on your own methods, you should be aware that the locations tracked by trace_error may be further up the stack than their “actual” locations. See the Rust reference for more info.