]> git.lizzy.rs Git - rust.git/commitdiff
Improve inlay hint padding
authorLaurențiu Nicola <lnicola@dend.ro>
Mon, 7 Mar 2022 17:18:36 +0000 (19:18 +0200)
committerLaurențiu Nicola <lnicola@dend.ro>
Mon, 7 Mar 2022 17:18:36 +0000 (19:18 +0200)
crates/rust-analyzer/src/to_proto.rs

index 3ba097dc7ffe4e9ab84af7979f14700710a12e42..f25b2c8c69d7727df0e49dc9ddf53cfeaa0111a6 100644 (file)
@@ -418,7 +418,9 @@ pub(crate) fn inlay_hint(line_index: &LineIndex, inlay_hint: InlayHint) -> lsp_e
         label: inlay_hint.label.to_string(),
         position: match inlay_hint.kind {
             InlayKind::ParameterHint => position(line_index, inlay_hint.range.start()),
-            _ => position(line_index, inlay_hint.range.end()),
+            InlayKind::TypeHint | InlayKind::ChainingHint => {
+                position(line_index, inlay_hint.range.end())
+            }
         },
         kind: match inlay_hint.kind {
             InlayKind::ParameterHint => Some(lsp_ext::InlayHintKind::PARAMETER),
@@ -426,8 +428,16 @@ pub(crate) fn inlay_hint(line_index: &LineIndex, inlay_hint: InlayHint) -> lsp_e
             InlayKind::ChainingHint => None,
         },
         tooltip: None,
-        padding_left: Some(true),
-        padding_right: Some(true),
+        padding_left: Some(match inlay_hint.kind {
+            InlayKind::TypeHint => true,
+            InlayKind::ParameterHint => false,
+            InlayKind::ChainingHint => true,
+        }),
+        padding_right: Some(match inlay_hint.kind {
+            InlayKind::TypeHint => false,
+            InlayKind::ParameterHint => true,
+            InlayKind::ChainingHint => false,
+        }),
     }
 }