about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--crates/ide/src/static_index.rs2
-rw-r--r--crates/rust-analyzer/src/cli/scip.rs2
2 files changed, 3 insertions, 1 deletions
diff --git a/crates/ide/src/static_index.rs b/crates/ide/src/static_index.rs
index 3724dc28221..52f1a44615f 100644
--- a/crates/ide/src/static_index.rs
+++ b/crates/ide/src/static_index.rs
@@ -46,6 +46,7 @@ pub struct TokenStaticData {
     pub definition: Option<FileRange>,
     pub references: Vec<ReferenceData>,
     pub moniker: Option<MonikerResult>,
+    pub display_name: Option<String>,
 }
 
 #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
@@ -172,6 +173,7 @@ impl StaticIndex<'_> {
                     }),
                     references: vec![],
                     moniker: current_crate.and_then(|cc| def_to_moniker(self.db, def, cc)),
+                    display_name: def.name(self.db).map(|name| name.display(self.db).to_string()),
                 });
                 self.def_map.insert(def, it);
                 it
diff --git a/crates/rust-analyzer/src/cli/scip.rs b/crates/rust-analyzer/src/cli/scip.rs
index 95c8798d43c..af2cdcb28ef 100644
--- a/crates/rust-analyzer/src/cli/scip.rs
+++ b/crates/rust-analyzer/src/cli/scip.rs
@@ -134,7 +134,7 @@ impl flags::Scip {
                             relationships: Vec::new(),
                             special_fields: Default::default(),
                             kind: Default::default(),
-                            display_name: String::new(),
+                            display_name: token.display_name.clone().unwrap_or_default(),
                             signature_documentation: Default::default(),
                             enclosing_symbol: String::new(),
                         };