aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/ty
diff options
context:
space:
mode:
authorFlorian Diebold <[email protected]>2019-09-14 09:04:56 +0100
committerFlorian Diebold <[email protected]>2019-09-14 09:04:56 +0100
commita61615c95537ec85b6b52505f42cbd9481adf89d (patch)
treeb9e0af636566398fd983bca29f3af20405c9da51 /crates/ra_hir/src/ty
parentb8c16ec002d48f4fb9d883d091114ccd1286ba47 (diff)
Upgrade Chalk
... and remove Ty::UnselectedProjection. It'll be handled differently.
Diffstat (limited to 'crates/ra_hir/src/ty')
-rw-r--r--crates/ra_hir/src/ty/infer.rs4
-rw-r--r--crates/ra_hir/src/ty/traits/chalk.rs9
2 files changed, 0 insertions, 13 deletions
diff --git a/crates/ra_hir/src/ty/infer.rs b/crates/ra_hir/src/ty/infer.rs
index 3ee083a04..bf57bb3b7 100644
--- a/crates/ra_hir/src/ty/infer.rs
+++ b/crates/ra_hir/src/ty/infer.rs
@@ -429,10 +429,6 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
429 let ty = self.resolve_ty_as_possible(&mut vec![], ty); 429 let ty = self.resolve_ty_as_possible(&mut vec![], ty);
430 ty.fold(&mut |ty| match ty { 430 ty.fold(&mut |ty| match ty {
431 Ty::Projection(proj_ty) => self.normalize_projection_ty(proj_ty), 431 Ty::Projection(proj_ty) => self.normalize_projection_ty(proj_ty),
432 Ty::UnselectedProjection(proj_ty) => {
433 // FIXME use Chalk's unselected projection support
434 Ty::UnselectedProjection(proj_ty)
435 }
436 _ => ty, 432 _ => ty,
437 }) 433 })
438 } 434 }
diff --git a/crates/ra_hir/src/ty/traits/chalk.rs b/crates/ra_hir/src/ty/traits/chalk.rs
index 0367c6560..c748e9d84 100644
--- a/crates/ra_hir/src/ty/traits/chalk.rs
+++ b/crates/ra_hir/src/ty/traits/chalk.rs
@@ -65,14 +65,6 @@ impl ToChalk for Ty {
65 let parameters = proj_ty.parameters.to_chalk(db); 65 let parameters = proj_ty.parameters.to_chalk(db);
66 chalk_ir::ProjectionTy { associated_ty_id, parameters }.cast() 66 chalk_ir::ProjectionTy { associated_ty_id, parameters }.cast()
67 } 67 }
68 Ty::UnselectedProjection(proj_ty) => {
69 let type_name = lalrpop_intern::intern(&proj_ty.type_name.to_string());
70 let parameters = proj_ty.parameters.to_chalk(db);
71 chalk_ir::Ty::UnselectedProjection(chalk_ir::UnselectedProjectionTy {
72 type_name,
73 parameters,
74 })
75 }
76 Ty::Param { idx, .. } => { 68 Ty::Param { idx, .. } => {
77 PlaceholderIndex { ui: UniverseIndex::ROOT, idx: idx as usize }.to_ty() 69 PlaceholderIndex { ui: UniverseIndex::ROOT, idx: idx as usize }.to_ty()
78 } 70 }
@@ -113,7 +105,6 @@ impl ToChalk for Ty {
113 } 105 }
114 } 106 }
115 chalk_ir::Ty::Projection(_) => unimplemented!(), 107 chalk_ir::Ty::Projection(_) => unimplemented!(),
116 chalk_ir::Ty::UnselectedProjection(_) => unimplemented!(),
117 chalk_ir::Ty::ForAll(_) => unimplemented!(), 108 chalk_ir::Ty::ForAll(_) => unimplemented!(),
118 chalk_ir::Ty::BoundVar(idx) => Ty::Bound(idx as u32), 109 chalk_ir::Ty::BoundVar(idx) => Ty::Bound(idx as u32),
119 chalk_ir::Ty::InferenceVar(_iv) => panic!("unexpected chalk infer ty"), 110 chalk_ir::Ty::InferenceVar(_iv) => panic!("unexpected chalk infer ty"),