aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis/src/lib.rs
diff options
context:
space:
mode:
authorJeremy A. Kolb <[email protected]>2018-10-09 15:08:17 +0100
committerJeremy A. Kolb <[email protected]>2018-10-11 21:40:46 +0100
commitf8a2b533045757c42c206b2596448baf4737f1f0 (patch)
tree587e681ec5323d8deabcc6d533de033e7aa79be7 /crates/ra_analysis/src/lib.rs
parent2ba6f18586d02a6dbc32e0bea88f7b4236277ea1 (diff)
Language Server: textDocument/signatureHelp
Implements a pretty barebones function signature help mechanism in the language server. Users can use `Analysis::resolve_callback()` to get basic information about a call site. Fixes #102
Diffstat (limited to 'crates/ra_analysis/src/lib.rs')
-rw-r--r--crates/ra_analysis/src/lib.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/crates/ra_analysis/src/lib.rs b/crates/ra_analysis/src/lib.rs
index 849fd93e4..1aca72ae0 100644
--- a/crates/ra_analysis/src/lib.rs
+++ b/crates/ra_analysis/src/lib.rs
@@ -38,6 +38,7 @@ pub use ra_editor::{
38 Fold, FoldKind 38 Fold, FoldKind
39}; 39};
40pub use job::{JobToken, JobHandle}; 40pub use job::{JobToken, JobHandle};
41pub use descriptors::FnDescriptor;
41 42
42#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] 43#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
43pub struct FileId(pub u32); 44pub struct FileId(pub u32);
@@ -236,6 +237,11 @@ impl Analysis {
236 let file = self.imp.file_syntax(file_id); 237 let file = self.imp.file_syntax(file_id);
237 ra_editor::folding_ranges(&file) 238 ra_editor::folding_ranges(&file)
238 } 239 }
240
241 pub fn resolve_callable(&self, file_id: FileId, offset: TextUnit, token: &JobToken)
242 -> Option<(FnDescriptor, Option<usize>)> {
243 self.imp.resolve_callable(file_id, offset, token)
244 }
239} 245}
240 246
241#[derive(Debug)] 247#[derive(Debug)]