mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-27 04:19:13 +00:00
Provide resolve data only when it can actually be resolved
This commit is contained in:
parent
caf018507a
commit
7b3dba5d77
13 changed files with 82 additions and 35 deletions
|
@ -153,11 +153,13 @@ pub struct InlayHint {
|
|||
pub label: InlayHintLabel,
|
||||
/// Text edit to apply when "accepting" this inlay hint.
|
||||
pub text_edit: Option<TextEdit>,
|
||||
pub needs_resolve: bool,
|
||||
}
|
||||
|
||||
impl InlayHint {
|
||||
fn closing_paren_after(kind: InlayKind, range: TextRange) -> InlayHint {
|
||||
InlayHint {
|
||||
needs_resolve: false,
|
||||
range,
|
||||
kind,
|
||||
label: InlayHintLabel::from(")"),
|
||||
|
@ -169,6 +171,7 @@ impl InlayHint {
|
|||
}
|
||||
fn opening_paren_before(kind: InlayKind, range: TextRange) -> InlayHint {
|
||||
InlayHint {
|
||||
needs_resolve: false,
|
||||
range,
|
||||
kind,
|
||||
label: InlayHintLabel::from("("),
|
||||
|
@ -226,6 +229,10 @@ impl InlayHintLabel {
|
|||
}),
|
||||
}
|
||||
}
|
||||
|
||||
pub fn needs_resolve(&self) -> bool {
|
||||
self.parts.iter().any(|part| part.linked_location.is_some() || part.tooltip.is_some())
|
||||
}
|
||||
}
|
||||
|
||||
impl From<String> for InlayHintLabel {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue