Skip to content

Commit ad66c21

Browse files
committed
rustc: switch most remaining middle::ty functions to methods.
1 parent 5cedd66 commit ad66c21

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

92 files changed

+3516
-3790
lines changed

src/librustc/metadata/encoder.rs

+24-27
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ use metadata::cstore;
2323
use metadata::decoder;
2424
use metadata::tyencode;
2525
use middle::def;
26-
use middle::ty::lookup_item_type;
2726
use middle::ty::{self, Ty};
2827
use middle::stability;
2928
use util::nodemap::{FnvHashMap, NodeMap, NodeSet};
@@ -133,7 +132,7 @@ pub fn def_to_string(did: DefId) -> String {
133132
fn encode_item_variances(rbml_w: &mut Encoder,
134133
ecx: &EncodeContext,
135134
id: NodeId) {
136-
let v = ty::item_variances(ecx.tcx, ast_util::local_def(id));
135+
let v = ecx.tcx.item_variances(ast_util::local_def(id));
137136
rbml_w.start_tag(tag_item_variances);
138137
v.encode(rbml_w);
139138
rbml_w.end_tag();
@@ -144,8 +143,8 @@ fn encode_bounds_and_type_for_item<'a, 'tcx>(rbml_w: &mut Encoder,
144143
id: ast::NodeId) {
145144
encode_bounds_and_type(rbml_w,
146145
ecx,
147-
&ty::lookup_item_type(ecx.tcx, local_def(id)),
148-
&ty::lookup_predicates(ecx.tcx, local_def(id)));
146+
&ecx.tcx.lookup_item_type(local_def(id)),
147+
&ecx.tcx.lookup_predicates(local_def(id)));
149148
}
150149

151150
fn encode_bounds_and_type<'a, 'tcx>(rbml_w: &mut Encoder,
@@ -293,8 +292,7 @@ fn encode_enum_variant_info(ecx: &EncodeContext,
293292

294293
let mut disr_val = 0;
295294
let mut i = 0;
296-
let vi = ty::enum_variants(ecx.tcx,
297-
DefId { krate: ast::LOCAL_CRATE, node: id });
295+
let vi = ecx.tcx.enum_variants(local_def(id));
298296
for variant in variants {
299297
let def_id = local_def(variant.node.id);
300298
index.push(entry {
@@ -319,7 +317,7 @@ fn encode_enum_variant_info(ecx: &EncodeContext,
319317
match variant.node.kind {
320318
ast::TupleVariantKind(_) => {},
321319
ast::StructVariantKind(_) => {
322-
let fields = ty::lookup_struct_fields(ecx.tcx, def_id);
320+
let fields = ecx.tcx.lookup_struct_fields(def_id);
323321
let idx = encode_info_for_struct(ecx,
324322
rbml_w,
325323
&fields[..],
@@ -328,9 +326,10 @@ fn encode_enum_variant_info(ecx: &EncodeContext,
328326
encode_index(rbml_w, idx, write_i64);
329327
}
330328
}
331-
if (*vi)[i].disr_val != disr_val {
332-
encode_disr_val(ecx, rbml_w, (*vi)[i].disr_val);
333-
disr_val = (*vi)[i].disr_val;
329+
let specified_disr_val = vi[i].disr_val;
330+
if specified_disr_val != disr_val {
331+
encode_disr_val(ecx, rbml_w, specified_disr_val);
332+
disr_val = specified_disr_val;
334333
}
335334
encode_bounds_and_type_for_item(rbml_w, ecx, def_id.local_id());
336335

@@ -379,9 +378,7 @@ fn encode_reexported_static_base_methods(ecx: &EncodeContext,
379378
Some(implementations) => {
380379
for base_impl_did in implementations.iter() {
381380
for &method_did in impl_items.get(base_impl_did).unwrap() {
382-
let impl_item = ty::impl_or_trait_item(
383-
ecx.tcx,
384-
method_did.def_id());
381+
let impl_item = ecx.tcx.impl_or_trait_item(method_did.def_id());
385382
if let ty::MethodTraitItem(ref m) = impl_item {
386383
encode_reexported_static_method(rbml_w,
387384
exp,
@@ -875,7 +872,7 @@ fn encode_info_for_method<'a, 'tcx>(ecx: &EncodeContext<'a, 'tcx>,
875872
if let Some(impl_item) = impl_item_opt {
876873
if let ast::MethodImplItem(ref sig, _) = impl_item.node {
877874
encode_attributes(rbml_w, &impl_item.attrs);
878-
let scheme = ty::lookup_item_type(ecx.tcx, m.def_id);
875+
let scheme = ecx.tcx.lookup_item_type(m.def_id);
879876
let any_types = !scheme.generics.types.is_empty();
880877
let needs_inline = any_types || is_default_impl ||
881878
attr::requests_inline(&impl_item.attrs);
@@ -923,7 +920,7 @@ fn encode_info_for_associated_type<'a, 'tcx>(ecx: &EncodeContext<'a, 'tcx>,
923920
encode_attributes(rbml_w, &ii.attrs);
924921
} else {
925922
encode_predicates(rbml_w, ecx,
926-
&ty::lookup_predicates(ecx.tcx, associated_type.def_id),
923+
&ecx.tcx.lookup_predicates(associated_type.def_id),
927924
tag_item_generics);
928925
}
929926

@@ -995,7 +992,7 @@ fn encode_extension_implementations(ecx: &EncodeContext,
995992
rbml_w: &mut Encoder,
996993
trait_def_id: DefId) {
997994
assert!(ast_util::is_local(trait_def_id));
998-
let def = ty::lookup_trait_def(ecx.tcx, trait_def_id);
995+
let def = ecx.tcx.lookup_trait_def(trait_def_id);
999996

1000997
def.for_each_impl(ecx.tcx, |impl_def_id| {
1001998
rbml_w.start_tag(tag_items_data_item_extension_impl);
@@ -1161,7 +1158,7 @@ fn encode_info_for_item(ecx: &EncodeContext,
11611158
index);
11621159
}
11631160
ast::ItemStruct(ref struct_def, _) => {
1164-
let fields = ty::lookup_struct_fields(tcx, def_id);
1161+
let fields = tcx.lookup_struct_fields(def_id);
11651162

11661163
/* First, encode the fields
11671164
These come first because we need to write them to make
@@ -1220,7 +1217,7 @@ fn encode_info_for_item(ecx: &EncodeContext,
12201217
encode_name(rbml_w, item.ident.name);
12211218
encode_unsafety(rbml_w, unsafety);
12221219

1223-
let trait_ref = ty::impl_trait_ref(tcx, local_def(item.id)).unwrap();
1220+
let trait_ref = tcx.impl_trait_ref(local_def(item.id)).unwrap();
12241221
encode_trait_ref(rbml_w, ecx, trait_ref, tag_item_trait_ref);
12251222
rbml_w.end_tag();
12261223
}
@@ -1274,7 +1271,7 @@ fn encode_info_for_item(ecx: &EncodeContext,
12741271
}
12751272
rbml_w.end_tag();
12761273
}
1277-
if let Some(trait_ref) = ty::impl_trait_ref(tcx, local_def(item.id)) {
1274+
if let Some(trait_ref) = tcx.impl_trait_ref(local_def(item.id)) {
12781275
encode_trait_ref(rbml_w, ecx, trait_ref, tag_item_trait_ref);
12791276
}
12801277
encode_path(rbml_w, path.clone());
@@ -1298,7 +1295,7 @@ fn encode_info_for_item(ecx: &EncodeContext,
12981295
pos: rbml_w.mark_stable_position(),
12991296
});
13001297

1301-
match ty::impl_or_trait_item(tcx, trait_item_def_id.def_id()) {
1298+
match tcx.impl_or_trait_item(trait_item_def_id.def_id()) {
13021299
ty::ConstTraitItem(ref associated_const) => {
13031300
encode_info_for_associated_const(ecx,
13041301
rbml_w,
@@ -1333,22 +1330,22 @@ fn encode_info_for_item(ecx: &EncodeContext,
13331330
encode_def_id(rbml_w, def_id);
13341331
encode_family(rbml_w, 'I');
13351332
encode_item_variances(rbml_w, ecx, item.id);
1336-
let trait_def = ty::lookup_trait_def(tcx, def_id);
1337-
let trait_predicates = ty::lookup_predicates(tcx, def_id);
1333+
let trait_def = tcx.lookup_trait_def(def_id);
1334+
let trait_predicates = tcx.lookup_predicates(def_id);
13381335
encode_unsafety(rbml_w, trait_def.unsafety);
13391336
encode_paren_sugar(rbml_w, trait_def.paren_sugar);
1340-
encode_defaulted(rbml_w, ty::trait_has_default_impl(tcx, def_id));
1337+
encode_defaulted(rbml_w, tcx.trait_has_default_impl(def_id));
13411338
encode_associated_type_names(rbml_w, &trait_def.associated_type_names);
13421339
encode_generics(rbml_w, ecx, &trait_def.generics, &trait_predicates,
13431340
tag_item_generics);
1344-
encode_predicates(rbml_w, ecx, &ty::lookup_super_predicates(tcx, def_id),
1341+
encode_predicates(rbml_w, ecx, &tcx.lookup_super_predicates(def_id),
13451342
tag_item_super_predicates);
13461343
encode_trait_ref(rbml_w, ecx, trait_def.trait_ref, tag_item_trait_ref);
13471344
encode_name(rbml_w, item.ident.name);
13481345
encode_attributes(rbml_w, &item.attrs);
13491346
encode_visibility(rbml_w, vis);
13501347
encode_stability(rbml_w, stab);
1351-
for &method_def_id in ty::trait_item_def_ids(tcx, def_id).iter() {
1348+
for &method_def_id in tcx.trait_item_def_ids(def_id).iter() {
13521349
rbml_w.start_tag(tag_item_trait_item);
13531350
match method_def_id {
13541351
ty::ConstTraitItemId(const_def_id) => {
@@ -1380,7 +1377,7 @@ fn encode_info_for_item(ecx: &EncodeContext,
13801377
rbml_w.end_tag();
13811378

13821379
// Now output the trait item info for each trait item.
1383-
let r = ty::trait_item_def_ids(tcx, def_id);
1380+
let r = tcx.trait_item_def_ids(def_id);
13841381
for (i, &item_def_id) in r.iter().enumerate() {
13851382
assert_eq!(item_def_id.def_id().krate, ast::LOCAL_CRATE);
13861383

@@ -1397,7 +1394,7 @@ fn encode_info_for_item(ecx: &EncodeContext,
13971394
encode_stability(rbml_w, stab);
13981395

13991396
let trait_item_type =
1400-
ty::impl_or_trait_item(tcx, item_def_id.def_id());
1397+
tcx.impl_or_trait_item(item_def_id.def_id());
14011398
let is_nonstatic_method;
14021399
match trait_item_type {
14031400
ty::ConstTraitItem(associated_const) => {

src/librustc/middle/cfg/construct.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -413,7 +413,7 @@ impl<'a, 'tcx> CFGBuilder<'a, 'tcx> {
413413
let method_call = ty::MethodCall::expr(call_expr.id);
414414
let fn_ty = match self.tcx.method_map.borrow().get(&method_call) {
415415
Some(method) => method.ty,
416-
None => ty::expr_ty_adjusted(self.tcx, func_or_rcvr)
416+
None => self.tcx.expr_ty_adjusted(func_or_rcvr)
417417
};
418418

419419
let func_or_rcvr_exit = self.expr(func_or_rcvr, pred);

src/librustc/middle/check_const.rs

+12-12
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
115115
{
116116
let param_env = match item_id {
117117
Some(item_id) => ty::ParameterEnvironment::for_item(self.tcx, item_id),
118-
None => ty::empty_parameter_environment(self.tcx)
118+
None => self.tcx.empty_parameter_environment()
119119
};
120120
f(&mut euv::ExprUseVisitor::new(self, &param_env))
121121
}
@@ -231,7 +231,7 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
231231
fn_like.id());
232232
self.add_qualif(qualif);
233233

234-
if ty::type_contents(self.tcx, ret_ty).interior_unsafe() {
234+
if ret_ty.type_contents(self.tcx).interior_unsafe() {
235235
self.add_qualif(ConstQualif::MUTABLE_MEM);
236236
}
237237

@@ -266,8 +266,8 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
266266
}
267267

268268
fn check_static_mut_type(&self, e: &ast::Expr) {
269-
let node_ty = ty::node_id_to_type(self.tcx, e.id);
270-
let tcontents = ty::type_contents(self.tcx, node_ty);
269+
let node_ty = self.tcx.node_id_to_type(e.id);
270+
let tcontents = node_ty.type_contents(self.tcx);
271271

272272
let suffix = if tcontents.has_dtor() {
273273
"destructors"
@@ -282,12 +282,12 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
282282
}
283283

284284
fn check_static_type(&self, e: &ast::Expr) {
285-
let ty = ty::node_id_to_type(self.tcx, e.id);
285+
let ty = self.tcx.node_id_to_type(e.id);
286286
let infcx = infer::new_infer_ctxt(self.tcx);
287287
let mut fulfill_cx = traits::FulfillmentContext::new(false);
288288
let cause = traits::ObligationCause::new(e.span, e.id, traits::SharedStatic);
289289
fulfill_cx.register_builtin_bound(&infcx, ty, ty::BoundSync, cause);
290-
let env = ty::empty_parameter_environment(self.tcx);
290+
let env = self.tcx.empty_parameter_environment();
291291
match fulfill_cx.select_all_or_error(&infcx, &env) {
292292
Ok(()) => { },
293293
Err(ref errors) => {
@@ -402,7 +402,7 @@ impl<'a, 'tcx, 'v> Visitor<'v> for CheckCrateVisitor<'a, 'tcx> {
402402
let mut outer = self.qualif;
403403
self.qualif = ConstQualif::empty();
404404

405-
let node_ty = ty::node_id_to_type(self.tcx, ex.id);
405+
let node_ty = self.tcx.node_id_to_type(ex.id);
406406
check_expr(self, ex, node_ty);
407407

408408
// Special-case some expressions to avoid certain flags bubbling up.
@@ -479,7 +479,7 @@ impl<'a, 'tcx, 'v> Visitor<'v> for CheckCrateVisitor<'a, 'tcx> {
479479
// initializer values (very bad).
480480
// If the type doesn't have interior mutability, then `ConstQualif::MUTABLE_MEM` has
481481
// propagated from another error, so erroring again would be just noise.
482-
let tc = ty::type_contents(self.tcx, node_ty);
482+
let tc = node_ty.type_contents(self.tcx);
483483
if self.qualif.intersects(ConstQualif::MUTABLE_MEM) && tc.interior_unsafe() {
484484
outer = outer | ConstQualif::NOT_CONST;
485485
if self.mode != Mode::Var {
@@ -529,7 +529,7 @@ fn check_expr<'a, 'tcx>(v: &mut CheckCrateVisitor<'a, 'tcx>,
529529
e: &ast::Expr, node_ty: Ty<'tcx>) {
530530
match node_ty.sty {
531531
ty::TyStruct(did, _) |
532-
ty::TyEnum(did, _) if ty::has_dtor(v.tcx, did) => {
532+
ty::TyEnum(did, _) if v.tcx.has_dtor(did) => {
533533
v.add_qualif(ConstQualif::NEEDS_DROP);
534534
if v.mode != Mode::Var {
535535
v.tcx.sess.span_err(e.span,
@@ -560,7 +560,7 @@ fn check_expr<'a, 'tcx>(v: &mut CheckCrateVisitor<'a, 'tcx>,
560560
}
561561
}
562562
ast::ExprUnary(op, ref inner) => {
563-
match ty::node_id_to_type(v.tcx, inner.id).sty {
563+
match v.tcx.node_id_to_type(inner.id).sty {
564564
ty::TyRawPtr(_) => {
565565
assert!(op == ast::UnDeref);
566566

@@ -574,7 +574,7 @@ fn check_expr<'a, 'tcx>(v: &mut CheckCrateVisitor<'a, 'tcx>,
574574
}
575575
}
576576
ast::ExprBinary(op, ref lhs, _) => {
577-
match ty::node_id_to_type(v.tcx, lhs.id).sty {
577+
match v.tcx.node_id_to_type(lhs.id).sty {
578578
ty::TyRawPtr(_) => {
579579
assert!(op.node == ast::BiEq || op.node == ast::BiNe ||
580580
op.node == ast::BiLe || op.node == ast::BiLt ||
@@ -731,7 +731,7 @@ fn check_expr<'a, 'tcx>(v: &mut CheckCrateVisitor<'a, 'tcx>,
731731
ast::ExprClosure(..) => {
732732
// Paths in constant contexts cannot refer to local variables,
733733
// as there are none, and thus closures can't have upvars there.
734-
if ty::with_freevars(v.tcx, e.id, |fv| !fv.is_empty()) {
734+
if v.tcx.with_freevars(e.id, |fv| !fv.is_empty()) {
735735
assert!(v.mode == Mode::Var,
736736
"global closures can't capture anything");
737737
v.add_qualif(ConstQualif::NOT_CONST);

0 commit comments

Comments
 (0)