@@ -305,6 +305,7 @@ class CodeCompletionCallbacksImpl : public CodeCompletionCallbacks,
305305 void completeForEachPatternBeginning (bool hasTry, bool hasAwait) override ;
306306 void completeTypeAttrBeginning () override ;
307307 void completeOptionalBinding () override ;
308+ void completeWithoutConstraintType () override ;
308309
309310 void doneParsing (SourceFile *SrcFile) override ;
310311
@@ -664,6 +665,11 @@ void CodeCompletionCallbacksImpl::completeOptionalBinding() {
664665 Kind = CompletionKind::OptionalBinding;
665666}
666667
668+ void CodeCompletionCallbacksImpl::completeWithoutConstraintType () {
669+ CurDeclContext = P.CurDeclContext ;
670+ Kind = CompletionKind::WithoutConstraintType;
671+ }
672+
667673void CodeCompletionCallbacksImpl::completeTypeAttrBeginning () {
668674 CurDeclContext = P.CurDeclContext ;
669675 Kind = CompletionKind::TypeAttrBeginning;
@@ -975,6 +981,7 @@ void CodeCompletionCallbacksImpl::addKeywords(CodeCompletionResultSink &Sink,
975981 case CompletionKind::StmtLabel:
976982 case CompletionKind::TypeAttrBeginning:
977983 case CompletionKind::OptionalBinding:
984+ case CompletionKind::WithoutConstraintType:
978985 break ;
979986
980987 case CompletionKind::EffectsSpecifier:
@@ -2057,6 +2064,11 @@ void CodeCompletionCallbacksImpl::doneParsing(SourceFile *SrcFile) {
20572064 break ;
20582065 }
20592066
2067+ case CompletionKind::WithoutConstraintType: {
2068+ Lookup.getWithoutConstraintTypes ();
2069+ break ;
2070+ }
2071+
20602072 case CompletionKind::AfterIfStmtElse:
20612073 case CompletionKind::CaseStmtKeyword:
20622074 case CompletionKind::EffectsSpecifier:
0 commit comments