mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-10-01 06:11:35 +00:00
Omit default parameters for reference types
This commit is contained in:
parent
a5407ddc05
commit
4029e44102
3 changed files with 20 additions and 3 deletions
|
@ -9,7 +9,7 @@ pub struct HirFormatter<'a, 'b, DB> {
|
||||||
fmt: &'a mut fmt::Formatter<'b>,
|
fmt: &'a mut fmt::Formatter<'b>,
|
||||||
buf: String,
|
buf: String,
|
||||||
curr_size: usize,
|
curr_size: usize,
|
||||||
max_size: Option<usize>,
|
pub(crate) max_size: Option<usize>,
|
||||||
omit_verbose_types: bool,
|
omit_verbose_types: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -855,7 +855,12 @@ impl HirDisplay for ApplicationTy {
|
||||||
}
|
}
|
||||||
TypeCtor::Ref(m) => {
|
TypeCtor::Ref(m) => {
|
||||||
let t = self.parameters.as_single();
|
let t = self.parameters.as_single();
|
||||||
write!(f, "&{}{}", m.as_keyword_for_ref(), t.display(f.db))?;
|
let ty_display = if f.omit_verbose_types() {
|
||||||
|
t.display_truncated(f.db, f.max_size)
|
||||||
|
} else {
|
||||||
|
t.display(f.db)
|
||||||
|
};
|
||||||
|
write!(f, "&{}{}", m.as_keyword_for_ref(), ty_display)?;
|
||||||
}
|
}
|
||||||
TypeCtor::Never => write!(f, "!")?,
|
TypeCtor::Never => write!(f, "!")?,
|
||||||
TypeCtor::Tuple { .. } => {
|
TypeCtor::Tuple { .. } => {
|
||||||
|
|
|
@ -245,6 +245,7 @@ struct Test<K, T = u8> {
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let zz = Test { t: 23, k: 33 };
|
let zz = Test { t: 23, k: 33 };
|
||||||
|
let zz_ref = &zz;
|
||||||
}"#,
|
}"#,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -255,6 +256,11 @@ fn main() {
|
||||||
kind: TypeHint,
|
kind: TypeHint,
|
||||||
label: "Test<i32>",
|
label: "Test<i32>",
|
||||||
},
|
},
|
||||||
|
InlayHint {
|
||||||
|
range: [105; 111),
|
||||||
|
kind: TypeHint,
|
||||||
|
label: "&Test<i32>",
|
||||||
|
},
|
||||||
]
|
]
|
||||||
"###
|
"###
|
||||||
);
|
);
|
||||||
|
@ -374,6 +380,7 @@ fn main() {
|
||||||
|
|
||||||
let multiply = |a, b, c, d| a * b * c * d;
|
let multiply = |a, b, c, d| a * b * c * d;
|
||||||
let _: i32 = multiply(1, 2, 3, 4);
|
let _: i32 = multiply(1, 2, 3, 4);
|
||||||
|
let multiply_ref = &multiply;
|
||||||
|
|
||||||
let return_42 = || 42;
|
let return_42 = || 42;
|
||||||
}"#,
|
}"#,
|
||||||
|
@ -417,7 +424,12 @@ fn main() {
|
||||||
label: "i32",
|
label: "i32",
|
||||||
},
|
},
|
||||||
InlayHint {
|
InlayHint {
|
||||||
range: [201; 210),
|
range: [200; 212),
|
||||||
|
kind: TypeHint,
|
||||||
|
label: "&|…| -> i32",
|
||||||
|
},
|
||||||
|
InlayHint {
|
||||||
|
range: [235; 244),
|
||||||
kind: TypeHint,
|
kind: TypeHint,
|
||||||
label: "|| -> i32",
|
label: "|| -> i32",
|
||||||
},
|
},
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue