[−][src]Struct rustc_symbol_mangling::v0::BinderLevel

pub(in v0) struct BinderLevel {
    lifetime_depths: Range<u32>,
}

Fields

lifetime_depths: Range<u32>

The range of distances from the root of what's being printed, to the lifetimes in a binder. Specifically, a BrAnon(i) lifetime has depth lifetime_depths.start + i, going away from the the root and towards its use site, as i increases. This is used to flatten rustc's pairing of BrAnon (intra-binder disambiguation) with a DebruijnIndex (binder addressing), to "true" de Bruijn indices, by subtracting the depth of a certain lifetime, from the innermost depth at its use site.

Auto Trait Implementations

impl RefUnwindSafe for BinderLevel

impl Send for BinderLevel

impl Sync for BinderLevel

impl Unpin for BinderLevel

impl UnwindSafe for BinderLevel

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.