diff options
author | Jeremy Kolb <[email protected]> | 2019-10-28 00:11:02 +0000 |
---|---|---|
committer | Jeremy Kolb <[email protected]> | 2019-10-28 12:32:22 +0000 |
commit | 55d4b06a53246c144be900877e6ac03237d6f8b4 (patch) | |
tree | e31953e2db157710932d3c689b6e691d92bee6da /crates/ra_ide_api/src/call_info.rs | |
parent | 5a59bc9fcbbacb3d214e5bb9490f66ccb0abf5cb (diff) |
Add disciminant
Diffstat (limited to 'crates/ra_ide_api/src/call_info.rs')
-rw-r--r-- | crates/ra_ide_api/src/call_info.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/crates/ra_ide_api/src/call_info.rs b/crates/ra_ide_api/src/call_info.rs index dfd6e69c5..29ae2f552 100644 --- a/crates/ra_ide_api/src/call_info.rs +++ b/crates/ra_ide_api/src/call_info.rs | |||
@@ -29,8 +29,7 @@ pub(crate) fn call_info(db: &RootDatabase, position: FilePosition) -> Option<Cal | |||
29 | (CallInfo::with_fn(db, it), it.data(db).has_self_param()) | 29 | (CallInfo::with_fn(db, it), it.data(db).has_self_param()) |
30 | } | 30 | } |
31 | hir::CallableDef::Struct(it) => (CallInfo::with_struct(db, it), false), | 31 | hir::CallableDef::Struct(it) => (CallInfo::with_struct(db, it), false), |
32 | //FIXME: handle other callables | 32 | hir::CallableDef::EnumVariant(_it) => return None, |
33 | _ => return None, | ||
34 | } | 33 | } |
35 | } | 34 | } |
36 | FnCallNode::MethodCallExpr(expr) => { | 35 | FnCallNode::MethodCallExpr(expr) => { |
@@ -476,14 +475,13 @@ fn main() { | |||
476 | let info = call_info( | 475 | let info = call_info( |
477 | r#" | 476 | r#" |
478 | /// A cool tuple struct | 477 | /// A cool tuple struct |
479 | struct TS(String, i32); | 478 | struct TS(u32, i32); |
480 | fn main() { | 479 | fn main() { |
481 | let s = TS("".into(), <|>); | 480 | let s = TS(0, <|>); |
482 | }"#, | 481 | }"#, |
483 | ); | 482 | ); |
484 | 483 | ||
485 | //assert_eq!(info.label(), "struct TS(String, i32)"); | 484 | assert_eq!(info.label(), "struct TS(0: u32, 1: i32) -> TS"); |
486 | assert_eq!(info.label(), "fn TS(0: {unknown}, 1: i32) -> TS"); | ||
487 | assert_eq!(info.doc().map(|it| it.into()), Some("A cool tuple struct".to_string())); | 485 | assert_eq!(info.doc().map(|it| it.into()), Some("A cool tuple struct".to_string())); |
488 | assert_eq!(info.active_parameter, Some(1)); | 486 | assert_eq!(info.active_parameter, Some(1)); |
489 | } | 487 | } |