Type Alias ra_ap_hir_ty::LifetimeData

source ·
pub type LifetimeData = LifetimeData<Interner>;

Aliased Type§

enum LifetimeData {
    BoundVar(BoundVar),
    InferenceVar(InferenceVar),
    Placeholder(PlaceholderIndex),
    Static,
    Erased,
    Phantom(Void, PhantomData<Interner>),
    Error,
}

Variants§

§

BoundVar(BoundVar)

See TyKind::BoundVar.

§

InferenceVar(InferenceVar)

Lifetime whose value is being inferred.

§

Placeholder(PlaceholderIndex)

Lifetime on some yet-unknown placeholder.

§

Static

Static lifetime

§

Erased

An erased lifetime, used by rustc to improve caching when we doesn’t care about lifetimes

§

Phantom(Void, PhantomData<Interner>)

Lifetime on phantom data.

§

Error

A lifetime that resulted from some error

Trait Implementations§

source§

impl HirDisplay for LifetimeData

source§

fn hir_fmt(&self, f: &mut HirFormatter<'_>) -> Result<(), HirDisplayError>

source§

fn into_displayable<'a>( &'a self, db: &'a dyn HirDatabase, max_size: Option<usize>, limited_size: Option<usize>, omit_verbose_types: bool, display_target: DisplayTarget, closure_style: ClosureStyle ) -> HirDisplayWrapper<'a, Self>
where Self: Sized,

Returns a Displayable type that is human-readable.
source§

fn display<'a>(&'a self, db: &'a dyn HirDatabase) -> HirDisplayWrapper<'a, Self>
where Self: Sized,

Returns a Displayable type that is human-readable. Use this for showing types to the user (e.g. diagnostics)
source§

fn display_truncated<'a>( &'a self, db: &'a dyn HirDatabase, max_size: Option<usize> ) -> HirDisplayWrapper<'a, Self>
where Self: Sized,

Returns a Displayable type that is human-readable and tries to be succinct. Use this for showing types to the user where space is constrained (e.g. doc popups)
source§

fn display_limited<'a>( &'a self, db: &'a dyn HirDatabase, limited_size: Option<usize> ) -> HirDisplayWrapper<'a, Self>
where Self: Sized,

Returns a Displayable type that is human-readable and tries to limit the number of items inside. Use this for showing definitions which may contain too many items, like trait, struct, enum
source§

fn display_source_code<'a>( &'a self, db: &'a dyn HirDatabase, module_id: ModuleId, allow_opaque: bool ) -> Result<String, DisplaySourceCodeError>

Returns a String representation of self that can be inserted into the given module. Use this when generating code (e.g. assists)
source§

fn display_test<'a>( &'a self, db: &'a dyn HirDatabase ) -> HirDisplayWrapper<'a, Self>
where Self: Sized,

Returns a String representation of self for test purposes