@@ -5,21 +5,18 @@ mod lower;
5
5
mod tests;
6
6
pub mod scope;
7
7
8
- use std:: { mem , ops:: Index , sync:: Arc } ;
8
+ use std:: { ops:: Index , sync:: Arc } ;
9
9
10
10
use base_db:: CrateId ;
11
11
use cfg:: { CfgExpr , CfgOptions } ;
12
12
use drop_bomb:: DropBomb ;
13
13
use either:: Either ;
14
- use hir_expand:: {
15
- ast_id_map:: AstIdMap , hygiene:: Hygiene , AstId , ExpandError , ExpandResult , HirFileId , InFile ,
16
- MacroCallId ,
17
- } ;
14
+ use hir_expand:: { hygiene:: Hygiene , ExpandError , ExpandResult , HirFileId , InFile , MacroCallId } ;
18
15
use la_arena:: { Arena , ArenaMap } ;
19
16
use limit:: Limit ;
20
17
use profile:: Count ;
21
18
use rustc_hash:: FxHashMap ;
22
- use syntax:: { ast, AstNode , AstPtr , SyntaxNodePtr } ;
19
+ use syntax:: { ast, AstPtr , SyntaxNodePtr } ;
23
20
24
21
use crate :: {
25
22
attr:: { Attrs , RawAttrs } ,
@@ -50,7 +47,6 @@ pub struct Expander {
50
47
cfg_expander : CfgExpander ,
51
48
def_map : Arc < DefMap > ,
52
49
current_file_id : HirFileId ,
53
- ast_id_map : Option < Arc < AstIdMap > > ,
54
50
module : LocalModuleId ,
55
51
recursion_limit : usize ,
56
52
}
@@ -84,7 +80,6 @@ impl Expander {
84
80
cfg_expander,
85
81
def_map,
86
82
current_file_id,
87
- ast_id_map : None ,
88
83
module : module. local_id ,
89
84
recursion_limit : 0 ,
90
85
}
@@ -167,22 +162,17 @@ impl Expander {
167
162
tracing:: debug!( "macro expansion {:#?}" , node. syntax( ) ) ;
168
163
169
164
self . recursion_limit += 1 ;
170
- let mark = Mark {
171
- file_id : self . current_file_id ,
172
- ast_id_map : mem:: take ( & mut self . ast_id_map ) ,
173
- bomb : DropBomb :: new ( "expansion mark dropped" ) ,
174
- } ;
165
+ let mark =
166
+ Mark { file_id : self . current_file_id , bomb : DropBomb :: new ( "expansion mark dropped" ) } ;
175
167
self . cfg_expander . hygiene = Hygiene :: new ( db. upcast ( ) , file_id) ;
176
168
self . current_file_id = file_id;
177
- self . ast_id_map = None ;
178
169
179
170
ExpandResult { value : Some ( ( mark, node) ) , err }
180
171
}
181
172
182
173
pub fn exit ( & mut self , db : & dyn DefDatabase , mut mark : Mark ) {
183
174
self . cfg_expander . hygiene = Hygiene :: new ( db. upcast ( ) , mark. file_id ) ;
184
175
self . current_file_id = mark. file_id ;
185
- self . ast_id_map = mem:: take ( & mut mark. ast_id_map ) ;
186
176
self . recursion_limit -= 1 ;
187
177
mark. bomb . defuse ( ) ;
188
178
}
@@ -212,12 +202,6 @@ impl Expander {
212
202
self . def_map . resolve_path ( db, self . module , path, BuiltinShadowMode :: Other ) . 0 . take_macros ( )
213
203
}
214
204
215
- fn ast_id < N : AstNode > ( & mut self , db : & dyn DefDatabase , item : & N ) -> AstId < N > {
216
- let file_local_id =
217
- self . ast_id_map . get_or_insert_with ( || db. ast_id_map ( self . current_file_id ) ) . ast_id ( item) ;
218
- AstId :: new ( self . current_file_id , file_local_id)
219
- }
220
-
221
205
fn recursion_limit ( & self , db : & dyn DefDatabase ) -> Limit {
222
206
let limit = db. crate_limits ( self . cfg_expander . krate ) . recursion_limit as _ ;
223
207
@@ -233,7 +217,6 @@ impl Expander {
233
217
#[ derive( Debug ) ]
234
218
pub struct Mark {
235
219
file_id : HirFileId ,
236
- ast_id_map : Option < Arc < AstIdMap > > ,
237
220
bomb : DropBomb ,
238
221
}
239
222
0 commit comments