🛈 Note: This is pre-release documentation for the upcoming tracing 0.2.0 ecosystem.

For the release documentation, please see docs.rs, instead.

pub trait InstrumentResult<T> {
    type Instrumented;

    // Required method
    fn in_current_span(self) -> Result<T, Self::Instrumented>;
}
Expand description

Extension trait for instrumenting errors in Results with SpanTraces

Required Associated Types§

source

type Instrumented

The type of the wrapped error after instrumentation

Required Methods§

source

fn in_current_span(self) -> Result<T, Self::Instrumented>

Instrument an Error by bundling it with a SpanTrace

§Examples
use tracing_error::{TracedError, InstrumentResult};


fn do_thing() -> Result<(), TracedError<io::Error>> {
    fallible_fn().in_current_span()
}

Implementations on Foreign Types§

source§

impl<T, E> InstrumentResult<T> for Result<T, E>
where E: InstrumentError,

§

type Instrumented = <E as InstrumentError>::Instrumented

Available on crate feature traced-error only.
source§

fn in_current_span(self) -> Result<T, Self::Instrumented>

Available on crate feature traced-error only.

Implementors§