Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/display.rs')
| -rw-r--r-- | crates/hir-ty/src/display.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/crates/hir-ty/src/display.rs b/crates/hir-ty/src/display.rs index 5d0a010a7f..d8e7d6379d 100644 --- a/crates/hir-ty/src/display.rs +++ b/crates/hir-ty/src/display.rs @@ -130,6 +130,7 @@ pub struct HirFormatter<'a, 'db> { pub entity_limit: Option<usize>, /// When rendering functions, whether to show the constraint from the container show_container_bounds: bool, + render_private_fields: bool, omit_verbose_types: bool, closure_style: ClosureStyle, display_lifetimes: DisplayLifetime, @@ -263,6 +264,7 @@ pub trait HirDisplay<'db> { display_kind, closure_style, show_container_bounds, + render_private_fields: true, display_lifetimes: DisplayLifetime::OnlyNamedOrStatic, } } @@ -287,6 +289,7 @@ pub trait HirDisplay<'db> { display_target, display_kind: DisplayKind::Diagnostics, show_container_bounds: false, + render_private_fields: true, display_lifetimes: DisplayLifetime::OnlyNamedOrStatic, } } @@ -312,6 +315,7 @@ pub trait HirDisplay<'db> { display_target, display_kind: DisplayKind::Diagnostics, show_container_bounds: false, + render_private_fields: true, display_lifetimes: DisplayLifetime::OnlyNamedOrStatic, } } @@ -337,6 +341,7 @@ pub trait HirDisplay<'db> { display_target, display_kind: DisplayKind::Diagnostics, show_container_bounds: false, + render_private_fields: true, display_lifetimes: DisplayLifetime::OnlyNamedOrStatic, } } @@ -364,6 +369,7 @@ pub trait HirDisplay<'db> { display_target: DisplayTarget::from_crate(db, module_id.krate(db)), display_kind: DisplayKind::SourceCode { target_module_id: module_id, allow_opaque }, show_container_bounds: false, + render_private_fields: true, display_lifetimes: DisplayLifetime::OnlyNamedOrStatic, currently_formatting_bounds: Default::default(), trait_bounds_need_parens: false, @@ -394,6 +400,7 @@ pub trait HirDisplay<'db> { display_target, display_kind: DisplayKind::Test, show_container_bounds: false, + render_private_fields: true, display_lifetimes: DisplayLifetime::Always, } } @@ -419,6 +426,7 @@ pub trait HirDisplay<'db> { display_target, display_kind: DisplayKind::Diagnostics, show_container_bounds, + render_private_fields: true, display_lifetimes: DisplayLifetime::OnlyNamedOrStatic, } } @@ -495,6 +503,10 @@ impl<'db> HirFormatter<'_, 'db> { pub fn show_container_bounds(&self) -> bool { self.show_container_bounds } + + pub fn render_private_fields(&self) -> bool { + self.render_private_fields + } } #[derive(Debug, Clone, Copy)] @@ -566,6 +578,7 @@ pub struct HirDisplayWrapper<'a, 'db, T> { display_kind: DisplayKind, display_target: DisplayTarget, show_container_bounds: bool, + render_private_fields: bool, display_lifetimes: DisplayLifetime, } @@ -601,6 +614,7 @@ impl<'db, T: HirDisplay<'db>> HirDisplayWrapper<'_, 'db, T> { display_target: self.display_target, closure_style: self.closure_style, show_container_bounds: self.show_container_bounds, + render_private_fields: self.render_private_fields, display_lifetimes: self.display_lifetimes, currently_formatting_bounds: Default::default(), trait_bounds_need_parens: false, @@ -616,6 +630,11 @@ impl<'db, T: HirDisplay<'db>> HirDisplayWrapper<'_, 'db, T> { self.display_lifetimes = l; self } + + pub fn with_private_fields(mut self, render: bool) -> Self { + self.render_private_fields = render; + self + } } impl<'db, T> fmt::Display for HirDisplayWrapper<'_, 'db, T> |