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,
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,
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,
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,
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>
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,
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,
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