Skip to content

Commit 8f28c9b

Browse files
committed
Auto merge of #28007 - Ms2ger:FnKind, r=nrc
There is no longer a need for that pattern, since enums are now qualified.
2 parents fe9cef7 + 2076cdd commit 8f28c9b

File tree

14 files changed

+84
-86
lines changed

14 files changed

+84
-86
lines changed

src/librustc/ast_map/blocks.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ use syntax::abi;
2828
use syntax::ast::{Block, FnDecl, NodeId};
2929
use syntax::ast;
3030
use syntax::codemap::Span;
31-
use syntax::visit;
31+
use syntax::visit::FnKind;
3232

3333
/// An FnLikeNode is a Node that is like a fn, in that it has a decl
3434
/// and a body (as well as a NodeId, a span, etc).
@@ -50,7 +50,7 @@ pub trait MaybeFnLike { fn is_fn_like(&self) -> bool; }
5050
pub struct FnParts<'a> {
5151
pub decl: &'a FnDecl,
5252
pub body: &'a Block,
53-
pub kind: visit::FnKind<'a>,
53+
pub kind: FnKind<'a>,
5454
pub span: Span,
5555
pub id: NodeId,
5656
}
@@ -186,15 +186,15 @@ impl<'a> FnLikeNode<'a> {
186186
|c: ClosureParts| c.id)
187187
}
188188

189-
pub fn kind(self) -> visit::FnKind<'a> {
190-
let item = |p: ItemFnParts<'a>| -> visit::FnKind<'a> {
191-
visit::FkItemFn(p.ident, p.generics, p.unsafety, p.constness, p.abi, p.vis)
189+
pub fn kind(self) -> FnKind<'a> {
190+
let item = |p: ItemFnParts<'a>| -> FnKind<'a> {
191+
FnKind::ItemFn(p.ident, p.generics, p.unsafety, p.constness, p.abi, p.vis)
192192
};
193193
let closure = |_: ClosureParts| {
194-
visit::FkClosure
194+
FnKind::Closure
195195
};
196196
let method = |_, ident, sig: &'a ast::MethodSig, vis, _, _| {
197-
visit::FkMethod(ident, sig, vis)
197+
FnKind::Method(ident, sig, vis)
198198
};
199199
self.handle(item, method, closure)
200200
}

src/librustc/middle/check_const.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ use util::nodemap::NodeMap;
3838

3939
use syntax::ast;
4040
use syntax::codemap::Span;
41-
use syntax::visit::{self, Visitor};
41+
use syntax::visit::{self, FnKind, Visitor};
4242

4343
use std::collections::hash_map::Entry;
4444
use std::cmp::Ordering;
@@ -142,7 +142,7 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
142142
}
143143

144144
fn fn_like(&mut self,
145-
fk: visit::FnKind,
145+
fk: FnKind,
146146
fd: &ast::FnDecl,
147147
b: &ast::Block,
148148
s: Span,
@@ -157,10 +157,10 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
157157
}
158158

159159
let mode = match fk {
160-
visit::FkItemFn(_, _, _, ast::Constness::Const, _, _) => {
160+
FnKind::ItemFn(_, _, _, ast::Constness::Const, _, _) => {
161161
Mode::ConstFn
162162
}
163-
visit::FkMethod(_, m, _) => {
163+
FnKind::Method(_, m, _) => {
164164
if m.constness == ast::Constness::Const {
165165
Mode::ConstFn
166166
} else {
@@ -352,7 +352,7 @@ impl<'a, 'tcx, 'v> Visitor<'v> for CheckCrateVisitor<'a, 'tcx> {
352352
}
353353

354354
fn visit_fn(&mut self,
355-
fk: visit::FnKind<'v>,
355+
fk: FnKind<'v>,
356356
fd: &'v ast::FnDecl,
357357
b: &'v ast::Block,
358358
s: Span,

src/librustc/middle/check_match.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1007,7 +1007,7 @@ fn check_fn(cx: &mut MatchCheckCtxt,
10071007
sp: Span,
10081008
fn_id: NodeId) {
10091009
match kind {
1010-
visit::FkClosure => {}
1010+
FnKind::Closure => {}
10111011
_ => cx.param_env = ParameterEnvironment::for_item(cx.tcx, fn_id),
10121012
}
10131013

src/librustc/middle/const_eval.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
#![allow(non_camel_case_types)]
11+
//#![allow(non_camel_case_types)]
1212

1313
use self::ConstVal::*;
1414
use self::ErrKind::*;
@@ -26,10 +26,10 @@ use middle::astconv_util::ast_ty_to_prim_ty;
2626
use util::num::ToPrimitive;
2727

2828
use syntax::ast::{self, Expr};
29-
use syntax::codemap::Span;
29+
use syntax::codemap::{self, Span};
3030
use syntax::parse::token::InternedString;
3131
use syntax::ptr::P;
32-
use syntax::{codemap, visit};
32+
use syntax::visit::FnKind;
3333

3434
use std::borrow::{Cow, IntoCow};
3535
use std::num::wrapping::OverflowingOps;
@@ -246,10 +246,10 @@ pub fn lookup_const_fn_by_id<'tcx>(tcx: &ty::ctxt<'tcx>, def_id: DefId)
246246
};
247247

248248
match fn_like.kind() {
249-
visit::FkItemFn(_, _, _, ast::Constness::Const, _, _) => {
249+
FnKind::ItemFn(_, _, _, ast::Constness::Const, _, _) => {
250250
Some(fn_like)
251251
}
252-
visit::FkMethod(_, m, _) => {
252+
FnKind::Method(_, m, _) => {
253253
if m.constness == ast::Constness::Const {
254254
Some(fn_like)
255255
} else {

src/librustc/middle/effect.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use middle::ty::MethodCall;
1919
use syntax::ast;
2020
use syntax::codemap::Span;
2121
use syntax::visit;
22-
use syntax::visit::Visitor;
22+
use syntax::visit::{FnKind, Visitor};
2323

2424
#[derive(Copy, Clone)]
2525
struct UnsafeContext {
@@ -75,13 +75,13 @@ impl<'a, 'tcx> EffectCheckVisitor<'a, 'tcx> {
7575
}
7676

7777
impl<'a, 'tcx, 'v> Visitor<'v> for EffectCheckVisitor<'a, 'tcx> {
78-
fn visit_fn(&mut self, fn_kind: visit::FnKind<'v>, fn_decl: &'v ast::FnDecl,
78+
fn visit_fn(&mut self, fn_kind: FnKind<'v>, fn_decl: &'v ast::FnDecl,
7979
block: &'v ast::Block, span: Span, _: ast::NodeId) {
8080

8181
let (is_item_fn, is_unsafe_fn) = match fn_kind {
82-
visit::FkItemFn(_, _, unsafety, _, _, _) =>
82+
FnKind::ItemFn(_, _, unsafety, _, _, _) =>
8383
(true, unsafety == ast::Unsafety::Unsafe),
84-
visit::FkMethod(_, sig, _) =>
84+
FnKind::Method(_, sig, _) =>
8585
(true, sig.unsafety == ast::Unsafety::Unsafe),
8686
_ => (false, false),
8787
};

src/librustc/middle/intrinsicck.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use std::fmt;
1919
use syntax::abi::RustIntrinsic;
2020
use syntax::ast;
2121
use syntax::codemap::Span;
22-
use syntax::visit::Visitor;
22+
use syntax::visit::{FnKind, Visitor};
2323
use syntax::visit;
2424

2525
pub fn check_crate(tcx: &ctxt) {
@@ -216,16 +216,16 @@ impl<'a, 'tcx> IntrinsicCheckingVisitor<'a, 'tcx> {
216216
}
217217

218218
impl<'a, 'tcx, 'v> Visitor<'v> for IntrinsicCheckingVisitor<'a, 'tcx> {
219-
fn visit_fn(&mut self, fk: visit::FnKind<'v>, fd: &'v ast::FnDecl,
219+
fn visit_fn(&mut self, fk: FnKind<'v>, fd: &'v ast::FnDecl,
220220
b: &'v ast::Block, s: Span, id: ast::NodeId) {
221221
match fk {
222-
visit::FkItemFn(..) | visit::FkMethod(..) => {
222+
FnKind::ItemFn(..) | FnKind::Method(..) => {
223223
let param_env = ty::ParameterEnvironment::for_item(self.tcx, id);
224224
self.param_envs.push(param_env);
225225
visit::walk_fn(self, fk, fd, b, s);
226226
self.param_envs.pop();
227227
}
228-
visit::FkClosure(..) => {
228+
FnKind::Closure(..) => {
229229
visit::walk_fn(self, fk, fd, b, s);
230230
}
231231
}

src/librustc/middle/resolve_lifetime.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ use syntax::codemap::Span;
3030
use syntax::parse::token::special_idents;
3131
use syntax::print::pprust::lifetime_to_string;
3232
use syntax::visit;
33-
use syntax::visit::Visitor;
33+
use syntax::visit::{FnKind, Visitor};
3434
use util::nodemap::NodeMap;
3535

3636
#[derive(Clone, Copy, PartialEq, Eq, Hash, RustcEncodable, RustcDecodable, Debug)]
@@ -173,20 +173,20 @@ impl<'a, 'v> Visitor<'v> for LifetimeContext<'a> {
173173
replace(&mut self.labels_in_fn, saved);
174174
}
175175

176-
fn visit_fn(&mut self, fk: visit::FnKind<'v>, fd: &'v ast::FnDecl,
176+
fn visit_fn(&mut self, fk: FnKind<'v>, fd: &'v ast::FnDecl,
177177
b: &'v ast::Block, s: Span, _: ast::NodeId) {
178178
match fk {
179-
visit::FkItemFn(_, generics, _, _, _, _) => {
179+
FnKind::ItemFn(_, generics, _, _, _, _) => {
180180
self.visit_early_late(subst::FnSpace, generics, |this| {
181181
this.walk_fn(fk, fd, b, s)
182182
})
183183
}
184-
visit::FkMethod(_, sig, _) => {
184+
FnKind::Method(_, sig, _) => {
185185
self.visit_early_late(subst::FnSpace, &sig.generics, |this| {
186186
this.walk_fn(fk, fd, b, s)
187187
})
188188
}
189-
visit::FkClosure(..) => {
189+
FnKind::Closure(..) => {
190190
self.walk_fn(fk, fd, b, s)
191191
}
192192
}
@@ -470,21 +470,21 @@ impl<'a> LifetimeContext<'a> {
470470
// labels of the function body and swaps them in before visiting
471471
// the function body itself.
472472
fn walk_fn<'b>(&mut self,
473-
fk: visit::FnKind,
473+
fk: FnKind,
474474
fd: &ast::FnDecl,
475475
fb: &'b ast::Block,
476476
_span: Span) {
477477
match fk {
478-
visit::FkItemFn(_, generics, _, _, _, _) => {
478+
FnKind::ItemFn(_, generics, _, _, _, _) => {
479479
visit::walk_fn_decl(self, fd);
480480
self.visit_generics(generics);
481481
}
482-
visit::FkMethod(_, sig, _) => {
482+
FnKind::Method(_, sig, _) => {
483483
visit::walk_fn_decl(self, fd);
484484
self.visit_generics(&sig.generics);
485485
self.visit_explicit_self(&sig.explicit_self);
486486
}
487-
visit::FkClosure(..) => {
487+
FnKind::Closure(..) => {
488488
visit::walk_fn_decl(self, fd);
489489
}
490490
}

src/librustc_borrowck/borrowck/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,16 +59,16 @@ impl<'a, 'tcx, 'v> Visitor<'v> for BorrowckCtxt<'a, 'tcx> {
5959
fn visit_fn(&mut self, fk: FnKind<'v>, fd: &'v FnDecl,
6060
b: &'v Block, s: Span, id: ast::NodeId) {
6161
match fk {
62-
visit::FkItemFn(..) |
63-
visit::FkMethod(..) => {
62+
FnKind::ItemFn(..) |
63+
FnKind::Method(..) => {
6464
let new_free_region_map = self.tcx.free_region_map(id);
6565
let old_free_region_map =
6666
mem::replace(&mut self.free_region_map, new_free_region_map);
6767
borrowck_fn(self, fk, fd, b, s, id);
6868
self.free_region_map = old_free_region_map;
6969
}
7070

71-
visit::FkClosure => {
71+
FnKind::Closure => {
7272
borrowck_fn(self, fk, fd, b, s, id);
7373
}
7474
}

src/librustc_lint/builtin.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ use syntax::codemap::{self, Span};
5151
use syntax::feature_gate::{KNOWN_ATTRIBUTES, AttributeType};
5252
use syntax::ast::{TyIs, TyUs, TyI8, TyU8, TyI16, TyU16, TyI32, TyU32, TyI64, TyU64};
5353
use syntax::ptr::P;
54-
use syntax::visit::{self, Visitor};
54+
use syntax::visit::{self, FnKind, Visitor};
5555

5656
// hardwired lints from librustc
5757
pub use lint::builtin::*;
@@ -1242,10 +1242,10 @@ impl LintPass for NonSnakeCase {
12421242
}
12431243

12441244
fn check_fn(&mut self, cx: &Context,
1245-
fk: visit::FnKind, _: &ast::FnDecl,
1245+
fk: FnKind, _: &ast::FnDecl,
12461246
_: &ast::Block, span: Span, id: ast::NodeId) {
12471247
match fk {
1248-
visit::FkMethod(ident, _, _) => match method_context(cx, id, span) {
1248+
FnKind::Method(ident, _, _) => match method_context(cx, id, span) {
12491249
MethodContext::PlainImpl => {
12501250
self.check_snake_case(cx, "method", &ident.name.as_str(), Some(span))
12511251
},
@@ -1254,7 +1254,7 @@ impl LintPass for NonSnakeCase {
12541254
},
12551255
_ => (),
12561256
},
1257-
visit::FkItemFn(ident, _, _, _, _, _) => {
1257+
FnKind::ItemFn(ident, _, _, _, _, _) => {
12581258
self.check_snake_case(cx, "function", &ident.name.as_str(), Some(span))
12591259
},
12601260
_ => (),
@@ -1600,13 +1600,13 @@ impl LintPass for UnsafeCode {
16001600
}
16011601
}
16021602

1603-
fn check_fn(&mut self, cx: &Context, fk: visit::FnKind, _: &ast::FnDecl,
1603+
fn check_fn(&mut self, cx: &Context, fk: FnKind, _: &ast::FnDecl,
16041604
_: &ast::Block, span: Span, _: ast::NodeId) {
16051605
match fk {
1606-
visit::FkItemFn(_, _, ast::Unsafety::Unsafe, _, _, _) =>
1606+
FnKind::ItemFn(_, _, ast::Unsafety::Unsafe, _, _, _) =>
16071607
cx.span_lint(UNSAFE_CODE, span, "declaration of an `unsafe` function"),
16081608

1609-
visit::FkMethod(_, sig, _) => {
1609+
FnKind::Method(_, sig, _) => {
16101610
if sig.unsafety == ast::Unsafety::Unsafe {
16111611
cx.span_lint(UNSAFE_CODE, span, "implementation of an `unsafe` method")
16121612
}
@@ -1687,7 +1687,7 @@ impl LintPass for UnusedMut {
16871687
}
16881688

16891689
fn check_fn(&mut self, cx: &Context,
1690-
_: visit::FnKind, decl: &ast::FnDecl,
1690+
_: FnKind, decl: &ast::FnDecl,
16911691
_: &ast::Block, _: Span, _: ast::NodeId) {
16921692
for a in &decl.inputs {
16931693
self.check_unused_mut_pat(cx, slice::ref_slice(&a.pat));
@@ -2128,18 +2128,18 @@ impl LintPass for UnconditionalRecursion {
21282128
lint_array![UNCONDITIONAL_RECURSION]
21292129
}
21302130

2131-
fn check_fn(&mut self, cx: &Context, fn_kind: visit::FnKind, _: &ast::FnDecl,
2131+
fn check_fn(&mut self, cx: &Context, fn_kind: FnKind, _: &ast::FnDecl,
21322132
blk: &ast::Block, sp: Span, id: ast::NodeId) {
21332133
type F = for<'tcx> fn(&ty::ctxt<'tcx>,
21342134
ast::NodeId, ast::NodeId, ast::Ident, ast::NodeId) -> bool;
21352135

21362136
let method = match fn_kind {
2137-
visit::FkItemFn(..) => None,
2138-
visit::FkMethod(..) => {
2137+
FnKind::ItemFn(..) => None,
2138+
FnKind::Method(..) => {
21392139
cx.tcx.impl_or_trait_item(DefId::local(id)).as_opt_method()
21402140
}
21412141
// closures can't recur, so they don't matter.
2142-
visit::FkClosure => return
2142+
FnKind::Closure => return
21432143
};
21442144

21452145
// Walk through this function (say `f`) looking to see if

src/librustc_resolve/lib.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ use syntax::ext::mtwt;
8888
use syntax::parse::token::{self, special_names, special_idents};
8989
use syntax::ptr::P;
9090
use syntax::codemap::{self, Span, Pos};
91-
use syntax::visit::{self, Visitor};
91+
use syntax::visit::{self, FnKind, Visitor};
9292

9393
use std::collections::{HashMap, HashSet};
9494
use std::collections::hash_map::Entry::{Occupied, Vacant};
@@ -527,22 +527,22 @@ impl<'a, 'v, 'tcx> Visitor<'v> for Resolver<'a, 'tcx> {
527527
});
528528
}
529529
fn visit_fn(&mut self,
530-
function_kind: visit::FnKind<'v>,
530+
function_kind: FnKind<'v>,
531531
declaration: &'v FnDecl,
532532
block: &'v Block,
533533
_: Span,
534534
node_id: NodeId) {
535535
let rib_kind = match function_kind {
536-
visit::FkItemFn(_, generics, _, _, _, _) => {
536+
FnKind::ItemFn(_, generics, _, _, _, _) => {
537537
self.visit_generics(generics);
538538
ItemRibKind
539539
}
540-
visit::FkMethod(_, sig, _) => {
540+
FnKind::Method(_, sig, _) => {
541541
self.visit_generics(&sig.generics);
542542
self.visit_explicit_self(&sig.explicit_self);
543543
MethodRibKind
544544
}
545-
visit::FkClosure(..) => ClosureRibKind(node_id)
545+
FnKind::Closure(..) => ClosureRibKind(node_id)
546546
};
547547
self.resolve_function(rib_kind, declaration, block);
548548
}

src/librustc_typeck/check/wf.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ use syntax::ast;
2525
use syntax::codemap::{DUMMY_SP, Span};
2626
use syntax::parse::token::{special_idents};
2727
use syntax::visit;
28-
use syntax::visit::Visitor;
28+
use syntax::visit::{FnKind, Visitor};
2929

3030
pub struct CheckTypeWellFormedVisitor<'ccx, 'tcx:'ccx> {
3131
ccx: &'ccx CrateCtxt<'ccx, 'tcx>,
@@ -425,11 +425,11 @@ impl<'ccx, 'tcx, 'v> Visitor<'v> for CheckTypeWellFormedVisitor<'ccx, 'tcx> {
425425
}
426426

427427
fn visit_fn(&mut self,
428-
fk: visit::FnKind<'v>, fd: &'v ast::FnDecl,
428+
fk: FnKind<'v>, fd: &'v ast::FnDecl,
429429
b: &'v ast::Block, span: Span, id: ast::NodeId) {
430430
match fk {
431-
visit::FkClosure | visit::FkItemFn(..) => {}
432-
visit::FkMethod(..) => {
431+
FnKind::Closure | FnKind::ItemFn(..) => {}
432+
FnKind::Method(..) => {
433433
match self.tcx().impl_or_trait_item(DefId::local(id)) {
434434
ty::ImplOrTraitItem::MethodTraitItem(ty_method) => {
435435
reject_shadowing_type_parameters(self.tcx(), span, &ty_method.generics)

0 commit comments

Comments
 (0)