aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty/src/traits/chalk/mapping.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/hir_ty/src/traits/chalk/mapping.rs')
-rw-r--r--crates/hir_ty/src/traits/chalk/mapping.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/crates/hir_ty/src/traits/chalk/mapping.rs b/crates/hir_ty/src/traits/chalk/mapping.rs
index 5e4f97a46..59aaa5560 100644
--- a/crates/hir_ty/src/traits/chalk/mapping.rs
+++ b/crates/hir_ty/src/traits/chalk/mapping.rs
@@ -43,7 +43,7 @@ impl ToChalk for Ty {
43 chalk_ir::TyKind::OpaqueType(id, substitution).intern(&Interner) 43 chalk_ir::TyKind::OpaqueType(id, substitution).intern(&Interner)
44 } 44 }
45 45
46 TyKind::ForeignType(id) => chalk_ir::TyKind::Foreign(id).intern(&Interner), 46 TyKind::Foreign(id) => chalk_ir::TyKind::Foreign(id).intern(&Interner),
47 47
48 TyKind::Scalar(scalar) => chalk_ir::TyKind::Scalar(scalar).intern(&Interner), 48 TyKind::Scalar(scalar) => chalk_ir::TyKind::Scalar(scalar).intern(&Interner),
49 49
@@ -103,12 +103,12 @@ impl ToChalk for Ty {
103 }; 103 };
104 chalk_ir::TyKind::Dyn(bounded_ty).intern(&Interner) 104 chalk_ir::TyKind::Dyn(bounded_ty).intern(&Interner)
105 } 105 }
106 TyKind::Unknown => chalk_ir::TyKind::Error.intern(&Interner), 106 TyKind::Error => chalk_ir::TyKind::Error.intern(&Interner),
107 } 107 }
108 } 108 }
109 fn from_chalk(db: &dyn HirDatabase, chalk: chalk_ir::Ty<Interner>) -> Self { 109 fn from_chalk(db: &dyn HirDatabase, chalk: chalk_ir::Ty<Interner>) -> Self {
110 match chalk.data(&Interner).kind.clone() { 110 match chalk.data(&Interner).kind.clone() {
111 chalk_ir::TyKind::Error => TyKind::Unknown, 111 chalk_ir::TyKind::Error => TyKind::Error,
112 chalk_ir::TyKind::Array(ty, _size) => TyKind::Array(from_chalk(db, ty)), 112 chalk_ir::TyKind::Array(ty, _size) => TyKind::Array(from_chalk(db, ty)),
113 chalk_ir::TyKind::Placeholder(idx) => TyKind::Placeholder(idx), 113 chalk_ir::TyKind::Placeholder(idx) => TyKind::Placeholder(idx),
114 chalk_ir::TyKind::Alias(chalk_ir::AliasTy::Projection(proj)) => { 114 chalk_ir::TyKind::Alias(chalk_ir::AliasTy::Projection(proj)) => {
@@ -138,7 +138,7 @@ impl ToChalk for Ty {
138 TyKind::Function(FnPointer { num_args: (substs.len(&Interner) - 1), sig, substs }) 138 TyKind::Function(FnPointer { num_args: (substs.len(&Interner) - 1), sig, substs })
139 } 139 }
140 chalk_ir::TyKind::BoundVar(idx) => TyKind::BoundVar(idx), 140 chalk_ir::TyKind::BoundVar(idx) => TyKind::BoundVar(idx),
141 chalk_ir::TyKind::InferenceVar(_iv, _kind) => TyKind::Unknown, 141 chalk_ir::TyKind::InferenceVar(_iv, _kind) => TyKind::Error,
142 chalk_ir::TyKind::Dyn(where_clauses) => { 142 chalk_ir::TyKind::Dyn(where_clauses) => {
143 assert_eq!(where_clauses.bounds.binders.len(&Interner), 1); 143 assert_eq!(where_clauses.bounds.binders.len(&Interner), 1);
144 let bounds = where_clauses 144 let bounds = where_clauses
@@ -181,7 +181,7 @@ impl ToChalk for Ty {
181 181
182 chalk_ir::TyKind::Closure(id, subst) => TyKind::Closure(id, from_chalk(db, subst)), 182 chalk_ir::TyKind::Closure(id, subst) => TyKind::Closure(id, from_chalk(db, subst)),
183 183
184 chalk_ir::TyKind::Foreign(foreign_def_id) => TyKind::ForeignType(foreign_def_id), 184 chalk_ir::TyKind::Foreign(foreign_def_id) => TyKind::Foreign(foreign_def_id),
185 chalk_ir::TyKind::Generator(_, _) => unimplemented!(), // FIXME 185 chalk_ir::TyKind::Generator(_, _) => unimplemented!(), // FIXME
186 chalk_ir::TyKind::GeneratorWitness(_, _) => unimplemented!(), // FIXME 186 chalk_ir::TyKind::GeneratorWitness(_, _) => unimplemented!(), // FIXME
187 } 187 }