Use lang-item instead of db lookup for FnTrait kind

This commit is contained in:
Shoyu Vanilla 2024-02-27 00:38:53 +09:00
parent 46cdce1b53
commit a4021f6ed5
2 changed files with 10 additions and 9 deletions

View file

@ -217,6 +217,15 @@ impl FnTrait {
}
}
pub const fn from_lang_item(lang_item: LangItem) -> Option<Self> {
match lang_item {
LangItem::FnOnce => Some(FnTrait::FnOnce),
LangItem::FnMut => Some(FnTrait::FnMut),
LangItem::Fn => Some(FnTrait::Fn),
_ => None,
}
}
pub const fn to_chalk_ir(self) -> rust_ir::ClosureKind {
match self {
FnTrait::FnOnce => rust_ir::ClosureKind::FnOnce,