Skip to content

Commit 50fb018

Browse files
Ariel Ben-Yehudaarielb1
Ariel Ben-Yehuda
authored andcommitted
split slices and arrays in fast_reject
this does not have a measurable performance effect and mostly makes the logs clearer
1 parent d7cf154 commit 50fb018

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/librustc/ty/fast_reject.rs

+7-4
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11+
use hir;
1112
use hir::def_id::DefId;
1213
use ty::{self, Ty, TyCtxt};
1314
use syntax::ast;
@@ -24,8 +25,9 @@ pub enum SimplifiedType {
2425
FloatSimplifiedType(ast::FloatTy),
2526
AdtSimplifiedType(DefId),
2627
StrSimplifiedType,
27-
ArraySimplifiedType,
28-
PtrSimplifiedType,
28+
ArraySimplifiedType(usize),
29+
SliceSimplifiedType,
30+
PtrSimplifiedType(hir::Mutability),
2931
NeverSimplifiedType,
3032
TupleSimplifiedType(usize),
3133
TraitSimplifiedType(DefId),
@@ -57,8 +59,9 @@ pub fn simplify_type<'a, 'gcx, 'tcx>(tcx: TyCtxt<'a, 'gcx, 'tcx>,
5759
ty::TyFloat(float_type) => Some(FloatSimplifiedType(float_type)),
5860
ty::TyAdt(def, _) => Some(AdtSimplifiedType(def.did)),
5961
ty::TyStr => Some(StrSimplifiedType),
60-
ty::TyArray(..) | ty::TySlice(_) => Some(ArraySimplifiedType),
61-
ty::TyRawPtr(_) => Some(PtrSimplifiedType),
62+
ty::TyArray(_, n) => Some(ArraySimplifiedType(n)),
63+
ty::TySlice(_) => Some(SliceSimplifiedType),
64+
ty::TyRawPtr(mt) => Some(PtrSimplifiedType(mt.mutbl)),
6265
ty::TyTrait(ref trait_info) => {
6366
Some(TraitSimplifiedType(trait_info.principal.def_id()))
6467
}

0 commit comments

Comments
 (0)