Struct tracing_core::span::Current[][src]

pub struct Current { /* fields omitted */ }

Indicates what the Subscriber considers the “current” span.

As subscribers may not track a notion of a current span, this has three possible states:

Implementations

impl Current[src]

pub fn new(id: Id, metadata: &'static Metadata<'static>) -> Self[src]

Constructs a new Current that indicates the current context is a span with the given metadata and metadata.

pub fn none() -> Self[src]

Constructs a new Current that indicates the current context is not in a span.

pub fn is_known(&self) -> bool[src]

Returns true if the Subscriber that constructed this Current tracks a current span.

If this returns true and id, metadata, or into_inner return None, that indicates that we are currently known to not be inside a span. If this returns false, those methods will also return None, but in this case, that is because the subscriber does not keep track of the currently-entered span.

pub fn into_inner(self) -> Option<(Id, &'static Metadata<'static>)>[src]

Consumes self and returns the span Id and Metadata of the current span, if one exists and is known.

pub fn id(&self) -> Option<&Id>[src]

Borrows the Id of the current span, if one exists and is known.

pub fn metadata(&self) -> Option<&'static Metadata<'static>>[src]

Borrows the Metadata of the current span, if one exists and is known.

Trait Implementations

impl Debug for Current[src]

impl<'a> From<&'a Current> for Option<&'a Id>[src]

impl<'a> From<&'a Current> for Option<Id>[src]

impl<'a> From<&'a Current> for Option<&'static Metadata<'static>>[src]

impl From<Current> for Option<Id>[src]

Auto Trait Implementations

impl !RefUnwindSafe for Current

impl Send for Current

impl Sync for Current

impl Unpin for Current

impl !UnwindSafe for Current

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.