Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide_completion/src/completions/pattern.rs')
| -rw-r--r-- | crates/ide_completion/src/completions/pattern.rs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/crates/ide_completion/src/completions/pattern.rs b/crates/ide_completion/src/completions/pattern.rs index dac777a69b..0d3a49c668 100644 --- a/crates/ide_completion/src/completions/pattern.rs +++ b/crates/ide_completion/src/completions/pattern.rs @@ -141,7 +141,8 @@ fn pattern_path_completion( | hir::PathResolution::SelfType(_) | hir::PathResolution::Def(hir::ModuleDef::Adt(hir::Adt::Struct(_))) | hir::PathResolution::Def(hir::ModuleDef::Adt(hir::Adt::Enum(_))) - | hir::PathResolution::Def(hir::ModuleDef::Adt(hir::Adt::Union(_)))) => { + | hir::PathResolution::Def(hir::ModuleDef::Adt(hir::Adt::Union(_))) + | hir::PathResolution::Def(hir::ModuleDef::BuiltinType(_))) => { let ty = match res { hir::PathResolution::TypeParam(param) => param.ty(ctx.db), hir::PathResolution::SelfType(impl_def) => impl_def.self_ty(ctx.db), @@ -158,6 +159,13 @@ fn pattern_path_completion( hir::PathResolution::Def(hir::ModuleDef::Adt(hir::Adt::Union(u))) => { u.ty(ctx.db) } + hir::PathResolution::Def(hir::ModuleDef::BuiltinType(ty)) => { + let module = match ctx.module { + Some(m) => m, + None => return, + }; + ty.ty(ctx.db, module) + } _ => return, }; |