@@ -283,6 +283,7 @@ class CodeCompletionCallbacksImpl : public CodeCompletionCallbacks,
283283
284284 void completePoundAvailablePlatform () override ;
285285 void completeImportDecl (ImportPath::Builder &Path) override ;
286+ void completeUsingDecl () override ;
286287 void completeUnresolvedMember (CodeCompletionExpr *E,
287288 SourceLoc DotLoc) override ;
288289 void completeCallArg (CodeCompletionExpr *E) override ;
@@ -550,6 +551,11 @@ void CodeCompletionCallbacksImpl::completeImportDecl(
550551 Path.pop_back ();
551552}
552553
554+ void CodeCompletionCallbacksImpl::completeUsingDecl () {
555+ Kind = CompletionKind::Using;
556+ CurDeclContext = P.CurDeclContext ;
557+ }
558+
553559void CodeCompletionCallbacksImpl::completeUnresolvedMember (CodeCompletionExpr *E,
554560 SourceLoc DotLoc) {
555561 Kind = CompletionKind::UnresolvedMember;
@@ -990,6 +996,7 @@ void CodeCompletionCallbacksImpl::addKeywords(CodeCompletionResultSink &Sink,
990996 case CompletionKind::AttributeBegin:
991997 case CompletionKind::PoundAvailablePlatform:
992998 case CompletionKind::Import:
999+ case CompletionKind::Using:
9931000 case CompletionKind::UnresolvedMember:
9941001 case CompletionKind::AfterPoundExpr:
9951002 case CompletionKind::AfterPoundDirective:
@@ -1915,7 +1922,10 @@ void CodeCompletionCallbacksImpl::doneParsing(SourceFile *SrcFile) {
19151922 Lookup.addImportModuleNames ();
19161923 break ;
19171924 }
1918-
1925+ case CompletionKind::Using: {
1926+ Lookup.addUsingSpecifiers ();
1927+ break ;
1928+ }
19191929 case CompletionKind::AfterPoundDirective: {
19201930 addPoundDirectives (CompletionContext.getResultSink ());
19211931
0 commit comments