pub fn from_root(&self) -> FromRoot<'a, R> {
        #[cfg(feature = "smallvec")]
        type SpanRefVec<'span, L> = smallvec::SmallVec<SpanRefVecArray<'span, L>>;
        #[cfg(not(feature = "smallvec"))]
        type SpanRefVec<'span, L> = Vec<SpanRef<'span, L>>;

        // an alternative way to handle this would be to the recursive approach that
        // `fmt` uses that _does not_ entail any allocation in this fmt'ing
        // spans path.
        let parents = self.parents().collect::<SpanRefVec<'a, _>>();
        let inner = parents.into_iter().rev();
        FromRoot { inner }
    }
/// Returns an iterator over all parents of this span, starting with the
/// root of the trace tree.
///
/// The iterator will return the root of the trace tree, followed by the
/// next span, and then the next, until this span's immediate parent is
/// returned.
///
/// **Note**: if the "smallvec" feature flag is not enabled, this may
/// allocate.
Returns an iterator over all parents of this span, starting with the
root of the trace tree.

The iterator will return the root of the trace tree, followed by the
next span, and then the next, until this span's immediate parent is
returned.

Note**: if the "smallvec" feature flag is not enabled, this may
allocate.
Returns an iterator over all parents of this span starting with the root of the trace tree . The iterator will return the root of the trace tree followed by the next span and then the next until this span ' s immediate parent is returned . Note ** : if the " smallvec " feature flag is not enabled this may allocate .
pub fn from_root(&self) -> FromRoot<'a, R> {
        #[cfg(feature = "smallvec")]
        type SpanRefVec<'span, L> = smallvec::SmallVec<SpanRefVecArray<'span, L>>;
        #[cfg(not(feature = "smallvec"))]
        type SpanRefVec<'span, L> = Vec<SpanRef<'span, L>>;
        // an alternative way to handle this would be to the recursive approach that
        // `fmt` uses that _does not_ entail any allocation in this fmt'ing
        // spans path.
        let parents = self.parents().collect::<SpanRefVec<'a, _>>();
        let inner = parents.into_iter().rev();
        FromRoot { inner }
    }
pub fn from_root ( & self ) -> FromRoot < ' a , R > { # [ cfg ( feature " " ) ] type SpanRefVec < ' span , L > = smallvec :: SmallVec < SpanRefVecArray < ' span , L > > ; # [ cfg ( not ( feature " " ) ) ] type SpanRefVec < ' span , L > = Vec < SpanRef < ' span , L > > ; // an alternative way to handle this would be to the recursive approach that // `fmt` uses that _does not_ entail any allocation in this fmt'ing // spans path. let parents = self . parents ( ) . collect :: < SpanRefVec < ' a , _ > > ( ) ; let inner = parents . into_iter ( ) . rev ( ) ; FromRoot { inner } }
Returns an iterator over all parents of this span, starting with the
root of the trace tree.
Returns an iterator over all parents of this span starting with the root of the trace tree .
&self
&self