775 references to CurrentToken
Microsoft.CodeAnalysis.CSharp (775)
Parser\DirectiveParser.cs (28)
50
SyntaxKind contextualKind = this.
CurrentToken
.ContextualKind;
89
result = (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken) ?
377
switch (this.
CurrentToken
.Kind)
398
if (this.
CurrentToken
.Kind == SyntaxKind.StringLiteralToken &&
399
(line.IsMissing || line.GetTrailingTriviaWidth() > 0 || this.
CurrentToken
.GetLeadingTriviaWidth() > 0)) //require separation between line number and file name
414
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
433
var characterOffset = (
CurrentToken
.Kind == SyntaxKind.NumericLiteralToken) ?
546
SyntaxToken setting = this.
CurrentToken
.Kind switch
554
SyntaxToken target = this.
CurrentToken
.Kind switch
575
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WarningKeyword)
579
if (this.
CurrentToken
.Kind == SyntaxKind.DisableKeyword || this.
CurrentToken
.Kind == SyntaxKind.RestoreKeyword)
584
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfDirectiveToken)
589
if (this.
CurrentToken
.Kind == SyntaxKind.NumericLiteralToken)
601
else if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
622
if (this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
640
else if (this.
CurrentToken
.Kind == SyntaxKind.ChecksumKeyword)
729
if (this.
CurrentToken
.Kind != SyntaxKind.EndOfDirectiveToken &&
730
this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
749
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfDirectiveToken &&
750
this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
757
SyntaxToken endOfDirective = this.
CurrentToken
.Kind == SyntaxKind.EndOfDirectiveToken
778
while (this.
CurrentToken
.Kind == SyntaxKind.BarBarToken)
791
while (this.
CurrentToken
.Kind == SyntaxKind.AmpersandAmpersandToken)
804
while (this.
CurrentToken
.Kind == SyntaxKind.EqualsEqualsToken || this.
CurrentToken
.Kind == SyntaxKind.ExclamationEqualsToken)
816
if (this.
CurrentToken
.Kind == SyntaxKind.ExclamationToken)
827
var k = this.
CurrentToken
.Kind;
Parser\DocumentationCommentParser.cs (90)
81
if (this.
CurrentToken
.Kind != SyntaxKind.EndOfDocumentationCommentToken)
101
bool endTag = this.
CurrentToken
.Kind == SyntaxKind.LessThanSlashToken;
108
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfDocumentationCommentToken)
147
switch (this.
CurrentToken
.Kind)
171
switch (this.
CurrentToken
.Kind)
190
while (this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralToken
191
|| this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralNewLineToken
192
|| this.
CurrentToken
.Kind == SyntaxKind.XmlEntityLiteralToken)
218
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
258
if (this.
CurrentToken
.Kind != SyntaxKind.GreaterThanToken)
261
p => p.
CurrentToken
.Kind != SyntaxKind.GreaterThanToken,
328
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
344
p => p.
CurrentToken
.Kind != SyntaxKind.IdentifierName,
347
p => p.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken
348
|| p.
CurrentToken
.Kind == SyntaxKind.SlashGreaterThanToken
349
|| p.
CurrentToken
.Kind == SyntaxKind.LessThanToken
350
|| p.
CurrentToken
.Kind == SyntaxKind.LessThanSlashToken
351
|| p.
CurrentToken
.Kind == SyntaxKind.EndOfDocumentationCommentToken
352
|| p.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken,
452
switch (this.
CurrentToken
.Kind)
525
SyntaxToken openQuote = EatToken(this.
CurrentToken
.Kind == SyntaxKind.SingleQuoteToken
532
SyntaxToken current = this.
CurrentToken
;
539
current = this.
CurrentToken
;
606
while (this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralToken
607
|| this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralNewLineToken
608
|| this.
CurrentToken
.Kind == SyntaxKind.XmlEntityLiteralToken
609
|| this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
631
if (IsNonAsciiQuotationMark(this.
CurrentToken
))
636
var quoteKind = this.
CurrentToken
.Kind == SyntaxKind.SingleQuoteToken
650
if (IsNonAsciiQuotationMark(this.
CurrentToken
))
685
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
725
while (this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralToken
726
|| this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralNewLineToken
727
|| this.
CurrentToken
.Kind == SyntaxKind.MinusMinusToken)
752
while (this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralToken
753
|| this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralNewLineToken)
774
while (this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralToken
775
|| this.
CurrentToken
.Kind == SyntaxKind.XmlTextLiteralNewLineToken)
900
else if (type.Kind != SyntaxKind.QualifiedName && this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
940
switch (
CurrentToken
.Kind)
949
case SyntaxKind.IdentifierToken when
CurrentToken
.ContextualKind == SyntaxKind.ExtensionKeyword:
973
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.ThisKeyword);
987
Debug.Assert(
CurrentToken
.ContextualKind == SyntaxKind.ExtensionKeyword);
990
TypeArgumentListSyntax? typeArguments = (
CurrentToken
.Kind == SyntaxKind.LessThanToken) ? ParseTypeArguments(typeArgumentsMustBeIdentifiers: true) : null;
991
CrefParameterListSyntax? parameters = (
CurrentToken
.Kind == SyntaxKind.OpenParenToken) ? ParseCrefParameterList() : null;
993
if (parameters is null ||
CurrentToken
.Kind != SyntaxKind.DotToken)
1018
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OperatorKeyword);
1024
if (SyntaxFacts.IsAnyOverloadableOperator(
CurrentToken
.Kind))
1035
if (SyntaxFacts.IsUnaryOperatorDeclarationToken(
CurrentToken
.Kind) || SyntaxFacts.IsBinaryExpressionOperatorToken(
CurrentToken
.Kind))
1048
if (operatorToken.Kind == SyntaxKind.GreaterThanToken && LanguageParser.NoTriviaBetween(operatorToken,
CurrentToken
))
1050
if (
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
1054
if (LanguageParser.NoTriviaBetween(operatorToken2,
CurrentToken
) &&
1055
CurrentToken
.Kind is (SyntaxKind.GreaterThanToken or SyntaxKind.GreaterThanEqualsToken))
1091
else if (
CurrentToken
.Kind == SyntaxKind.EqualsToken)
1101
else if (
CurrentToken
.Kind == SyntaxKind.GreaterThanEqualsToken)
1159
if (LanguageParser.NoTriviaBetween(operatorToken,
CurrentToken
) &&
CurrentToken
.Kind == SyntaxKind.EqualsToken)
1181
(isConversion || SyntaxFacts.IsAnyOverloadableOperator(
CurrentToken
.Kind)))
1190
if (
CurrentToken
.Kind == SyntaxKind.UncheckedKeyword)
1207
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.ExplicitKeyword ||
1208
CurrentToken
.Kind == SyntaxKind.ImplicitKeyword);
1245
if (
CurrentToken
.Kind != openKind)
1255
while (
CurrentToken
.Kind == SyntaxKind.CommaToken || IsPossibleCrefParameter())
1259
if (
CurrentToken
.Kind != closeKind)
1270
Debug.Assert(
CurrentToken
.Kind != SyntaxKind.CommaToken);
1295
SyntaxKind kind = this.
CurrentToken
.Kind;
1317
switch (
CurrentToken
.Kind)
1327
if (
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword && refKindOpt is not null)
1354
if (
CurrentToken
.Kind != SyntaxKind.LessThanToken)
1364
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.LessThanToken);
1382
var currentKind =
CurrentToken
.Kind;
1384
SyntaxFacts.IsPredefinedType(
CurrentToken
.Kind))
1444
if (SyntaxFacts.IsPredefinedType(
CurrentToken
.Kind))
1453
else if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken && PeekToken(1).Kind == SyntaxKind.ColonColonToken)
1473
if (checkForMember && (leftName.IsMissing ||
CurrentToken
.Kind != SyntaxKind.DotToken))
1485
while (
CurrentToken
.Kind == SyntaxKind.DotToken)
1494
if (checkForMember && (rightName.IsMissing ||
CurrentToken
.Kind != SyntaxKind.DotToken))
1516
if (
CurrentToken
.Kind == SyntaxKind.QuestionToken)
1521
while (
CurrentToken
.Kind == SyntaxKind.AsteriskToken)
1526
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
1532
while (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
1538
while (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
1540
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
1590
switch (
CurrentToken
.Kind)
1602
return
CurrentToken
.Text == SyntaxFacts.GetText(SyntaxKind.LessThanToken) ||
1603
IsNonAsciiQuotationMark(
CurrentToken
);
1658
switch (
CurrentToken
.Kind)
1670
return
CurrentToken
.Text == SyntaxFacts.GetText(SyntaxKind.LessThanToken) ||
1671
IsNonAsciiQuotationMark(
CurrentToken
);
Parser\LanguageParser.cs (610)
96
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken)
251
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NamespaceKeyword);
264
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
268
else if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || IsPossibleNamespaceMemberDeclaration())
586
switch (this.
CurrentToken
.Kind)
675
if (this.
CurrentToken
.ContextualKind != SyntaxKind.GlobalKeyword || this.PeekToken(1).Kind != SyntaxKind.UsingKeyword)
870
switch (this.
CurrentToken
.Kind)
879
return IsPossibleStartOfTypeDeclaration(this.
CurrentToken
.Kind);
885
if (this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword)
902
return this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken;
927
return this.
CurrentToken
.Kind == SyntaxKind.ExternKeyword
940
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ExternKeyword);
964
var globalToken = this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword
968
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.UsingKeyword);
975
if (staticToken is null && unsafeToken != null && this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
987
var isAliasToFunctionPointer = alias != null && this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword;
1006
type = _syntaxFactory.IdentifierName(CreateMissingToken(SyntaxKind.IdentifierToken, this.
CurrentToken
.Kind));
1029
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken
1049
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
1067
if (SyntaxFacts.IsLiteralExpression(this.
CurrentToken
.Kind))
1111
return this.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken
1116
=> IsSomeWord(this.
CurrentToken
.Kind) && this.PeekToken(1).Kind == SyntaxKind.ColonToken;
1161
if (this.
CurrentToken
.Kind == SyntaxKind.DotToken)
1167
if (this.
CurrentToken
.Kind == SyntaxKind.MinusGreaterThanToken)
1172
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken &&
1185
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttribute(),
1186
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
1215
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
1240
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttributeArgument(),
1241
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
1275
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
1366
var newMod = GetModifierExcludingScoped(this.
CurrentToken
);
1503
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None);
1522
(this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword))
1539
var currentTokenKind = this.
CurrentToken
.Kind;
1561
var currentTokenKind = this.
CurrentToken
.Kind;
1579
if (SyntaxFacts.IsPredefinedType(this.
CurrentToken
.Kind))
1586
if (IsNonContextualModifier(this.
CurrentToken
))
1621
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword);
1645
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword);
1678
switch (this.
CurrentToken
.Kind)
1681
if (this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
1701
switch (this.
CurrentToken
.Kind)
1719
Debug.Assert(
CurrentToken
.ContextualKind is SyntaxKind.RecordKeyword or SyntaxKind.ExtensionKeyword);
1723
throw ExceptionUtilities.UnexpectedValue(this.
CurrentToken
.Kind);
1729
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.ClassKeyword or SyntaxKind.StructKeyword or SyntaxKind.InterfaceKeyword ||
1730
this.
CurrentToken
.ContextualKind is SyntaxKind.RecordKeyword or SyntaxKind.ExtensionKeyword);
1751
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
1764
var paramList =
CurrentToken
.Kind == SyntaxKind.OpenParenToken || isExtension
1776
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
1787
if (
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
1811
SyntaxKind kind = this.
CurrentToken
.Kind;
1847
? this.CreateMissingToken(SyntaxKind.CloseBraceToken, this.
CurrentToken
.Kind)
1870
if (this.
CurrentToken
.ContextualKind == SyntaxKind.RecordKeyword)
1873
recordModifier = this.
CurrentToken
.Kind is SyntaxKind.ClassKeyword or SyntaxKind.StructKeyword
1880
if (this.
CurrentToken
.Kind is SyntaxKind.StructKeyword or SyntaxKind.ClassKeyword &&
2034
SyntaxKind kind = this.
CurrentToken
.Kind;
2082
return this.IsPossibleMemberStart() || this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken;
2087
return this.
CurrentToken
.Kind is SyntaxKind.ColonToken or SyntaxKind.OpenBraceToken
2104
list.Add(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken
2111
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken ||
2117
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
2131
if (GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None)
2154
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttribute(),
2155
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || p.IsCurrentTokenWhereOfConstraintClause(),
2163
this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword &&
2170
while (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
2188
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.IsCurrentTokenWhereOfConstraintClause())
2202
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
2203
|| ((_termState & TerminatorState.IsEndOfTypeSignature) != 0 && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
2204
|| this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
2205
|| this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
2209
else if (haveComma = (this.
CurrentToken
.Kind == SyntaxKind.CommaToken) || this.IsPossibleTypeParameterConstraint())
2249
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleTypeParameterConstraint(),
2250
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || p.IsCurrentTokenWhereOfConstraintClause(),
2257
switch (this.
CurrentToken
.Kind)
2266
return (this.
CurrentToken
.ContextualKind == SyntaxKind.AllowsKeyword && PeekToken(1).Kind == SyntaxKind.RefKeyword) || this.IsTrueIdentifier();
2268
return IsPredefinedType(this.
CurrentToken
.Kind);
2274
return this.
CurrentToken
.Kind switch
2286
this.
CurrentToken
.Kind == SyntaxKind.QuestionToken
2318
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AllowsKeyword &&
2332
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken && PeekToken(1).Kind == SyntaxKind.RefKeyword)
2350
return CanStartMember(this.
CurrentToken
.Kind);
2411
switch (this.
CurrentToken
.Kind)
2421
if (
CurrentToken
.ContextualKind == SyntaxKind.RecordKeyword)
2563
switch (this.
CurrentToken
.Kind)
2610
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken)
2644
if (this.
CurrentToken
.Kind == SyntaxKind.ConstKeyword)
2657
if (this.
CurrentToken
.Kind == SyntaxKind.EventKeyword)
2663
if (this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword)
2675
if (this.
CurrentToken
.Kind == SyntaxKind.NamespaceKeyword)
2697
if (this.
CurrentToken
.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken &&
2942
if (
CurrentToken
.Kind == SyntaxKind.UsingKeyword)
2947
if (
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
2962
if (GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None &&
2963
this.
CurrentToken
.ContextualKind is not (SyntaxKind.PartialKeyword or SyntaxKind.AsyncKeyword or SyntaxKind.RequiredKeyword or SyntaxKind.FileKeyword) &&
2966
var misplacedModifier = this.
CurrentToken
;
3017
offset: incompleteMember.Width + incompleteMember.GetTrailingTriviaWidth() + this.
CurrentToken
.GetLeadingTriviaWidth(),
3018
this.
CurrentToken
.Width,
3020
this.
CurrentToken
.Text);
3037
|| this.
CurrentToken
.Kind is not SyntaxKind.OpenParenToken and not SyntaxKind.OpenBraceToken and not SyntaxKind.EqualsGreaterThanToken) &&
3065
if (IsStartOfPropertyBody(this.
CurrentToken
.Kind) ||
3066
(this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken && IsStartOfPropertyBody(this.PeekToken(1).Kind)))
3124
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken)
3130
if (this.
CurrentToken
.Kind == SyntaxKind.TildeToken)
3136
if (this.
CurrentToken
.Kind == SyntaxKind.ConstKeyword)
3142
if (this.
CurrentToken
.Kind == SyntaxKind.EventKeyword)
3148
if (this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword)
3255
return this.
CurrentToken
.ContextualKind == SyntaxKind.ExtensionKeyword &&
3287
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
3292
if (this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
3332
return this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword or SyntaxKind.OperatorKeyword;
3390
var currentTokenKind = this.
CurrentToken
.Kind;
3407
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.ColonToken or SyntaxKind.EqualsGreaterThanToken);
3410
var token = this.
CurrentToken
.Kind is SyntaxKind.BaseKeyword or SyntaxKind.ThisKeyword
3414
var argumentList = this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken
3432
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.TildeToken);
3458
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
3466
blockBody = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
3470
expressionBody = this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
3481
else if (parseSemicolonAfterBlock && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
3493
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
3499
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
3505
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
3521
=> this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken;
3525
return this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken;
3529
=> this.
CurrentToken
.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken;
3532
=> this.
CurrentToken
.Kind == (errored ? SyntaxKind.CloseParenToken : SyntaxKind.GreaterThanToken);
3535
=> this.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken;
3552
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
3557
else if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
3560
var colonToken = this.
CurrentToken
;
3610
switch (this.
CurrentToken
.Kind)
3629
if (this.
CurrentToken
.Kind is not (SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword))
3633
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
3643
if (this.
CurrentToken
.Kind == SyntaxKind.OperatorKeyword)
3657
(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken))
3663
separatorKind = this.
CurrentToken
.Kind;
3685
if (this.
CurrentToken
.Kind != SyntaxKind.OperatorKeyword ||
3707
var style = this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword
3717
if (!style.IsMissing && explicitInterfaceOpt is not null && this.
CurrentToken
.Kind != SyntaxKind.OperatorKeyword && style.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia))
3749
bool couldBeParameterList = this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken;
3754
this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
3785
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
3802
if (this.
CurrentToken
.Kind == SyntaxKind.OperatorKeyword)
3812
(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken);
3851
if (
CurrentToken
.Kind == SyntaxKind.UncheckedKeyword)
3870
var firstToken = this.
CurrentToken
;
3903
if (SyntaxFacts.IsAnyOverloadableOperator(this.
CurrentToken
.Kind))
3912
if (this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword)
3915
(opTokenErrorOffset, opTokenErrorWidth) = (0, this.
CurrentToken
.Width);
3947
var tk = this.
CurrentToken
;
3954
tk = this.
CurrentToken
;
4086
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
4094
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
4103
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
4138
if (this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken)
4144
Debug.Assert(IsStartOfPropertyBody(this.
CurrentToken
.Kind));
4146
var accessorList = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
4154
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
4162
else if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
4174
else if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
4246
if (this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken)
4281
var refKeyword = this.
CurrentToken
.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression)
4292
static p => p.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken && !p.IsPossibleAccessor(),
4299
return this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken
4301
|| SyntaxFacts.GetAccessorDeclarationKind(this.
CurrentToken
.ContextualKind) != SyntaxKind.None
4302
|| this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken // for accessor blocks w/ missing keyword
4303
|| this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken // for empty body accessors w/ missing keyword
4325
if (GetModifierExcludingScoped(this.
CurrentToken
) == DeclarationModifiers.None)
4473
var token = (first && !this.
CurrentToken
.ContainsDiagnostics) ? this.EatTokenEvenWithIncorrectKind(expected) : this.EatToken();
4499
var token = (first && !this.
CurrentToken
.ContainsDiagnostics) ? this.EatTokenWithPrejudice(errorCode) : this.EatToken();
4555
bool currentTokenIsSemicolon = this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken;
4556
bool currentTokenIsArrow = this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken;
4557
bool currentTokenIsOpenBraceToken = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken;
4739
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleParameter(),
4740
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
4747
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken;
4752
switch (this.
CurrentToken
.Kind)
4764
return IsParameterModifierExcludingScoped(this.
CurrentToken
) || IsPossibleScopedKeyword(isFunctionPointerParameter: false) || IsPredefinedType(this.
CurrentToken
.Kind);
4824
if (this.
CurrentToken
.Kind == SyntaxKind.ArgListKeyword)
4835
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && IsCurrentTokenWhereOfConstraintClause())
4842
identifier = allowOptionalIdentifier && this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken
4848
if (identifier is not null && this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind is SyntaxKind.CloseBracketToken)
4893
while (IsParameterModifierExcludingScoped(this.
CurrentToken
))
4895
if (this.
CurrentToken
.Kind is SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword or SyntaxKind.ReadOnlyKeyword)
4912
while (this.
CurrentToken
.Kind is SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword or SyntaxKind.ReadOnlyKeyword)
4925
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword);
4943
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.EventKeyword);
4967
if (explicitInterfaceOpt != null && this.
CurrentToken
.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken)
5019
if (explicitInterfaceOpt != null && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5046
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5099
if (this.
CurrentToken
.Kind == SyntaxKind.DotToken)
5115
return this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken;
5180
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5184
else if (stopOnCloseParen && this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
5188
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
5238
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
5239
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
5393
var currentTokenKind = this.
CurrentToken
.Kind;
5404
currentTokenKind = this.
CurrentToken
.Kind;
5454
switch (this.
CurrentToken
.Kind)
5465
var refKeyword = isLocalOrField && !isConst && this.
CurrentToken
.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression)
5542
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
5578
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or SyntaxKind.LessThanToken);
5586
(this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.EqualsGreaterThanToken ||
5587
this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword))
5597
switch (this.
CurrentToken
.Kind)
5609
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
5616
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.IsPossibleExpression();
5635
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword);
5646
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
5668
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.EnumKeyword);
5683
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
5699
if (
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5744
static p => p.
CurrentToken
.Kind is not SyntaxKind.CommaToken and not SyntaxKind.SemicolonToken && !p.IsPossibleEnumMemberDeclaration(),
5745
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
5760
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
5765
this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBraceToken
5775
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken || this.IsTrueIdentifier();
5780
return this.
CurrentToken
.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken;
5819
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
5859
var ctk = this.
CurrentToken
.Kind;
5871
result = this.AddError(result, ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
5897
if (this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword)
5910
return
CurrentToken
.ContextualKind == SyntaxKind.FieldKeyword &&
5917
if (this.
CurrentToken
.Kind != SyntaxKind.LessThanToken)
5947
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
5948
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
5959
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
5963
if (this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword)
5980
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
5990
this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword ? EatToken() : null,
6007
if (this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
6017
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6042
if (this.
CurrentToken
.Kind != SyntaxKind.LessThanToken)
6092
switch (this.
CurrentToken
.Kind)
6174
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6184
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6201
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
6207
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
6216
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6251
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
6278
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
6300
isDefinitelyTypeArgumentList = this.
CurrentToken
.Kind == SyntaxKind.CommaToken;
6318
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken);
6320
if (this.
CurrentToken
.Kind != SyntaxKind.GreaterThanToken)
6326
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken)
6335
if (lastScannedType is ScanTypeFlags.TupleType && this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken)
6348
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken;
6360
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6370
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6387
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
6394
if (tokenBreaksTypeArgumentList(this.
CurrentToken
))
6403
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken && tokenBreaksTypeArgumentList(this.PeekToken(1)))
6412
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken
6418
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken || this.IsPossibleType())
6488
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleType(),
6489
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken,
6497
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
6513
var varianceToken = this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword
6540
this.
CurrentToken
.Kind is not SyntaxKind.CommaToken and not SyntaxKind.GreaterThanToken &&
6562
=> this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken;
6566
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6604
if (this.
CurrentToken
.Kind == SyntaxKind.ThisKeyword)
6655
if (isEvent && this.
CurrentToken
.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken)
6726
separator = this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken
6739
if (this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken)
6768
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
6844
return this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken
6974
var tk = this.
CurrentToken
.Kind;
6995
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken || !this.IsTrueIdentifier())
7002
if (this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
7017
if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
7022
if (this.
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword)
7029
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken or SyntaxKind.ColonColonToken)
7032
if (this.
CurrentToken
.Kind is SyntaxKind.ColonColonToken)
7046
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken);
7086
else if (IsPredefinedType(this.
CurrentToken
.Kind))
7092
else if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
7097
if (result == ScanTypeFlags.NotType || mode == ParseTypeMode.DefinitePattern && this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
7117
switch (this.
CurrentToken
.Kind)
7158
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7163
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7196
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7214
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken);
7216
if (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
7238
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
7241
switch (
CurrentToken
)
7256
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
7273
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7286
if (!IsPossibleFunctionPointerParameterListStart(
CurrentToken
))
7326
if (!validStartingToken &&
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
7340
isNotExpectedFunction: static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
7361
if (this.
CurrentToken
.Kind == SyntaxKind.VoidKeyword && this.PeekToken(1).Kind != SyntaxKind.AsteriskToken)
7386
if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
7390
this.
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword ? this.EatToken() : null,
7434
switch (this.
CurrentToken
.Kind)
7482
while (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken);
7503
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.QuestionToken);
7526
if (mode == ParseTypeMode.AfterIs && this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken)
7553
return this.
CurrentToken
.Kind != SyntaxKind.ColonToken;
7580
if (IsTrueIdentifier(this.
CurrentToken
))
7589
if (this.
CurrentToken
.ContextualKind is SyntaxKind.AsyncKeyword or SyntaxKind.AwaitKeyword or SyntaxKind.FromKeyword)
7643
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken)
7652
this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or // ctor parameters
7687
while (IsMakingProgress(ref lastTokenPosition) && this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7689
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7702
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7743
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
7747
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7782
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
7783
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken,
7789
if (IsPredefinedType(this.
CurrentToken
.Kind))
7793
if (token.Kind == SyntaxKind.VoidKeyword && this.
CurrentToken
.Kind != SyntaxKind.AsteriskToken)
7802
if (IsTrueIdentifier() || this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken)
7807
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
7830
if (!IsPossibleFunctionPointerParameterListStart(
CurrentToken
))
7873
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7884
lessThanToken.IsMissing &&
CurrentToken
.Kind == SyntaxKind.CloseParenToken
7899
isNotExpectedFunction: static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
7907
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
7911
switch (
CurrentToken
)
7915
managedSpecifier = EatContextualToken(
CurrentToken
.ContextualKind);
7935
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
7953
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7983
=>
CurrentToken
.Kind == SyntaxKind.DelegateKeyword && PeekToken(1).Kind == SyntaxKind.AsteriskToken;
7994
while (this.
CurrentToken
.Kind == SyntaxKind.AsteriskToken)
8014
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
8028
while (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
8038
var isCollectionExpression = this.
CurrentToken
.Kind
8051
|| IsExpectedBinaryOperator(this.
CurrentToken
.Kind)
8052
|| IsExpectedAssignmentOperator(this.
CurrentToken
.Kind)
8053
|| (this.
CurrentToken
.ContextualKind is SyntaxKind.SwitchKeyword or SyntaxKind.WithKeyword && this.PeekToken(1).Kind is SyntaxKind.OpenBraceToken);
8057
this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
8116
switch (this.
CurrentToken
.Kind)
8212
bool beginsWithAwait = this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword;
8248
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword &&
8289
=>
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword && PeekToken(1).Kind == SyntaxKind.UsingKeyword;
8303
return this.
CurrentToken
.ContextualKind == SyntaxKind.YieldKeyword &&
8313
var tk = this.
CurrentToken
.Kind;
8341
tk = this.
CurrentToken
.ContextualKind;
8362
bool? typedIdentifier = IsPossibleTypedIdentifierStart(this.
CurrentToken
, this.PeekToken(1), allowThisKeyword: false);
8383
var tk = this.
CurrentToken
.ContextualKind;
8427
if (st == ScanTypeFlags.MustBeType && this.
CurrentToken
.Kind is not SyntaxKind.DotToken and not SyntaxKind.OpenParenToken)
8437
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
8445
return st == ScanTypeFlags.GenericTypeOrExpression && (IsDefiniteStatement() || IsTypeDeclarationStart() || IsAccessibilityModifier(
CurrentToken
.Kind));
8466
if (this.
CurrentToken
.Kind != SyntaxKind.UsingKeyword)
8532
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken)
8553
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
8560
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
8569
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.SemicolonToken;
8587
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
8594
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
8686
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword);
8714
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
8723
if (scanResult == ScanTypeFlags.TupleType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
8734
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NewKeyword);
8879
CSharpSyntaxNode openBrace = isAccessorBody && this.
CurrentToken
.Kind != SyntaxKind.OpenBraceToken
8960
while (this.
CurrentToken
.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken
8992
return this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
9004
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken,
9012
var tk = this.
CurrentToken
.Kind;
9049
var tk = this.
CurrentToken
.Kind;
9094
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken;
9157
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.TryKeyword or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword);
9170
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword);
9184
if (this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword)
9187
while (this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword)
9193
if (this.
CurrentToken
.Kind == SyntaxKind.FinallyKeyword)
9228
return this.
CurrentToken
.Kind is SyntaxKind.CloseBraceToken or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword;
9233
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword);
9240
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
9260
var keywordKind = this.
CurrentToken
.ContextualKind;
9292
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken
9301
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken
9309
return this.
CurrentToken
.Kind is SyntaxKind.CloseBraceToken
9316
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.CheckedKeyword or SyntaxKind.UncheckedKeyword);
9333
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DoKeyword);
9357
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken;
9374
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9395
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9405
var condition = this.
CurrentToken
.Kind is not SyntaxKind.SemicolonToken and not SyntaxKind.CommaToken
9414
var incrementors = this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken
9443
if (this.
CurrentToken
.ContextualKind == SyntaxKind.ScopedKeyword)
9452
isDeclaration = ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken;
9456
else if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
9473
else if (this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken)
9488
=> this.
CurrentToken
.Kind is SyntaxKind.CommaToken
9496
while (this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CommaToken)
9520
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken)
9524
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
9525
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
9532
return this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken;
9539
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForEachKeyword || this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9550
if (this.
CurrentToken
.Kind == SyntaxKind.ForKeyword)
9644
if (this.IsInAsync && this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword)
9652
if (this.
CurrentToken
.ContextualKind == SyntaxKind.ScopedKeyword)
9655
if (ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
9702
return this.
CurrentToken
.Kind == SyntaxKind.CommaToken;
9704
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseParenToken;
9717
if (!this.
CurrentToken
.IsIdentifierVar())
9756
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.GotoKeyword);
9764
if (this.
CurrentToken
.Kind is SyntaxKind.CaseKeyword or SyntaxKind.DefaultKeyword)
9789
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IfKeyword);
9802
var elseKeyword = this.
CurrentToken
.Kind != SyntaxKind.ElseKeyword ?
9813
if (this.
CurrentToken
.Kind != SyntaxKind.IfKeyword)
9854
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ElseKeyword);
9868
return this.
CurrentToken
.Kind != SyntaxKind.ElseKeyword
9877
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LockKeyword);
9889
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ReturnKeyword);
9893
this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken ? this.ParsePossibleRefExpression() : null,
9899
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.YieldKeyword);
9906
if (this.
CurrentToken
.Kind == SyntaxKind.BreakKeyword)
9915
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
9936
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.SwitchKeyword or SyntaxKind.CaseKeyword);
9961
if (this.
CurrentToken
.Kind is SyntaxKind.CaseKeyword)
10006
return this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword ||
10007
(this.
CurrentToken
.Kind == SyntaxKind.DefaultKeyword && this.PeekToken(1).Kind != SyntaxKind.OpenParenToken);
10021
if (this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword)
10025
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
10037
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhenKeyword && node is ExpressionSyntax ex)
10062
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DefaultKeyword);
10084
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ThrowKeyword);
10088
this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken ? this.ParseExpressionCore() : null,
10094
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.UnsafeKeyword);
10162
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
10189
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken &&
10221
bool condition1 = st == ScanTypeFlags.MustBeType && this.
CurrentToken
.Kind != SyntaxKind.DotToken;
10222
bool condition2 = st != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken;
10230
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.WhileKeyword);
10265
else if (this.
CurrentToken
.Kind == SyntaxKind.UsingKeyword)
10361
if (this.
CurrentToken
.ContextualKind != SyntaxKind.ScopedKeyword)
10373
if (this.
CurrentToken
.Kind is (SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword))
10402
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
10404
else if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
10420
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
10428
done = (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken);
10441
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
10471
return
CurrentToken
.ContextualKind == SyntaxKind.UnderscoreToken
10478
if (this.
CurrentToken
.ContextualKind != SyntaxKind.WhenKeyword)
10562
switch (this.
CurrentToken
.Kind)
10575
while (IsDeclarationModifier(k = this.
CurrentToken
.ContextualKind) || IsAdditionalLocalFunctionModifier(k))
10612
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken);
10618
if (IsDeclarationModifier(this.
CurrentToken
.Kind) ||
10619
IsAdditionalLocalFunctionModifier(this.
CurrentToken
.Kind))
10626
if (ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
10634
while (IsAdditionalLocalFunctionModifier(this.
CurrentToken
.ContextualKind));
10775
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
10818
if (IsScript && this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken)
10862
SyntaxKind tk = this.
CurrentToken
.Kind;
10908
return this.IsTrueIdentifier() || this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword;
11144
return (this.IsScript || this.IsInAsync) && this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword;
11149
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword)
11227
var tk = this.
CurrentToken
.Kind;
11269
if (this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword && IsInQuery)
11276
this.AddError(this.EatToken(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text));
11323
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken && precedence <= Precedence.Conditional)
11421
if (this.
CurrentToken
.Kind != SyntaxKind.ColonToken &&
11436
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
11448
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken && this.lexer.InterpolationFollowedByColon)
11507
var token1 = this.
CurrentToken
;
11609
if (operatorExpressionKind == SyntaxKind.SimpleAssignmentExpression &&
CurrentToken
.Kind == SyntaxKind.RefKeyword &&
11629
if (this.
CurrentToken
.Kind != SyntaxKind.DotToken)
11633
return nextToken.Kind == SyntaxKind.DotToken && NoTriviaBetween(this.
CurrentToken
, nextToken);
11651
if (this.
CurrentToken
is { Kind: SyntaxKind.DotToken } token3 &&
11721
var tk = this.
CurrentToken
.Kind;
11757
return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
11786
return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
11853
if (this.
CurrentToken
.Kind != SyntaxKind.DotToken || tk == SyntaxKind.VoidKeyword)
11888
switch (this.
CurrentToken
.Kind)
11900
expr = _syntaxFactory.PostfixUnaryExpression(SyntaxFacts.GetPostfixUnaryExpression(this.
CurrentToken
.Kind), expr, this.EatToken());
11935
if (this.
CurrentToken
.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia) &&
11969
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.BaseKeyword);
11983
if (precedence > Precedence.Assignment || !(this.
CurrentToken
.IsIdentifierVar() || IsPredefinedType(this.
CurrentToken
.Kind)))
11992
this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken && ScanDesignator() &&
11993
this.
CurrentToken
.Kind == SyntaxKind.EqualsToken;
11998
switch (this.
CurrentToken
.Kind)
12017
switch (this.
CurrentToken
.Kind)
12091
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken)
12130
return this.
CurrentToken
.Kind != SyntaxKind.ColonToken;
12143
while (this.
CurrentToken
.Kind == SyntaxKind.ExclamationToken)
12179
=> this.
CurrentToken
.Kind switch
12238
openToken = this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or SyntaxKind.OpenBracketToken
12245
if (this.
CurrentToken
.Kind != closeKind && this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken)
12273
else if (isIndexer && this.
CurrentToken
.Kind == closeKind)
12289
closeToken = this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken
12298
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken)
12302
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleArgumentExpression(),
12303
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
12310
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken;
12315
return IsValidArgumentRefKindKeyword(this.
CurrentToken
.Kind) || this.IsPossibleExpression();
12333
var nameColon = this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.ColonToken
12340
if (IsValidArgumentRefKindKeyword(this.
CurrentToken
.Kind) &&
12342
!(this.
CurrentToken
.Kind == SyntaxKind.RefKeyword &&
12350
if (isIndexer && this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBracketToken)
12354
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12386
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
12464
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12495
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12521
if (IsParameterModifierIncludingScoped(this.
CurrentToken
))
12547
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
12555
switch (this.
CurrentToken
.Kind)
12571
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12599
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12607
if (expression.Kind == SyntaxKind.IdentifierName && this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
12628
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12633
var argument = expression.Kind != SyntaxKind.IdentifierName || this.
CurrentToken
.Kind != SyntaxKind.ColonToken
12659
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12672
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
12679
if (forPattern && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
12701
return !forPattern || this.
CurrentToken
.Kind switch
12726
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken || CanFollowCast(this.
CurrentToken
.Kind);
12732
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken &&
12741
return CanFollowCast(this.
CurrentToken
.Kind);
12772
return this.
CurrentToken
.ContextualKind is SyntaxKind.OrKeyword or SyntaxKind.AndKeyword;
12801
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
12817
if (this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
12822
else if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
12836
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
12846
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
12854
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
12865
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
12874
if (st == ScanTypeFlags.NotType || this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12891
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
12899
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12971
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NewKeyword);
12990
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken);
13011
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleCollectionElement(),
13012
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13031
return this.
CurrentToken
.Kind == SyntaxKind.NewKeyword && this.PeekToken(1).Kind == SyntaxKind.OpenBraceToken;
13039
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken);
13076
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken;
13091
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken;
13107
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
13117
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13122
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
13144
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13155
switch (this.
CurrentToken
.Kind)
13274
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
13275
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13284
this.
CurrentToken
.Kind == SyntaxKind.ColonToken
13287
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13298
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13326
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.NewKeyword or SyntaxKind.StackAllocKeyword);
13353
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13393
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleVariableInitializer(),
13394
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13420
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13442
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken ? this.ParseArrayInitializer() : null);
13470
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13483
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBraceToken)
13514
if (this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
13520
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
13535
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword);
13560
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken &&
13597
if (
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13604
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13617
var identifier = (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.EqualsGreaterThanToken)
13634
=>
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13665
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleLambdaParameter(),
13666
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13673
switch (this.
CurrentToken
.Kind)
13691
return IsPredefinedType(this.
CurrentToken
.Kind);
13702
if (IsParameterModifierIncludingScoped(this.
CurrentToken
))
13729
if (IsPredefinedType(this.
CurrentToken
.Kind))
13735
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13745
if (this.IsTrueIdentifier(this.
CurrentToken
))
13772
=> IsTokenQueryContextualKeyword(this.
CurrentToken
);
13814
return this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword &&
13867
return this.ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken or SyntaxKind.InKeyword;
13892
switch (this.
CurrentToken
.ContextualKind)
13916
SelectOrGroupClauseSyntax selectOrGroupBy = this.
CurrentToken
.ContextualKind switch
13928
this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword
13935
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword);
13944
(this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken || SyntaxFacts.IsQueryContextualKeyword(this.
CurrentToken
.ContextualKind)))
13968
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.JoinKeyword);
13981
into: this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword
13988
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.LetKeyword);
13992
SyntaxFacts.IsReservedKeyword(this.
CurrentToken
.Kind) && this.PeekToken(1).Kind == SyntaxKind.EqualsToken
14001
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword);
14009
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.OrderByKeyword);
14017
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
14019
if (this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken)
14023
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
14044
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
14045
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseParenToken
14046
|| p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
14058
if (this.
CurrentToken
.ContextualKind is SyntaxKind.AscendingKeyword or SyntaxKind.DescendingKeyword)
14072
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.SelectKeyword);
14080
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.GroupKeyword);
14090
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword);
14221
if (requireOneElement || this.
CurrentToken
.Kind != closeTokenKind)
14238
if (this.
CurrentToken
.Kind == closeTokenKind)
14249
nodes.AddSeparator(this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
14256
if (this.
CurrentToken
.Kind == closeTokenKind)
14291
if (this.
CurrentToken
.Kind == separatorTokenKind)
14296
if (allowSemicolonAsSeparator && this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken)
14385
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken) return node;
14387
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
Parser\LanguageParser_InterpolatedString.cs (3)
40
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.InterpolatedStringToken);
407
if (this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
420
var leading = this.
CurrentToken
.GetLeadingTrivia();
Parser\LanguageParser_Patterns.cs (32)
61
while (this.
CurrentToken
.ContextualKind == SyntaxKind.OrKeyword)
78
var tk =
CurrentToken
.Kind;
84
if (tk == SyntaxKind.IdentifierToken && this.
CurrentToken
.ContextualKind != SyntaxKind.UnderscoreToken &&
85
(this.
CurrentToken
.ContextualKind != SyntaxKind.NameOfKeyword || this.PeekToken(1).Kind != SyntaxKind.OpenParenToken))
107
while (this.
CurrentToken
.ContextualKind == SyntaxKind.AndKeyword)
121
switch (this.
CurrentToken
.Kind)
143
switch (this.
CurrentToken
.Kind)
160
if (this.
CurrentToken
.ContextualKind == SyntaxKind.NotKeyword)
175
var tk = this.
CurrentToken
.Kind;
187
if (
CurrentToken
.ContextualKind == SyntaxKind.UnderscoreToken)
192
switch (
CurrentToken
.Kind)
244
switch (this.
CurrentToken
.Kind)
276
(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken || this.IsValidPatternDesignation(inSwitchArmPattern)))
285
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken && (type != null || !looksLikeCast()))
360
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
386
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
388
switch (
CurrentToken
.ContextualKind)
477
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
509
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken && ConvertPatternToExpressionIfPossible(pattern, permitTypeArguments: true) is ExpressionSyntax expr)
530
this.
CurrentToken
.Kind is
543
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBraceToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken)
550
if (@this._termState.HasFlag(TerminatorState.IsExpressionOrPatternInCaseLabelOfSwitchStatement) && @this.
CurrentToken
.Kind is SyntaxKind.ColonToken)
559
if (@this._termState.HasFlag(TerminatorState.IsPatternInSwitchExpressionArm) && @this.
CurrentToken
.Kind is SyntaxKind.EqualsGreaterThanToken or SyntaxKind.ColonToken)
563
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleSubpatternElement(),
564
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
584
while (this.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken)
590
var errantCase = this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword
609
this.
CurrentToken
.Kind == SyntaxKind.ColonToken
615
if (errantCase is null && switchExpressionCase.FullWidth == 0 && this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
622
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken)
624
var commaToken = this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
Parser\SyntaxParser.cs (12)
488
var ct = this.
CurrentToken
;
498
=> this.
CurrentToken
.Kind == kind ? this.EatToken() : null;
525
var ct = this.
CurrentToken
;
533
return CreateMissingToken(kind, this.
CurrentToken
.Kind);
541
var ct = this.
CurrentToken
;
548
var replacement = CreateMissingToken(expected, this.
CurrentToken
.Kind);
578
if (this.
CurrentToken
.Kind != kind)
592
if (this.
CurrentToken
.Kind != kind)
611
var token = this.
CurrentToken
;
649
if (this.
CurrentToken
.ContextualKind != kind)
663
var contextualKind = this.
CurrentToken
.ContextualKind;
847
var token = this.
CurrentToken
;