pub struct Current { /* private fields */ }
Expand description
Indicates what the collector considers the “current” span.
As collectors may not track a notion of a current span, this has three possible states:
Implementations§
Source§impl Current
impl Current
Sourcepub fn new(id: Id, metadata: &'static Metadata<'static>) -> Self
pub fn new(id: Id, metadata: &'static Metadata<'static>) -> Self
Constructs a new Current
that indicates the current context is a span
with the given id
and metadata
.
Sourcepub fn none() -> Self
pub fn none() -> Self
Constructs a new Current
that indicates the current context is not
in a span.
Sourcepub fn unknown() -> Self
pub fn unknown() -> Self
Constructs a new Current
that indicates the collector does not
track a current span.
Sourcepub fn is_known(&self) -> bool
pub fn is_known(&self) -> bool
Returns true
if the collector 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 collector does not keep
track of the currently-entered span.
Sourcepub fn into_inner(self) -> Option<(Id, &'static Metadata<'static>)>
pub fn into_inner(self) -> Option<(Id, &'static Metadata<'static>)>
Consumes self
and returns the span Id
and Metadata
of the current
span, if one exists and is known.