aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2019-12-05 22:34:12 +0000
committerAleksey Kladov <[email protected]>2019-12-06 20:28:05 +0000
commit8c86963d47953045f2f33ee6620d305a6589641e (patch)
treeaf9280c6e156280198117a4d1af0d555cd7b1a53 /crates/ra_hir_ty/src
parentd2b210a02e3e8ee1cf38909411fa8945aec99f4e (diff)
DynMap
This might, or might not help us to reduce boilerplate associated with plumbing values from analysis to the IDE layer
Diffstat (limited to 'crates/ra_hir_ty/src')
-rw-r--r--crates/ra_hir_ty/src/tests.rs8
1 files changed, 5 insertions, 3 deletions
diff --git a/crates/ra_hir_ty/src/tests.rs b/crates/ra_hir_ty/src/tests.rs
index 9f373a8f4..6920ac747 100644
--- a/crates/ra_hir_ty/src/tests.rs
+++ b/crates/ra_hir_ty/src/tests.rs
@@ -11,8 +11,8 @@ use std::fmt::Write;
11use std::sync::Arc; 11use std::sync::Arc;
12 12
13use hir_def::{ 13use hir_def::{
14 body::BodySourceMap, child_from_source::ChildFromSource, db::DefDatabase, nameres::CrateDefMap, 14 body::BodySourceMap, child_by_source::ChildBySource, db::DefDatabase, keys,
15 AssocItemId, DefWithBodyId, LocalModuleId, Lookup, ModuleDefId, 15 nameres::CrateDefMap, AssocItemId, DefWithBodyId, LocalModuleId, Lookup, ModuleDefId,
16}; 16};
17use hir_expand::InFile; 17use hir_expand::InFile;
18use insta::assert_snapshot; 18use insta::assert_snapshot;
@@ -33,7 +33,9 @@ fn type_at_pos(db: &TestDB, pos: FilePosition) -> String {
33 let expr = algo::find_node_at_offset::<ast::Expr>(file.syntax(), pos.offset).unwrap(); 33 let expr = algo::find_node_at_offset::<ast::Expr>(file.syntax(), pos.offset).unwrap();
34 let fn_def = expr.syntax().ancestors().find_map(ast::FnDef::cast).unwrap(); 34 let fn_def = expr.syntax().ancestors().find_map(ast::FnDef::cast).unwrap();
35 let module = db.module_for_file(pos.file_id); 35 let module = db.module_for_file(pos.file_id);
36 let func = module.child_from_source(db, InFile::new(pos.file_id.into(), fn_def)).unwrap(); 36 let func = *module.child_by_source(db)[keys::FUNCTION]
37 .get(&InFile::new(pos.file_id.into(), fn_def))
38 .unwrap();
37 39
38 let (_body, source_map) = db.body_with_source_map(func.into()); 40 let (_body, source_map) = db.body_with_source_map(func.into());
39 if let Some(expr_id) = source_map.node_expr(InFile::new(pos.file_id.into(), &expr)) { 41 if let Some(expr_id) = source_map.node_expr(InFile::new(pos.file_id.into(), &expr)) {