Skip to content

Commit 0575403

Browse files
committed
Add the ability to pass extra arguments using visit_list
1 parent 992ddeb commit 0575403

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

compiler/rustc_ast/src/visitors.rs

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,23 @@ macro_rules! lifetime_helpers {
199199
};
200200
}
201201

202+
macro_rules! visit_list {
203+
($visitor: expr, $visit: ident, $flat_map: ident, $list: expr $(; $($arg: expr),*)?) => {
204+
if_mut_expr!(
205+
$list.flat_map_in_place(|x| $visitor.$flat_map(x $(, $($arg),*)?))
206+
,
207+
for elem in $list {
208+
try_v!($visitor.$visit(elem $(, $($arg),*)?));
209+
}
210+
)
211+
};
212+
($visitor: expr, $visit: ident, $list: expr $(; $($arg: expr),*)?) => {
213+
for elem in $list {
214+
try_v!($visitor.$visit(elem $(, $($arg),*)?));
215+
}
216+
};
217+
}
218+
202219
macro_rules! make_ast_visitor {
203220
($trait: ident $(<$lt: lifetime>)? $(, $mut: ident)?) => {
204221

@@ -429,23 +446,6 @@ macro_rules! make_ast_visitor {
429446
}
430447
}
431448

432-
macro_rules! visit_list {
433-
($visitor: expr, $visit: ident, $flat_map: ident, $list: expr) => {
434-
if_mut_expr!(
435-
$list.flat_map_in_place(|x| $visitor.$flat_map(x))
436-
,
437-
for elem in $list {
438-
try_v!($visitor.$visit(elem));
439-
}
440-
)
441-
};
442-
($visitor: expr, $visit: ident, $list: expr) => {
443-
for elem in $list {
444-
try_v!($visitor.$visit(elem));
445-
}
446-
};
447-
}
448-
449449
// TODO: temporary name
450450
macro_rules! visit_o {
451451
($opt: expr, $fn: expr) => {

0 commit comments

Comments
 (0)