mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-27 21:43:37 +00:00
Add Expader::to_source
This commit is contained in:
parent
e7e85c60d2
commit
c89010df2d
2 changed files with 8 additions and 10 deletions
|
@ -34,6 +34,10 @@ impl Expander {
|
|||
self.original_file_id != self.current_file_id
|
||||
}
|
||||
|
||||
fn to_source<T>(&self, ast: T) -> Source<T> {
|
||||
Source { file_id: self.current_file_id, ast }
|
||||
}
|
||||
|
||||
fn resolve_path_as_macro(&self, db: &impl DefDatabase2, path: &Path) -> Option<MacroDefId> {
|
||||
self.crate_def_map.resolve_path(db, self.module.module_id, path).0.get_macros()
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ use hir_expand::{
|
|||
either::Either,
|
||||
hygiene::Hygiene,
|
||||
name::{self, AsName, Name},
|
||||
AstId, MacroCallLoc, MacroFileKind, Source,
|
||||
AstId, MacroCallLoc, MacroFileKind,
|
||||
};
|
||||
use ra_arena::Arena;
|
||||
use ra_syntax::{
|
||||
|
@ -99,9 +99,7 @@ where
|
|||
if !self.expander.is_in_expansion() {
|
||||
self.source_map.expr_map.insert(ptr, id);
|
||||
}
|
||||
self.source_map
|
||||
.expr_map_back
|
||||
.insert(id, Source { file_id: self.expander.current_file_id, ast: ptr });
|
||||
self.source_map.expr_map_back.insert(id, self.expander.to_source(ptr));
|
||||
id
|
||||
}
|
||||
// desugared exprs don't have ptr, that's wrong and should be fixed
|
||||
|
@ -115,9 +113,7 @@ where
|
|||
if !self.expander.is_in_expansion() {
|
||||
self.source_map.expr_map.insert(ptr, id);
|
||||
}
|
||||
self.source_map
|
||||
.expr_map_back
|
||||
.insert(id, Source { file_id: self.expander.current_file_id, ast: ptr });
|
||||
self.source_map.expr_map_back.insert(id, self.expander.to_source(ptr));
|
||||
id
|
||||
}
|
||||
fn alloc_pat(&mut self, pat: Pat, ptr: PatPtr) -> PatId {
|
||||
|
@ -125,9 +121,7 @@ where
|
|||
if !self.expander.is_in_expansion() {
|
||||
self.source_map.pat_map.insert(ptr, id);
|
||||
}
|
||||
self.source_map
|
||||
.pat_map_back
|
||||
.insert(id, Source { file_id: self.expander.current_file_id, ast: ptr });
|
||||
self.source_map.pat_map_back.insert(id, self.expander.to_source(ptr));
|
||||
id
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue