Skip to content

Commit cb2ae24

Browse files
committed
Rename all flat_map methods to visit methods for consistency with immutable visiting
1 parent d3efb86 commit cb2ae24

File tree

5 files changed

+110
-116
lines changed

5 files changed

+110
-116
lines changed

compiler/rustc_ast/src/mut_visit.rs

+36-36
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ pub trait MutVisitor: Sized {
5555
// Methods in this trait have one of three forms:
5656
//
5757
// fn visit_t(&mut self, t: &mut T); // common
58-
// fn flat_map_t(&mut self, t: T) -> SmallVec<[T; 1]>; // rare
58+
// fn visit_t(&mut self, t: T) -> SmallVec<[T; 1]>; // rare
5959
// fn filter_map_t(&mut self, t: T) -> Option<T>; // rarest
6060
//
6161
// Any additions to this trait should happen in form of a call to a public
@@ -101,23 +101,23 @@ pub trait MutVisitor: Sized {
101101
walk_use_tree(self, use_tree);
102102
}
103103

104-
fn flat_map_foreign_item(&mut self, ni: P<ForeignItem>) -> SmallVec<[P<ForeignItem>; 1]> {
104+
fn visit_foreign_item(&mut self, ni: P<ForeignItem>) -> SmallVec<[P<ForeignItem>; 1]> {
105105
walk_item(self, ni, None)
106106
}
107107

108-
fn flat_map_item(&mut self, i: P<Item>) -> SmallVec<[P<Item>; 1]> {
108+
fn visit_item(&mut self, i: P<Item>) -> SmallVec<[P<Item>; 1]> {
109109
walk_item(self, i, None)
110110
}
111111

112112
fn visit_fn_header(&mut self, header: &mut FnHeader) {
113113
walk_fn_header(self, header);
114114
}
115115

116-
fn flat_map_field_def(&mut self, fd: FieldDef) -> SmallVec<[FieldDef; 1]> {
116+
fn visit_field_def(&mut self, fd: FieldDef) -> SmallVec<[FieldDef; 1]> {
117117
walk_field_def(self, fd)
118118
}
119119

120-
fn flat_map_assoc_item(
120+
fn visit_assoc_item(
121121
&mut self,
122122
i: P<AssocItem>,
123123
ctxt: AssocCtxt,
@@ -146,11 +146,11 @@ pub trait MutVisitor: Sized {
146146
walk_block(self, b);
147147
}
148148

149-
fn flat_map_stmt(&mut self, s: Stmt) -> SmallVec<[Stmt; 1]> {
149+
fn visit_stmt(&mut self, s: Stmt) -> SmallVec<[Stmt; 1]> {
150150
walk_stmt(self, s)
151151
}
152152

153-
fn flat_map_arm(&mut self, arm: Arm) -> SmallVec<[Arm; 1]> {
153+
fn visit_arm(&mut self, arm: Arm) -> SmallVec<[Arm; 1]> {
154154
walk_arm(self, arm)
155155
}
156156

@@ -196,7 +196,7 @@ pub trait MutVisitor: Sized {
196196
walk_foreign_mod(self, nm);
197197
}
198198

199-
fn flat_map_variant(&mut self, v: Variant) -> SmallVec<[Variant; 1]> {
199+
fn visit_variant(&mut self, v: Variant) -> SmallVec<[Variant; 1]> {
200200
walk_variant(self, v)
201201
}
202202

@@ -208,7 +208,7 @@ pub trait MutVisitor: Sized {
208208
walk_path(self, p);
209209
}
210210

211-
fn flat_map_path_segment(&mut self, p: PathSegment) -> SmallVec<[PathSegment; 1]> {
211+
fn visit_path_segment(&mut self, p: PathSegment) -> SmallVec<[PathSegment; 1]> {
212212
walk_path_segment(p, self)
213213
}
214214

@@ -248,7 +248,7 @@ pub trait MutVisitor: Sized {
248248
walk_attribute(self, at);
249249
}
250250

251-
fn flat_map_param(&mut self, param: Param) -> SmallVec<[Param; 1]> {
251+
fn visit_param(&mut self, param: Param) -> SmallVec<[Param; 1]> {
252252
walk_param(self, param)
253253
}
254254

@@ -268,7 +268,7 @@ pub trait MutVisitor: Sized {
268268
walk_variant_data(self, vdata);
269269
}
270270

271-
fn flat_map_generic_param(&mut self, param: GenericParam) -> SmallVec<[GenericParam; 1]> {
271+
fn visit_generic_param(&mut self, param: GenericParam) -> SmallVec<[GenericParam; 1]> {
272272
walk_generic_param(self, param)
273273
}
274274

@@ -284,7 +284,7 @@ pub trait MutVisitor: Sized {
284284
walk_mt(self, mt);
285285
}
286286

287-
fn flat_map_expr_field(&mut self, f: ExprField) -> SmallVec<[ExprField; 1]> {
287+
fn visit_expr_field(&mut self, f: ExprField) -> SmallVec<[ExprField; 1]> {
288288
walk_expr_field(self, f)
289289
}
290290

@@ -308,7 +308,7 @@ pub trait MutVisitor: Sized {
308308
// Do nothing.
309309
}
310310

311-
fn flat_map_pat_field(&mut self, fp: PatField) -> SmallVec<[PatField; 1]> {
311+
fn visit_pat_field(&mut self, fp: PatField) -> SmallVec<[PatField; 1]> {
312312
walk_pat_field(self, fp)
313313
}
314314

@@ -506,7 +506,7 @@ pub fn walk_ty<T: MutVisitor>(vis: &mut T, ty: &mut P<Ty>) {
506506
TyKind::BareFn(bft) => {
507507
let BareFnTy { safety, ext: _, generic_params, decl, decl_span } = bft.deref_mut();
508508
visit_safety(vis, safety);
509-
generic_params.flat_map_in_place(|param| vis.flat_map_generic_param(param));
509+
generic_params.flat_map_in_place(|param| vis.visit_generic_param(param));
510510
vis.visit_fn_decl(decl);
511511
vis.visit_span(decl_span);
512512
}
@@ -535,7 +535,7 @@ pub fn walk_ty<T: MutVisitor>(vis: &mut T, ty: &mut P<Ty>) {
535535
TyKind::MacCall(mac) => vis.visit_mac_call(mac),
536536
TyKind::AnonStruct(id, fields) | TyKind::AnonUnion(id, fields) => {
537537
vis.visit_id(id);
538-
fields.flat_map_in_place(|field| vis.flat_map_field_def(field));
538+
fields.flat_map_in_place(|field| vis.visit_field_def(field));
539539
}
540540
}
541541
visit_lazy_tts(vis, tokens);
@@ -545,7 +545,7 @@ pub fn walk_ty<T: MutVisitor>(vis: &mut T, ty: &mut P<Ty>) {
545545
fn walk_foreign_mod<T: MutVisitor>(vis: &mut T, foreign_mod: &mut ForeignMod) {
546546
let ForeignMod { safety, abi: _, items } = foreign_mod;
547547
visit_safety(vis, safety);
548-
items.flat_map_in_place(|item| vis.flat_map_foreign_item(item));
548+
items.flat_map_in_place(|item| vis.visit_foreign_item(item));
549549
}
550550

551551
pub fn walk_variant<T: MutVisitor>(
@@ -579,7 +579,7 @@ fn walk_path_segment<T: MutVisitor>(
579579
}
580580

581581
fn walk_path<T: MutVisitor>(vis: &mut T, Path { segments, span, tokens }: &mut Path) {
582-
segments.flat_map_in_place(|segment| vis.flat_map_path_segment(segment));
582+
segments.flat_map_in_place(|segment| vis.visit_path_segment(segment));
583583
visit_lazy_tts(vis, tokens);
584584
vis.visit_span(span);
585585
}
@@ -820,13 +820,13 @@ fn visit_nonterminal<T: MutVisitor>(vis: &mut T, nt: &mut token::Nonterminal) {
820820
// This is probably okay, because the only visitors likely to
821821
// peek inside interpolated nodes will be renamings/markings,
822822
// which map single items to single items.
823-
vis.flat_map_item(item).expect_one("expected visitor to produce exactly one item")
823+
vis.visit_item(item).expect_one("expected visitor to produce exactly one item")
824824
}),
825825
token::NtBlock(block) => vis.visit_block(block),
826826
token::NtStmt(stmt) => visit_clobber(stmt, |stmt| {
827827
// See reasoning above.
828828
stmt.map(|stmt| {
829-
vis.flat_map_stmt(stmt).expect_one("expected visitor to produce exactly one item")
829+
vis.visit_stmt(stmt).expect_one("expected visitor to produce exactly one item")
830830
})
831831
}),
832832
token::NtPat(pat) => vis.visit_pat(pat),
@@ -881,7 +881,7 @@ fn walk_closure_binder<T: MutVisitor>(vis: &mut T, binder: &mut ClosureBinder) {
881881
match binder {
882882
ClosureBinder::NotPresent => {}
883883
ClosureBinder::For { span: _, generic_params } => {
884-
generic_params.flat_map_in_place(|param| vis.flat_map_generic_param(param));
884+
generic_params.flat_map_in_place(|param| vis.visit_generic_param(param));
885885
}
886886
}
887887
}
@@ -920,7 +920,7 @@ fn walk_fn<T: MutVisitor>(vis: &mut T, kind: FnKind<'_>) {
920920

921921
fn walk_fn_decl<T: MutVisitor>(vis: &mut T, decl: &mut P<FnDecl>) {
922922
let FnDecl { inputs, output } = decl.deref_mut();
923-
inputs.flat_map_in_place(|param| vis.flat_map_param(param));
923+
inputs.flat_map_in_place(|param| vis.visit_param(param));
924924
walk_fn_ret_ty(vis, output);
925925
}
926926

@@ -992,7 +992,7 @@ fn walk_lifetime<T: MutVisitor>(vis: &mut T, Lifetime { id, ident }: &mut Lifeti
992992

993993
fn walk_generics<T: MutVisitor>(vis: &mut T, generics: &mut Generics) {
994994
let Generics { params, where_clause, span } = generics;
995-
params.flat_map_in_place(|param| vis.flat_map_generic_param(param));
995+
params.flat_map_in_place(|param| vis.visit_generic_param(param));
996996
vis.visit_where_clause(where_clause);
997997
vis.visit_span(span);
998998
}
@@ -1015,7 +1015,7 @@ fn walk_where_predicate<T: MutVisitor>(vis: &mut T, pred: &mut WherePredicate) {
10151015
match pred {
10161016
WherePredicate::BoundPredicate(bp) => {
10171017
let WhereBoundPredicate { span, bound_generic_params, bounded_ty, bounds } = bp;
1018-
bound_generic_params.flat_map_in_place(|param| vis.flat_map_generic_param(param));
1018+
bound_generic_params.flat_map_in_place(|param| vis.visit_generic_param(param));
10191019
vis.visit_ty(bounded_ty);
10201020
visit_vec(bounds, |bound| vis.visit_param_bound(bound, BoundKind::Bound));
10211021
vis.visit_span(span);
@@ -1038,11 +1038,11 @@ fn walk_where_predicate<T: MutVisitor>(vis: &mut T, pred: &mut WherePredicate) {
10381038
fn walk_variant_data<T: MutVisitor>(vis: &mut T, vdata: &mut VariantData) {
10391039
match vdata {
10401040
VariantData::Struct { fields, recovered: _ } => {
1041-
fields.flat_map_in_place(|field| vis.flat_map_field_def(field));
1041+
fields.flat_map_in_place(|field| vis.visit_field_def(field));
10421042
}
10431043
VariantData::Tuple(fields, id) => {
10441044
vis.visit_id(id);
1045-
fields.flat_map_in_place(|field| vis.flat_map_field_def(field));
1045+
fields.flat_map_in_place(|field| vis.visit_field_def(field));
10461046
}
10471047
VariantData::Unit(id) => vis.visit_id(id),
10481048
}
@@ -1055,7 +1055,7 @@ fn walk_trait_ref<T: MutVisitor>(vis: &mut T, TraitRef { path, ref_id }: &mut Tr
10551055

10561056
fn walk_poly_trait_ref<T: MutVisitor>(vis: &mut T, p: &mut PolyTraitRef) {
10571057
let PolyTraitRef { bound_generic_params, trait_ref, span } = p;
1058-
bound_generic_params.flat_map_in_place(|param| vis.flat_map_generic_param(param));
1058+
bound_generic_params.flat_map_in_place(|param| vis.visit_generic_param(param));
10591059
vis.visit_trait_ref(trait_ref);
10601060
vis.visit_span(span);
10611061
}
@@ -1088,7 +1088,7 @@ fn walk_mt<T: MutVisitor>(vis: &mut T, MutTy { ty, mutbl: _ }: &mut MutTy) {
10881088
pub fn walk_block<T: MutVisitor>(vis: &mut T, block: &mut P<Block>) {
10891089
let Block { id, stmts, rules: _, span, tokens, could_be_bare_literal: _ } = block.deref_mut();
10901090
vis.visit_id(id);
1091-
stmts.flat_map_in_place(|stmt| vis.flat_map_stmt(stmt));
1091+
stmts.flat_map_in_place(|stmt| vis.visit_stmt(stmt));
10921092
visit_lazy_tts(vis, tokens);
10931093
vis.visit_span(span);
10941094
}
@@ -1131,7 +1131,7 @@ impl NoopVisitItemKind for ItemKind {
11311131
visit_safety(vis, safety);
11321132
match mod_kind {
11331133
ModKind::Loaded(items, _inline, ModSpans { inner_span, inject_use_span }) => {
1134-
items.flat_map_in_place(|item| vis.flat_map_item(item));
1134+
items.flat_map_in_place(|item| vis.visit_item(item));
11351135
vis.visit_span(inner_span);
11361136
vis.visit_span(inject_use_span);
11371137
}
@@ -1149,7 +1149,7 @@ impl NoopVisitItemKind for ItemKind {
11491149
}
11501150
ItemKind::Enum(EnumDef { variants }, generics) => {
11511151
vis.visit_generics(generics);
1152-
variants.flat_map_in_place(|variant| vis.flat_map_variant(variant));
1152+
variants.flat_map_in_place(|variant| vis.visit_variant(variant));
11531153
}
11541154
ItemKind::Struct(variant_data, generics) | ItemKind::Union(variant_data, generics) => {
11551155
vis.visit_generics(generics);
@@ -1172,13 +1172,13 @@ impl NoopVisitItemKind for ItemKind {
11721172
visit_polarity(vis, polarity);
11731173
visit_opt(of_trait, |trait_ref| vis.visit_trait_ref(trait_ref));
11741174
vis.visit_ty(self_ty);
1175-
items.flat_map_in_place(|item| vis.flat_map_assoc_item(item, AssocCtxt::Impl));
1175+
items.flat_map_in_place(|item| vis.visit_assoc_item(item, AssocCtxt::Impl));
11761176
}
11771177
ItemKind::Trait(box Trait { safety, is_auto: _, generics, bounds, items }) => {
11781178
visit_safety(vis, safety);
11791179
vis.visit_generics(generics);
11801180
visit_bounds(vis, bounds, BoundKind::Bound);
1181-
items.flat_map_in_place(|item| vis.flat_map_assoc_item(item, AssocCtxt::Trait));
1181+
items.flat_map_in_place(|item| vis.visit_assoc_item(item, AssocCtxt::Trait));
11821182
}
11831183
ItemKind::TraitAlias(generics, bounds) => {
11841184
vis.visit_generics(generics);
@@ -1317,7 +1317,7 @@ pub fn walk_crate<T: MutVisitor>(vis: &mut T, krate: &mut Crate) {
13171317
let Crate { attrs, items, spans, id, is_placeholder: _ } = krate;
13181318
vis.visit_id(id);
13191319
visit_attrs(vis, attrs);
1320-
items.flat_map_in_place(|item| vis.flat_map_item(item));
1320+
items.flat_map_in_place(|item| vis.visit_item(item));
13211321
let ModSpans { inner_span, inject_use_span } = spans;
13221322
vis.visit_span(inner_span);
13231323
vis.visit_span(inject_use_span);
@@ -1400,7 +1400,7 @@ pub fn walk_pat<T: MutVisitor>(vis: &mut T, pat: &mut P<Pat>) {
14001400
PatKind::Struct(qself, path, fields, _etc) => {
14011401
vis.visit_qself(qself);
14021402
vis.visit_path(path);
1403-
fields.flat_map_in_place(|field| vis.flat_map_pat_field(field));
1403+
fields.flat_map_in_place(|field| vis.visit_pat_field(field));
14041404
}
14051405
PatKind::Box(inner) => vis.visit_pat(inner),
14061406
PatKind::Deref(inner) => vis.visit_pat(inner),
@@ -1551,7 +1551,7 @@ pub fn walk_expr<T: MutVisitor>(vis: &mut T, Expr { kind, id, span, attrs, token
15511551
}
15521552
ExprKind::Match(expr, arms, _kind) => {
15531553
vis.visit_expr(expr);
1554-
arms.flat_map_in_place(|arm| vis.flat_map_arm(arm));
1554+
arms.flat_map_in_place(|arm| vis.visit_arm(arm));
15551555
}
15561556
ExprKind::Closure(box Closure {
15571557
binder,
@@ -1637,7 +1637,7 @@ pub fn walk_expr<T: MutVisitor>(vis: &mut T, Expr { kind, id, span, attrs, token
16371637
let StructExpr { qself, path, fields, rest } = se.deref_mut();
16381638
vis.visit_qself(qself);
16391639
vis.visit_path(path);
1640-
fields.flat_map_in_place(|field| vis.flat_map_expr_field(field));
1640+
fields.flat_map_in_place(|field| vis.visit_expr_field(field));
16411641
match rest {
16421642
StructRest::Base(expr) => vis.visit_expr(expr),
16431643
StructRest::Rest(_span) => {}
@@ -1691,7 +1691,7 @@ fn walk_stmt_kind<T: MutVisitor>(vis: &mut T, kind: StmtKind) -> SmallVec<[StmtK
16911691
vis.visit_local(&mut local);
16921692
local
16931693
})],
1694-
StmtKind::Item(item) => vis.flat_map_item(item).into_iter().map(StmtKind::Item).collect(),
1694+
StmtKind::Item(item) => vis.visit_item(item).into_iter().map(StmtKind::Item).collect(),
16951695
StmtKind::Expr(expr) => vis.filter_map_expr(expr).into_iter().map(StmtKind::Expr).collect(),
16961696
StmtKind::Semi(expr) => vis.filter_map_expr(expr).into_iter().map(StmtKind::Semi).collect(),
16971697
StmtKind::Empty => smallvec![StmtKind::Empty],

0 commit comments

Comments
 (0)