HirDisplay

Trait HirDisplay 

pub trait HirDisplay<'db> {
    // Required method
    fn hir_fmt(
        &self,
        f: &mut HirFormatter<'_, 'db>,
    ) -> Result<(), HirDisplayError>;

    // Provided methods
    fn into_displayable<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        max_size: Option<usize>,
        limited_size: Option<usize>,
        omit_verbose_types: bool,
        display_target: DisplayTarget,
        display_kind: DisplayKind,
        closure_style: ClosureStyle,
        show_container_bounds: bool,
    ) -> HirDisplayWrapper<'a, 'db, Self>
       where Self: Sized { ... }
    fn display<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        display_target: DisplayTarget,
    ) -> HirDisplayWrapper<'a, 'db, Self>
       where Self: Sized { ... }
    fn display_truncated<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        max_size: Option<usize>,
        display_target: DisplayTarget,
    ) -> HirDisplayWrapper<'a, 'db, Self>
       where Self: Sized { ... }
    fn display_limited<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        limited_size: Option<usize>,
        display_target: DisplayTarget,
    ) -> HirDisplayWrapper<'a, 'db, Self>
       where Self: Sized { ... }
    fn display_source_code<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        module_id: ModuleIdLt<'static>,
        allow_opaque: bool,
    ) -> Result<String, DisplaySourceCodeError> { ... }
    fn display_test<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        display_target: DisplayTarget,
    ) -> HirDisplayWrapper<'a, 'db, Self>
       where Self: Sized { ... }
    fn display_with_container_bounds<'a>(
        &'a self,
        db: &'db (dyn HirDatabase + 'static),
        show_container_bounds: bool,
        display_target: DisplayTarget,
    ) -> HirDisplayWrapper<'a, 'db, Self>
       where Self: Sized { ... }
}

Required Methods§

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

Provided Methods§

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

Returns a Displayable type that is human-readable.

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

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

fn display_truncated<'a>( &'a self, db: &'db (dyn HirDatabase + 'static), max_size: Option<usize>, display_target: DisplayTarget, ) -> HirDisplayWrapper<'a, 'db, 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)

fn display_limited<'a>( &'a self, db: &'db (dyn HirDatabase + 'static), limited_size: Option<usize>, display_target: DisplayTarget, ) -> HirDisplayWrapper<'a, 'db, 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

fn display_source_code<'a>( &'a self, db: &'db (dyn HirDatabase + 'static), module_id: ModuleIdLt<'static>, 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)

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

Returns a String representation of self for test purposes

fn display_with_container_bounds<'a>( &'a self, db: &'db (dyn HirDatabase + 'static), show_container_bounds: bool, display_target: DisplayTarget, ) -> HirDisplayWrapper<'a, 'db, Self>
where Self: Sized,

Returns a String representation of self that shows the constraint from the container for functions

Implementations on Foreign Types§

§

impl<'db> HirDisplay<'db> for Binder<DbInterner<'db>, FnSig<DbInterner<'db>>>

§

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

§

impl<'db> HirDisplay<'db> for TraitRef<DbInterner<'db>>

§

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

§

impl<'db, T> HirDisplay<'db> for &T
where T: HirDisplay<'db>,

§

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

§

impl<'db, T> HirDisplay<'db> for Interned<T>
where T: HirDisplay<'db> + Internable,

§

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

Implementors§

Source§

impl<'db> HirDisplay<'db> for Adt

Source§

impl<'db> HirDisplay<'db> for GenericParam

§

impl<'db> HirDisplay<'db> for GenericArg<'db>

§

impl<'db> HirDisplay<'db> for Term<'db>

§

impl<'db> HirDisplay<'db> for hir::next_solver::Const<'db>

§

impl<'db> HirDisplay<'db> for Region<'db>

§

impl<'db> HirDisplay<'db> for Ty<'db>

Source§

impl<'db> HirDisplay<'db> for hir::Const

Source§

impl<'db> HirDisplay<'db> for ConstParam

Source§

impl<'db> HirDisplay<'db> for Crate

Source§

impl<'db> HirDisplay<'db> for Enum

Source§

impl<'db> HirDisplay<'db> for ExternCrateDecl

Source§

impl<'db> HirDisplay<'db> for Field

Source§

impl<'db> HirDisplay<'db> for Function

Source§

impl<'db> HirDisplay<'db> for LifetimeParam

Source§

impl<'db> HirDisplay<'db> for Macro

Source§

impl<'db> HirDisplay<'db> for Module

Source§

impl<'db> HirDisplay<'db> for SelfParam

Source§

impl<'db> HirDisplay<'db> for Static

Source§

impl<'db> HirDisplay<'db> for Struct

Source§

impl<'db> HirDisplay<'db> for Trait

Source§

impl<'db> HirDisplay<'db> for hir::TraitRef<'db>

Source§

impl<'db> HirDisplay<'db> for TupleField

Source§

impl<'db> HirDisplay<'db> for Type<'db>

Source§

impl<'db> HirDisplay<'db> for TypeAlias

Source§

impl<'db> HirDisplay<'db> for TypeNs<'db>

Source§

impl<'db> HirDisplay<'db> for TypeOrConstParam

Source§

impl<'db> HirDisplay<'db> for TypeParam

Source§

impl<'db> HirDisplay<'db> for Union

Source§

impl<'db> HirDisplay<'db> for Variant