aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis/src/call_info.rs
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2019-01-08 15:27:44 +0000
committerAleksey Kladov <[email protected]>2019-01-08 15:27:44 +0000
commit256ec6e8d4ac46b2569713d2ffe92d102595f5d2 (patch)
treed28e4a31ff14549d6495f5fa307174d3884a0a08 /crates/ra_analysis/src/call_info.rs
parente6a4383bb475b866b67df6bb83ecbdf823d73667 (diff)
introduce CallInfo
Diffstat (limited to 'crates/ra_analysis/src/call_info.rs')
-rw-r--r--crates/ra_analysis/src/call_info.rs15
1 files changed, 13 insertions, 2 deletions
diff --git a/crates/ra_analysis/src/call_info.rs b/crates/ra_analysis/src/call_info.rs
index a31a54ef6..8da19a648 100644
--- a/crates/ra_analysis/src/call_info.rs
+++ b/crates/ra_analysis/src/call_info.rs
@@ -7,10 +7,21 @@ use ra_syntax::{
7use ra_editor::find_node_at_offset; 7use ra_editor::find_node_at_offset;
8use hir::FnSignatureInfo; 8use hir::FnSignatureInfo;
9 9
10use crate::{FilePosition, db::RootDatabase}; 10use crate::{FilePosition, CallInfo, db::RootDatabase};
11
12pub(crate) fn call_info(db: &RootDatabase, position: FilePosition) -> Cancelable<Option<CallInfo>> {
13 let (sig_info, active_parameter) = ctry!(call_info_(db, position)?);
14 let res = CallInfo {
15 label: sig_info.label,
16 doc: sig_info.doc,
17 parameters: sig_info.params,
18 active_parameter,
19 };
20 Ok(Some(res))
21}
11 22
12/// Computes parameter information for the given call expression. 23/// Computes parameter information for the given call expression.
13pub(crate) fn call_info( 24fn call_info_(
14 db: &RootDatabase, 25 db: &RootDatabase,
15 position: FilePosition, 26 position: FilePosition,
16) -> Cancelable<Option<(FnSignatureInfo, Option<usize>)>> { 27) -> Cancelable<Option<(FnSignatureInfo, Option<usize>)>> {