Permalink
Browse files

AST/HIR: Replace Path with Type in WhereEqPredicate

  • Loading branch information...
1 parent 47410b2 commit 828404684b486a2b741858970a150530228258bb @petrochenkov petrochenkov committed Jan 16, 2017
@@ -740,12 +740,12 @@ pub fn walk_where_predicate<'v, V: Visitor<'v>>(
walk_list!(visitor, visit_lifetime, bounds);
}
&WherePredicate::EqPredicate(WhereEqPredicate{id,
- ref path,
- ref ty,
+ ref lhs_ty,
+ ref rhs_ty,
..}) => {
visitor.visit_id(id);
- visitor.visit_path(path, id);
- visitor.visit_ty(ty);
+ visitor.visit_ty(lhs_ty);
+ visitor.visit_ty(rhs_ty);
}
}
}
@@ -719,13 +719,13 @@ impl<'a> LoweringContext<'a> {
})
}
WherePredicate::EqPredicate(WhereEqPredicate{ id,
- ref path,
- ref ty,
+ ref lhs_ty,
+ ref rhs_ty,
span}) => {
hir::WherePredicate::EqPredicate(hir::WhereEqPredicate {
id: id,
- path: self.lower_path(id, path, ParamMode::Explicit, false),
- ty: self.lower_ty(ty),
+ lhs_ty: self.lower_ty(lhs_ty),
+ rhs_ty: self.lower_ty(rhs_ty),
span: span,
})
}
@@ -403,8 +403,8 @@ pub struct WhereRegionPredicate {
pub struct WhereEqPredicate {
pub id: NodeId,
pub span: Span,
- pub path: Path,
- pub ty: P<Ty>,
+ pub lhs_ty: P<Ty>,
+ pub rhs_ty: P<Ty>,
}
pub type CrateConfig = HirVec<P<MetaItem>>;
@@ -2023,11 +2023,13 @@ impl<'a> State<'a> {
}
}
}
- &hir::WherePredicate::EqPredicate(hir::WhereEqPredicate{ref path, ref ty, ..}) => {
- self.print_path(path, false)?;
+ &hir::WherePredicate::EqPredicate(hir::WhereEqPredicate{ref lhs_ty,
+ ref rhs_ty,
+ ..}) => {
+ self.print_type(lhs_ty)?;
space(&mut self.s)?;
self.word_space("=")?;
- self.print_type(&ty)?;
+ self.print_type(rhs_ty)?;
}
}
}
@@ -323,12 +323,11 @@ impl<'a, 'tcx> Visitor<'tcx> for LifetimeContext<'a, 'tcx> {
self.visit_lifetime(bound);
}
}
- &hir::WherePredicate::EqPredicate(hir::WhereEqPredicate{ id,
- ref path,
- ref ty,
- .. }) => {
- self.visit_path(path, id);
- self.visit_ty(&ty);
+ &hir::WherePredicate::EqPredicate(hir::WhereEqPredicate{ref lhs_ty,
+ ref rhs_ty,
+ .. }) => {
+ self.visit_ty(lhs_ty);
+ self.visit_ty(rhs_ty);
}
}
}
@@ -853,7 +853,7 @@ impl<'a, 'tcx> Visitor<'tcx> for ObsoleteVisiblePrivateTypesVisitor<'a, 'tcx> {
}
&hir::WherePredicate::RegionPredicate(_) => {}
&hir::WherePredicate::EqPredicate(ref eq_pred) => {
- self.visit_ty(&eq_pred.ty);
+ self.visit_ty(&eq_pred.rhs_ty);
}
}
}
@@ -403,8 +403,8 @@ pub struct WhereRegionPredicate {
pub struct WhereEqPredicate {
pub id: NodeId,
pub span: Span,
- pub path: Path,
- pub ty: P<Ty>,
+ pub lhs_ty: P<Ty>,
+ pub rhs_ty: P<Ty>,
}
/// The set of MetaItems that define the compilation environment of the crate,
@@ -766,13 +766,13 @@ pub fn noop_fold_where_predicate<T: Folder>(
})
}
ast::WherePredicate::EqPredicate(ast::WhereEqPredicate{id,
- path,
- ty,
+ lhs_ty,
+ rhs_ty,
span}) => {
ast::WherePredicate::EqPredicate(ast::WhereEqPredicate{
id: fld.new_id(id),
- path: fld.fold_path(path),
- ty:fld.fold_ty(ty),
+ lhs_ty: fld.fold_ty(lhs_ty),
+ rhs_ty: fld.fold_ty(rhs_ty),
span: fld.new_span(span)
})
}
@@ -2849,11 +2849,13 @@ impl<'a> State<'a> {
..}) => {
self.print_lifetime_bounds(lifetime, bounds)?;
}
- ast::WherePredicate::EqPredicate(ast::WhereEqPredicate{ref path, ref ty, ..}) => {
- self.print_path(path, false, 0, false)?;
+ ast::WherePredicate::EqPredicate(ast::WhereEqPredicate{ref lhs_ty,
+ ref rhs_ty,
+ ..}) => {
+ self.print_type(lhs_ty)?;
space(&mut self.s)?;
self.word_space("=")?;
- self.print_type(&ty)?;
+ self.print_type(rhs_ty)?;
}
}
}
@@ -508,12 +508,11 @@ pub fn walk_generics<'a, V: Visitor<'a>>(visitor: &mut V, generics: &'a Generics
visitor.visit_lifetime(lifetime);
walk_list!(visitor, visit_lifetime, bounds);
}
- WherePredicate::EqPredicate(WhereEqPredicate{id,
- ref path,
- ref ty,
+ WherePredicate::EqPredicate(WhereEqPredicate{ref lhs_ty,
+ ref rhs_ty,
..}) => {
- visitor.visit_path(path, id);
- visitor.visit_ty(ty);
+ visitor.visit_ty(lhs_ty);
+ visitor.visit_ty(rhs_ty);
}
}
}
@@ -558,8 +558,8 @@ impl<'a> TraitDef<'a> {
ast::WherePredicate::EqPredicate(ast::WhereEqPredicate {
id: ast::DUMMY_NODE_ID,
span: self.span,
- path: we.path.clone(),
- ty: we.ty.clone(),
+ lhs_ty: we.lhs_ty.clone(),
+ rhs_ty: we.rhs_ty.clone(),
})
}
}

0 comments on commit 8284046

Please sign in to comment.