|
@@ -1900,6 +1900,7 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
Builder.AddTypedTextChunk("namespace");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddPlaceholderChunk("identifier");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("declarations");
|
|
@@ -2048,15 +2049,19 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
if (SemaRef.getLangOpts().CPlusPlus && Results.includeCodePatterns() &&
|
|
|
SemaRef.getLangOpts().CXXExceptions) {
|
|
|
Builder.AddTypedTextChunk("try");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("statements");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightBrace);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddTextChunk("catch");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftParen);
|
|
|
Builder.AddPlaceholderChunk("declaration");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightParen);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("statements");
|
|
@@ -2070,12 +2075,14 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
if (Results.includeCodePatterns()) {
|
|
|
// if (condition) { statements }
|
|
|
Builder.AddTypedTextChunk("if");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftParen);
|
|
|
if (SemaRef.getLangOpts().CPlusPlus)
|
|
|
Builder.AddPlaceholderChunk("condition");
|
|
|
else
|
|
|
Builder.AddPlaceholderChunk("expression");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightParen);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("statements");
|
|
@@ -2085,12 +2092,14 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
|
|
|
// switch (condition) { }
|
|
|
Builder.AddTypedTextChunk("switch");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftParen);
|
|
|
if (SemaRef.getLangOpts().CPlusPlus)
|
|
|
Builder.AddPlaceholderChunk("condition");
|
|
|
else
|
|
|
Builder.AddPlaceholderChunk("expression");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightParen);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("cases");
|
|
@@ -2118,12 +2127,14 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
if (Results.includeCodePatterns()) {
|
|
|
/// while (condition) { statements }
|
|
|
Builder.AddTypedTextChunk("while");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftParen);
|
|
|
if (SemaRef.getLangOpts().CPlusPlus)
|
|
|
Builder.AddPlaceholderChunk("condition");
|
|
|
else
|
|
|
Builder.AddPlaceholderChunk("expression");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightParen);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("statements");
|
|
@@ -2133,12 +2144,14 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
|
|
|
// do { statements } while ( expression );
|
|
|
Builder.AddTypedTextChunk("do");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("statements");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightBrace);
|
|
|
Builder.AddTextChunk("while");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftParen);
|
|
|
Builder.AddPlaceholderChunk("expression");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightParen);
|
|
@@ -2146,16 +2159,20 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
|
|
|
|
|
|
// for ( for-init-statement ; condition ; expression ) { statements }
|
|
|
Builder.AddTypedTextChunk("for");
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftParen);
|
|
|
if (SemaRef.getLangOpts().CPlusPlus || SemaRef.getLangOpts().C99)
|
|
|
Builder.AddPlaceholderChunk("init-statement");
|
|
|
else
|
|
|
Builder.AddPlaceholderChunk("init-expression");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_SemiColon);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddPlaceholderChunk("condition");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_SemiColon);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddPlaceholderChunk("inc-expression");
|
|
|
Builder.AddChunk(CodeCompletionString::CK_RightParen);
|
|
|
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_LeftBrace);
|
|
|
Builder.AddChunk(CodeCompletionString::CK_VerticalSpace);
|
|
|
Builder.AddPlaceholderChunk("statements");
|