mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-30 05:45:12 +00:00
update ide_api to new hir
This commit is contained in:
parent
1754dd9fdd
commit
2734636c53
5 changed files with 14 additions and 10 deletions
|
@ -96,6 +96,11 @@ impl NavigationTarget {
|
|||
NavigationTarget::from_module(db, module)
|
||||
}
|
||||
|
||||
pub(crate) fn from_function(db: &RootDatabase, func: hir::Function) -> NavigationTarget {
|
||||
let (file_id, fn_def) = func.source(db);
|
||||
NavigationTarget::from_named(file_id.original_file(db), &*fn_def)
|
||||
}
|
||||
|
||||
// TODO once Def::Item is gone, this should be able to always return a NavigationTarget
|
||||
pub(crate) fn from_def(
|
||||
db: &RootDatabase,
|
||||
|
@ -106,6 +111,9 @@ impl NavigationTarget {
|
|||
hir::ModuleDef::Module(module) => {
|
||||
return Some(NavigationTarget::from_module(db, module));
|
||||
}
|
||||
hir::ModuleDef::Function(func) => {
|
||||
return Some(NavigationTarget::from_function(db, func));
|
||||
}
|
||||
};
|
||||
|
||||
let res = match def {
|
||||
|
@ -121,10 +129,6 @@ impl NavigationTarget {
|
|||
let (file_id, node) = ev.source(db);
|
||||
NavigationTarget::from_named(file_id.original_file(db), &*node)
|
||||
}
|
||||
Def::Function(f) => {
|
||||
let (file_id, node) = f.source(db);
|
||||
NavigationTarget::from_named(file_id.original_file(db), &*node)
|
||||
}
|
||||
Def::Trait(f) => {
|
||||
let (file_id, node) = f.source(db);
|
||||
NavigationTarget::from_named(file_id.original_file(db), &*node)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue