Skip to content

Commit 1c546b3

Browse files
committed
Handle lowering for Ty::Raw
1 parent 8141914 commit 1c546b3

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

chalk-integration/src/lowering.rs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1210,6 +1210,14 @@ impl LowerTy for Ty {
12101210
substitution: chalk_ir::Substitution::empty(interner),
12111211
})
12121212
.intern(interner)),
1213+
1214+
Ty::Raw { mutability, ty } => Ok(chalk_ir::TyData::Apply(chalk_ir::ApplicationTy {
1215+
name: chalk_ir::TypeName::Raw(ast_mutability_to_chalk_mutability(mutability.clone())),
1216+
substitution: chalk_ir::Substitution::from_fallible(
1217+
interner,
1218+
std::iter::once(Ok(ty.lower(env)?)),
1219+
)?,
1220+
}).intern(interner)),
12131221
}
12141222
}
12151223
}
@@ -1591,3 +1599,10 @@ fn ast_scalar_to_chalk_scalar(scalar: ScalarType) -> chalk_ir::Scalar {
15911599
ScalarType::Char => chalk_ir::Scalar::Char,
15921600
}
15931601
}
1602+
1603+
fn ast_mutability_to_chalk_mutability(mutability: Mutability) -> chalk_ir::Mutability {
1604+
match mutability {
1605+
Mutability::Mut => chalk_ir::Mutability::Mut,
1606+
Mutability::Not => chalk_ir::Mutability::Not,
1607+
}
1608+
}

0 commit comments

Comments
 (0)