struct ExpressionStoreAdapter<'a, T>(T, ExpressionStoreOwnerId, &'a ExpressionStore);Tuple Fields§
§0: T§1: ExpressionStoreOwnerId§2: &'a ExpressionStoreImplementations§
Source§impl<'a, T> ExpressionStoreAdapter<'a, T>
impl<'a, T> ExpressionStoreAdapter<'a, T>
fn wrap( owner: ExpressionStoreOwnerId, store: &'a ExpressionStore, ) -> impl Fn(T) -> ExpressionStoreAdapter<'a, T>
Trait Implementations§
Source§impl<'db, T: HirDisplayWithExpressionStore<'db>> HirDisplay<'db> for ExpressionStoreAdapter<'_, T>
impl<'db, T: HirDisplayWithExpressionStore<'db>> HirDisplay<'db> for ExpressionStoreAdapter<'_, T>
fn hir_fmt(&self, f: &mut HirFormatter<'_, 'db>) -> Result
Source§fn into_displayable<'a>(
&'a self,
db: &'db dyn HirDatabase,
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,
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.Source§fn display<'a>(
&'a self,
db: &'db dyn HirDatabase,
display_target: DisplayTarget,
) -> HirDisplayWrapper<'a, 'db, Self>where
Self: Sized,
fn display<'a>(
&'a self,
db: &'db dyn HirDatabase,
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)Source§fn display_truncated<'a>(
&'a self,
db: &'db dyn HirDatabase,
max_size: Option<usize>,
display_target: DisplayTarget,
) -> HirDisplayWrapper<'a, 'db, Self>where
Self: Sized,
fn display_truncated<'a>(
&'a self,
db: &'db dyn HirDatabase,
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)Source§fn display_limited<'a>(
&'a self,
db: &'db dyn HirDatabase,
limited_size: Option<usize>,
display_target: DisplayTarget,
) -> HirDisplayWrapper<'a, 'db, Self>where
Self: Sized,
fn display_limited<'a>(
&'a self,
db: &'db dyn HirDatabase,
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, enumSource§fn display_source_code<'a>(
&'a self,
db: &'db dyn HirDatabase,
module_id: ModuleId,
allow_opaque: bool,
) -> Result<String, DisplaySourceCodeError>
fn display_source_code<'a>( &'a self, db: &'db 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: &'db dyn HirDatabase,
display_target: DisplayTarget,
) -> HirDisplayWrapper<'a, 'db, Self>where
Self: Sized,
fn display_test<'a>(
&'a self,
db: &'db dyn HirDatabase,
display_target: DisplayTarget,
) -> HirDisplayWrapper<'a, 'db, Self>where
Self: Sized,
Returns a String representation of
self for test purposesSource§fn display_with_container_bounds<'a>(
&'a self,
db: &'db dyn HirDatabase,
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,
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 functionsAuto Trait Implementations§
impl<'a, T> Freeze for ExpressionStoreAdapter<'a, T>where
T: Freeze,
impl<'a, T> !RefUnwindSafe for ExpressionStoreAdapter<'a, T>
impl<'a, T> Send for ExpressionStoreAdapter<'a, T>where
T: Send,
impl<'a, T> Sync for ExpressionStoreAdapter<'a, T>where
T: Sync,
impl<'a, T> Unpin for ExpressionStoreAdapter<'a, T>where
T: Unpin,
impl<'a, T> UnsafeUnpin for ExpressionStoreAdapter<'a, T>where
T: UnsafeUnpin,
impl<'a, T> !UnwindSafe for ExpressionStoreAdapter<'a, T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more