780 references to CurrentToken
Microsoft.CodeAnalysis.CSharp (780)
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 (613)
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)
871
switch (this.
CurrentToken
.Kind)
880
return IsPossibleStartOfTypeDeclaration(this.
CurrentToken
.Kind);
886
if (this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword)
903
return this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken;
928
return this.
CurrentToken
.Kind == SyntaxKind.ExternKeyword
941
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ExternKeyword);
965
var globalToken = this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword
969
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.UsingKeyword);
976
if (staticToken is null && unsafeToken != null && this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
988
var isAliasToFunctionPointer = alias != null && this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword;
1007
type = _syntaxFactory.IdentifierName(CreateMissingToken(SyntaxKind.IdentifierToken, this.
CurrentToken
.Kind));
1030
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken
1050
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
1068
if (SyntaxFacts.IsLiteralExpression(this.
CurrentToken
.Kind))
1112
return this.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken
1117
=> IsSomeWord(this.
CurrentToken
.Kind) && this.PeekToken(1).Kind == SyntaxKind.ColonToken;
1162
if (this.
CurrentToken
.Kind == SyntaxKind.DotToken)
1168
if (this.
CurrentToken
.Kind == SyntaxKind.MinusGreaterThanToken)
1173
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken &&
1186
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttribute(),
1187
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
1216
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
1241
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttributeArgument(),
1242
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
1276
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
1371
var newMod = GetModifierExcludingScoped(this.
CurrentToken
);
1548
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None);
1567
(this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword))
1584
var currentTokenKind = this.
CurrentToken
.Kind;
1606
var currentTokenKind = this.
CurrentToken
.Kind;
1624
if (SyntaxFacts.IsPredefinedType(this.
CurrentToken
.Kind))
1631
if (IsNonContextualModifier(this.
CurrentToken
))
1666
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword);
1702
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword);
1735
switch (this.
CurrentToken
.Kind)
1738
if (this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
1758
switch (this.
CurrentToken
.Kind)
1776
Debug.Assert(
CurrentToken
.ContextualKind is SyntaxKind.RecordKeyword or SyntaxKind.ExtensionKeyword or SyntaxKind.UnionKeyword);
1780
throw ExceptionUtilities.UnexpectedValue(this.
CurrentToken
.Kind);
1786
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.ClassKeyword or SyntaxKind.StructKeyword or SyntaxKind.InterfaceKeyword ||
1787
this.
CurrentToken
.ContextualKind is SyntaxKind.RecordKeyword or SyntaxKind.ExtensionKeyword or SyntaxKind.UnionKeyword);
1809
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
1822
var paramList =
CurrentToken
.Kind == SyntaxKind.OpenParenToken || isExtension
1834
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
1845
if (
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
1869
SyntaxKind kind = this.
CurrentToken
.Kind;
1905
? this.CreateMissingToken(SyntaxKind.CloseBraceToken, this.
CurrentToken
.Kind)
1928
if (this.
CurrentToken
.ContextualKind == SyntaxKind.RecordKeyword)
1931
recordModifier = this.
CurrentToken
.Kind is SyntaxKind.ClassKeyword or SyntaxKind.StructKeyword
1938
if (this.
CurrentToken
.Kind is SyntaxKind.StructKeyword or SyntaxKind.ClassKeyword &&
2108
SyntaxKind kind = this.
CurrentToken
.Kind;
2156
return this.IsPossibleMemberStart() || this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken;
2161
return this.
CurrentToken
.Kind is SyntaxKind.ColonToken or SyntaxKind.OpenBraceToken
2178
list.Add(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken
2185
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken ||
2191
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
2205
if (GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None)
2228
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttribute(),
2229
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || p.IsCurrentTokenWhereOfConstraintClause(),
2237
this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword &&
2244
while (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
2262
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.IsCurrentTokenWhereOfConstraintClause())
2276
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
2277
|| ((_termState & TerminatorState.IsEndOfTypeSignature) != 0 && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
2278
|| this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
2279
|| this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
2283
else if (haveComma = (this.
CurrentToken
.Kind == SyntaxKind.CommaToken) || this.IsPossibleTypeParameterConstraint())
2323
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleTypeParameterConstraint(),
2324
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || p.IsCurrentTokenWhereOfConstraintClause(),
2331
switch (this.
CurrentToken
.Kind)
2340
return (this.
CurrentToken
.ContextualKind == SyntaxKind.AllowsKeyword && PeekToken(1).Kind == SyntaxKind.RefKeyword) || this.IsTrueIdentifier();
2342
return IsPredefinedType(this.
CurrentToken
.Kind);
2348
return this.
CurrentToken
.Kind switch
2360
this.
CurrentToken
.Kind == SyntaxKind.QuestionToken
2392
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AllowsKeyword &&
2406
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken && PeekToken(1).Kind == SyntaxKind.RefKeyword)
2424
return CanStartMember(this.
CurrentToken
.Kind);
2485
switch (this.
CurrentToken
.Kind)
2496
switch (
CurrentToken
.ContextualKind)
2647
switch (this.
CurrentToken
.Kind)
2693
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken)
2727
if (this.
CurrentToken
.Kind == SyntaxKind.ConstKeyword)
2740
if (this.
CurrentToken
.Kind == SyntaxKind.EventKeyword)
2746
if (this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword)
2758
if (this.
CurrentToken
.Kind == SyntaxKind.NamespaceKeyword)
2780
if (this.
CurrentToken
.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken &&
3021
if (
CurrentToken
.Kind == SyntaxKind.UsingKeyword)
3026
if (
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
3041
if (GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None &&
3042
this.
CurrentToken
.ContextualKind is not (SyntaxKind.PartialKeyword or SyntaxKind.AsyncKeyword or SyntaxKind.RequiredKeyword or SyntaxKind.FileKeyword or SyntaxKind.ClosedKeyword or SyntaxKind.SafeKeyword) &&
3045
var misplacedModifier = this.
CurrentToken
;
3108
offset: incompleteMember.Width + incompleteMember.GetTrailingTriviaWidth() + this.
CurrentToken
.GetLeadingTriviaWidth(),
3109
this.
CurrentToken
.Width,
3111
this.
CurrentToken
.Text);
3175
|| this.
CurrentToken
.Kind is not SyntaxKind.OpenParenToken and not SyntaxKind.OpenBraceToken and not SyntaxKind.EqualsGreaterThanToken) &&
3283
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken)
3289
if (this.
CurrentToken
.Kind == SyntaxKind.TildeToken)
3295
if (this.
CurrentToken
.Kind == SyntaxKind.ConstKeyword)
3301
if (this.
CurrentToken
.Kind == SyntaxKind.EventKeyword)
3307
if (this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword)
3415
return this.
CurrentToken
.ContextualKind == SyntaxKind.ExtensionKeyword &&
3447
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
3452
if (this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
3490
return this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword or SyntaxKind.OperatorKeyword;
3548
var currentTokenKind = this.
CurrentToken
.Kind;
3565
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.ColonToken or SyntaxKind.EqualsGreaterThanToken);
3568
var token = this.
CurrentToken
.Kind is SyntaxKind.BaseKeyword or SyntaxKind.ThisKeyword
3572
var argumentList = this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken
3590
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.TildeToken);
3616
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
3624
blockBody = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
3628
expressionBody = this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
3639
else if (parseSemicolonAfterBlock && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
3651
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
3657
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
3663
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
3679
=> this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken;
3683
return this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken;
3687
=> this.
CurrentToken
.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken;
3690
=> this.
CurrentToken
.Kind == (errored ? SyntaxKind.CloseParenToken : SyntaxKind.GreaterThanToken);
3693
=> this.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken;
3710
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
3715
else if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
3718
var colonToken = this.
CurrentToken
;
3765
switch (this.
CurrentToken
.Kind)
3784
if (this.
CurrentToken
.Kind is not (SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword))
3788
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
3798
if (this.
CurrentToken
.Kind == SyntaxKind.OperatorKeyword)
3812
(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken))
3818
separatorKind = this.
CurrentToken
.Kind;
3840
if (this.
CurrentToken
.Kind != SyntaxKind.OperatorKeyword ||
3862
var style = this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword
3872
if (!style.IsMissing && explicitInterfaceOpt is not null && this.
CurrentToken
.Kind != SyntaxKind.OperatorKeyword && style.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia))
3904
bool couldBeParameterList = this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken;
3909
this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
3940
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
3957
if (this.
CurrentToken
.Kind == SyntaxKind.OperatorKeyword)
3967
(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken);
4006
if (
CurrentToken
.Kind == SyntaxKind.UncheckedKeyword)
4025
var firstToken = this.
CurrentToken
;
4058
if (SyntaxFacts.IsAnyOverloadableOperator(this.
CurrentToken
.Kind))
4067
if (this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword)
4070
(opTokenErrorOffset, opTokenErrorWidth) = (0, this.
CurrentToken
.Width);
4102
var tk = this.
CurrentToken
;
4109
tk = this.
CurrentToken
;
4241
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
4249
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
4258
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
4293
if (this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken)
4301
var accessorList = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
4309
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
4315
else if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
4327
else if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
4412
if (this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken)
4447
var refKeyword = this.
CurrentToken
.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression)
4458
static p => p.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken && !p.IsPossibleAccessor(),
4465
return this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken
4467
|| SyntaxFacts.GetAccessorDeclarationKind(this.
CurrentToken
.ContextualKind) != SyntaxKind.None
4468
|| this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken // for accessor blocks w/ missing keyword
4469
|| this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken // for empty body accessors w/ missing keyword
4491
if (GetModifierExcludingScoped(this.
CurrentToken
) == DeclarationModifiers.None)
4639
var token = (first && !this.
CurrentToken
.ContainsDiagnostics) ? this.EatTokenEvenWithIncorrectKind(expected) : this.EatToken();
4665
var token = (first && !this.
CurrentToken
.ContainsDiagnostics) ? this.EatTokenWithPrejudice(errorCode) : this.EatToken();
4721
bool currentTokenIsSemicolon = this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken;
4722
bool currentTokenIsArrow = this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken;
4723
bool currentTokenIsOpenBraceToken = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken;
4905
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleParameter(),
4906
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
4913
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken;
4918
switch (this.
CurrentToken
.Kind)
4930
return IsParameterModifierExcludingScoped(this.
CurrentToken
) ||
4932
IsPredefinedType(this.
CurrentToken
.Kind);
4992
if (this.
CurrentToken
.Kind == SyntaxKind.ArgListKeyword)
5003
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && IsCurrentTokenWhereOfConstraintClause())
5010
identifier = identifierIsOptional && this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken
5016
if (identifier is not null && this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind is SyntaxKind.CloseBracketToken)
5065
if (IsParameterModifierExcludingScoped(this.
CurrentToken
))
5111
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword);
5129
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.EventKeyword);
5153
if (explicitInterfaceOpt != null && this.
CurrentToken
.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken)
5205
if (explicitInterfaceOpt != null && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5232
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5285
if (this.
CurrentToken
.Kind == SyntaxKind.DotToken)
5301
return this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken;
5366
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5370
else if (stopOnCloseParen && this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
5374
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
5424
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
5425
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
5580
var currentTokenKind = this.
CurrentToken
.Kind;
5591
currentTokenKind = this.
CurrentToken
.Kind;
5641
switch (this.
CurrentToken
.Kind)
5652
var refKeyword = isLocalOrField && !isConst && this.
CurrentToken
.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression)
5729
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
5747
Debug.Assert(this.
CurrentToken
.Kind != SyntaxKind.EqualsToken);
5787
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
5801
this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
5826
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or SyntaxKind.LessThanToken);
5834
(this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.EqualsGreaterThanToken ||
5835
this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword))
5845
switch (this.
CurrentToken
.Kind)
5857
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
5864
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.IsPossibleExpression();
5883
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword);
5894
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
5916
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.EnumKeyword);
5931
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
5947
if (
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5992
static p => p.
CurrentToken
.Kind is not SyntaxKind.CommaToken and not SyntaxKind.SemicolonToken && !p.IsPossibleEnumMemberDeclaration(),
5993
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
6008
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
6013
this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBraceToken
6023
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken || this.IsTrueIdentifier();
6028
return this.
CurrentToken
.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken;
6067
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
6107
var ctk = this.
CurrentToken
.Kind;
6119
result = this.AddError(result, ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
6145
if (this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword)
6158
return
CurrentToken
.ContextualKind == SyntaxKind.FieldKeyword &&
6165
if (this.
CurrentToken
.Kind != SyntaxKind.LessThanToken)
6195
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
6196
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
6208
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken or SyntaxKind.InKeyword or SyntaxKind.OutKeyword)
6217
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
6236
this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword ? EatToken() : null,
6253
if (this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
6263
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6288
if (this.
CurrentToken
.Kind != SyntaxKind.LessThanToken)
6338
switch (this.
CurrentToken
.Kind)
6420
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6430
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6447
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
6453
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
6462
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6497
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
6524
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
6546
isDefinitelyTypeArgumentList = this.
CurrentToken
.Kind == SyntaxKind.CommaToken;
6564
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken);
6566
if (this.
CurrentToken
.Kind != SyntaxKind.GreaterThanToken)
6572
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken)
6581
if (lastScannedType is ScanTypeFlags.TupleType && this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken)
6594
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken;
6606
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6616
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6633
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
6640
if (tokenBreaksTypeArgumentList(this.
CurrentToken
))
6649
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken && tokenBreaksTypeArgumentList(this.PeekToken(1)))
6658
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken
6664
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken || this.IsPossibleType())
6734
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleType(),
6735
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken,
6743
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
6759
var varianceToken = this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword
6786
this.
CurrentToken
.Kind is not SyntaxKind.CommaToken and not SyntaxKind.GreaterThanToken &&
6808
=> this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken;
6812
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6850
if (this.
CurrentToken
.Kind == SyntaxKind.ThisKeyword)
6901
if (isEvent && this.
CurrentToken
.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken)
6972
separator = this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken
6985
if (this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken)
7014
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
7090
return this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken
7220
var tk = this.
CurrentToken
.Kind;
7241
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken || !this.IsTrueIdentifier())
7248
if (this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
7263
if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
7268
if (this.
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword)
7275
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken or SyntaxKind.ColonColonToken)
7278
if (this.
CurrentToken
.Kind is SyntaxKind.ColonColonToken)
7292
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken);
7332
else if (IsPredefinedType(this.
CurrentToken
.Kind))
7338
else if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
7343
if (result == ScanTypeFlags.NotType || mode == ParseTypeMode.DefinitePattern && this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
7363
switch (this.
CurrentToken
.Kind)
7404
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7409
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7442
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7460
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken);
7462
if (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
7484
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
7487
switch (
CurrentToken
)
7502
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
7519
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7532
if (!IsPossibleFunctionPointerParameterListStart(
CurrentToken
))
7572
if (!validStartingToken &&
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
7586
isNotExpectedFunction: static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
7607
if (this.
CurrentToken
.Kind == SyntaxKind.VoidKeyword && this.PeekToken(1).Kind != SyntaxKind.AsteriskToken)
7632
if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
7636
this.
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword ? this.EatToken() : null,
7680
switch (this.
CurrentToken
.Kind)
7728
while (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken);
7749
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.QuestionToken);
7772
if (mode == ParseTypeMode.AfterIs && this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken)
7799
return this.
CurrentToken
.Kind != SyntaxKind.ColonToken;
7826
if (IsTrueIdentifier(this.
CurrentToken
))
7835
if (this.
CurrentToken
.ContextualKind is SyntaxKind.AsyncKeyword or SyntaxKind.AwaitKeyword or SyntaxKind.FromKeyword)
7889
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken)
7898
this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or // ctor parameters
7933
while (IsMakingProgress(ref lastTokenPosition) && this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7935
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7948
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7989
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
7993
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
8028
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
8029
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken,
8035
if (IsPredefinedType(this.
CurrentToken
.Kind))
8039
if (token.Kind == SyntaxKind.VoidKeyword && this.
CurrentToken
.Kind != SyntaxKind.AsteriskToken)
8048
if (IsTrueIdentifier() || this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken)
8053
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
8076
if (!IsPossibleFunctionPointerParameterListStart(
CurrentToken
))
8119
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
8130
lessThanToken.IsMissing &&
CurrentToken
.Kind == SyntaxKind.CloseParenToken
8145
isNotExpectedFunction: static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
8153
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
8157
switch (
CurrentToken
)
8161
managedSpecifier = EatContextualToken(
CurrentToken
.ContextualKind);
8181
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
8199
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
8229
=>
CurrentToken
.Kind == SyntaxKind.DelegateKeyword && PeekToken(1).Kind == SyntaxKind.AsteriskToken;
8240
while (this.
CurrentToken
.Kind == SyntaxKind.AsteriskToken)
8260
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
8274
while (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
8284
var isCollectionExpression = this.
CurrentToken
.Kind
8297
|| IsExpectedBinaryOperator(this.
CurrentToken
.Kind)
8298
|| IsExpectedAssignmentOperator(this.
CurrentToken
.Kind)
8299
|| (this.
CurrentToken
.ContextualKind is SyntaxKind.SwitchKeyword or SyntaxKind.WithKeyword && this.PeekToken(1).Kind is SyntaxKind.OpenBraceToken);
8303
this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
8362
switch (this.
CurrentToken
.Kind)
8458
bool beginsWithAwait = this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword;
8493
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword &&
8555
=>
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword && PeekToken(1).Kind == SyntaxKind.UsingKeyword;
8564
return this.
CurrentToken
.ContextualKind == SyntaxKind.YieldKeyword &&
8574
var tk = this.
CurrentToken
.Kind;
8602
tk = this.
CurrentToken
.ContextualKind;
8617
bool? typedIdentifier = IsPossibleTypedIdentifierStart(this.
CurrentToken
, this.PeekToken(1), allowThisKeyword: false);
8638
var tk = this.
CurrentToken
.ContextualKind;
8682
if (st == ScanTypeFlags.MustBeType && this.
CurrentToken
.Kind is not SyntaxKind.DotToken and not SyntaxKind.OpenParenToken)
8692
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
8700
return st == ScanTypeFlags.GenericTypeOrExpression && (IsDefiniteStatement() || IsTypeDeclarationStart() || IsAccessibilityModifier(
CurrentToken
.Kind));
8721
if (this.
CurrentToken
.Kind != SyntaxKind.UsingKeyword)
8787
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken)
8808
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
8815
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
8824
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.SemicolonToken;
8842
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
8849
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
8941
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword);
8969
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
8978
if (scanResult == ScanTypeFlags.TupleType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
8989
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NewKeyword);
9134
CSharpSyntaxNode openBrace = isAccessorBody && this.
CurrentToken
.Kind != SyntaxKind.OpenBraceToken
9215
while (this.
CurrentToken
.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken
9247
return this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
9259
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken,
9267
var tk = this.
CurrentToken
.Kind;
9304
var tk = this.
CurrentToken
.Kind;
9349
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken;
9414
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.TryKeyword or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword);
9427
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword);
9441
if (this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword)
9444
while (this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword)
9450
if (this.
CurrentToken
.Kind == SyntaxKind.FinallyKeyword)
9485
return this.
CurrentToken
.Kind is SyntaxKind.CloseBraceToken or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword;
9490
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword);
9497
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
9517
var keywordKind = this.
CurrentToken
.ContextualKind;
9549
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken
9558
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken
9566
return this.
CurrentToken
.Kind is SyntaxKind.CloseBraceToken
9573
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.CheckedKeyword or SyntaxKind.UncheckedKeyword);
9590
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DoKeyword);
9614
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken;
9631
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9652
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9662
var condition = this.
CurrentToken
.Kind is not SyntaxKind.SemicolonToken and not SyntaxKind.CommaToken
9671
var incrementors = this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken
9700
if (this.
CurrentToken
.ContextualKind == SyntaxKind.ScopedKeyword)
9709
isDeclaration = ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken;
9713
else if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
9730
else if (this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken)
9745
=> this.
CurrentToken
.Kind is SyntaxKind.CommaToken
9753
while (this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CommaToken)
9777
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken)
9781
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
9782
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
9789
return this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken;
9796
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForEachKeyword || this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9807
if (this.
CurrentToken
.Kind == SyntaxKind.ForKeyword)
9901
if (this.IsInAsync && this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword)
9909
if (this.
CurrentToken
.ContextualKind == SyntaxKind.ScopedKeyword)
9912
if (ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
9959
return this.
CurrentToken
.Kind == SyntaxKind.CommaToken;
9961
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseParenToken;
9974
if (!this.
CurrentToken
.IsIdentifierVar())
10013
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.GotoKeyword);
10021
if (this.
CurrentToken
.Kind is SyntaxKind.CaseKeyword or SyntaxKind.DefaultKeyword)
10049
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
10060
if (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken &&
10079
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IfKeyword);
10092
var elseKeyword = this.
CurrentToken
.Kind != SyntaxKind.ElseKeyword ?
10103
if (this.
CurrentToken
.Kind != SyntaxKind.IfKeyword)
10144
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ElseKeyword);
10158
return this.
CurrentToken
.Kind != SyntaxKind.ElseKeyword
10167
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LockKeyword);
10179
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ReturnKeyword);
10183
this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken ? this.ParsePossibleRefExpression() : null,
10189
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.YieldKeyword);
10196
if (this.
CurrentToken
.Kind == SyntaxKind.BreakKeyword)
10205
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
10226
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.SwitchKeyword or SyntaxKind.CaseKeyword);
10251
if (this.
CurrentToken
.Kind is SyntaxKind.CaseKeyword)
10296
return this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword ||
10297
(this.
CurrentToken
.Kind == SyntaxKind.DefaultKeyword && this.PeekToken(1).Kind != SyntaxKind.OpenParenToken);
10311
if (this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword)
10315
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
10327
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhenKeyword && node is ExpressionSyntax ex)
10352
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DefaultKeyword);
10374
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ThrowKeyword);
10378
this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken ? this.ParseExpressionCore() : null,
10384
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.UnsafeKeyword);
10452
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
10479
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken &&
10511
bool condition1 = st == ScanTypeFlags.MustBeType && this.
CurrentToken
.Kind != SyntaxKind.DotToken;
10512
bool condition2 = st != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken;
10520
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.WhileKeyword);
10555
else if (this.
CurrentToken
.Kind == SyntaxKind.UsingKeyword)
10651
if (this.
CurrentToken
.ContextualKind != SyntaxKind.ScopedKeyword)
10668
if (IsParameterModifierExcludingScoped(this.
CurrentToken
))
10685
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
10687
else if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
10712
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
10720
done = (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken);
10733
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
10763
return
CurrentToken
.ContextualKind == SyntaxKind.UnderscoreToken
10770
if (this.
CurrentToken
.ContextualKind != SyntaxKind.WhenKeyword)
10854
switch (this.
CurrentToken
.Kind)
10867
while (IsDeclarationModifier(k = this.
CurrentToken
.ContextualKind) || IsAdditionalLocalFunctionModifier(k))
10904
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken);
10910
if (IsDeclarationModifier(this.
CurrentToken
.Kind) ||
10911
IsAdditionalLocalFunctionModifier(this.
CurrentToken
.Kind))
10918
if (ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
10926
while (IsAdditionalLocalFunctionModifier(this.
CurrentToken
.ContextualKind));
11070
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
11109
if (IsScript && this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken)
11153
SyntaxKind tk = this.
CurrentToken
.Kind;
11200
return this.IsTrueIdentifier() || this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword;
11437
return (this.IsScript || this.IsInAsync) && this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword;
11442
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword)
11520
var tk = this.
CurrentToken
.Kind;
11562
if (this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword && IsInQuery)
11569
this.AddError(this.EatToken(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text));
11616
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken && precedence <= Precedence.Conditional)
11714
if (this.
CurrentToken
.Kind != SyntaxKind.ColonToken &&
11732
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
11744
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken && this.lexer.InterpolationFollowedByColon)
11803
var token1 = this.
CurrentToken
;
11905
if (operatorExpressionKind == SyntaxKind.SimpleAssignmentExpression &&
CurrentToken
.Kind == SyntaxKind.RefKeyword &&
11925
if (this.
CurrentToken
.Kind != SyntaxKind.DotToken)
11929
return nextToken.Kind == SyntaxKind.DotToken && NoTriviaBetween(this.
CurrentToken
, nextToken);
11947
if (this.
CurrentToken
is { Kind: SyntaxKind.DotToken } token3 &&
12017
var tk = this.
CurrentToken
.Kind;
12055
return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
12084
return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
12152
if (this.
CurrentToken
.Kind != SyntaxKind.DotToken || tk == SyntaxKind.VoidKeyword)
12177
offset: this.
CurrentToken
.GetLeadingTriviaWidth(),
12178
width: this.
CurrentToken
.Width,
12202
switch (this.
CurrentToken
.Kind)
12214
expr = _syntaxFactory.PostfixUnaryExpression(SyntaxFacts.GetPostfixUnaryExpression(this.
CurrentToken
.Kind), expr, this.EatToken());
12249
if (this.
CurrentToken
.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia) &&
12283
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.BaseKeyword);
12297
if (precedence > Precedence.Assignment || !(this.
CurrentToken
.IsIdentifierVar() || IsPredefinedType(this.
CurrentToken
.Kind)))
12306
this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken && ScanDesignator() &&
12307
this.
CurrentToken
.Kind == SyntaxKind.EqualsToken;
12312
switch (this.
CurrentToken
.Kind)
12331
switch (this.
CurrentToken
.Kind)
12405
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken)
12444
return this.
CurrentToken
.Kind != SyntaxKind.ColonToken;
12457
while (this.
CurrentToken
.Kind == SyntaxKind.ExclamationToken)
12493
=> this.
CurrentToken
.Kind switch
12552
openToken = this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or SyntaxKind.OpenBracketToken
12559
if (this.
CurrentToken
.Kind != closeKind && this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken)
12587
else if (isIndexer && this.
CurrentToken
.Kind == closeKind)
12603
closeToken = this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken
12612
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken)
12616
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleArgumentExpression(),
12617
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
12624
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken;
12629
return IsValidArgumentRefKindKeyword(this.
CurrentToken
.Kind) || this.IsPossibleExpression();
12647
var nameColon = this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.ColonToken
12654
if (IsValidArgumentRefKindKeyword(this.
CurrentToken
.Kind) &&
12656
!(this.
CurrentToken
.Kind == SyntaxKind.RefKeyword &&
12664
if (isIndexer && this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBracketToken)
12668
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12700
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
12787
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12818
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12844
if (IsParameterModifierIncludingScoped(this.
CurrentToken
))
12870
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
12878
switch (this.
CurrentToken
.Kind)
12894
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12922
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12930
if (expression.Kind == SyntaxKind.IdentifierName && this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
12951
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12956
var argument = expression.Kind != SyntaxKind.IdentifierName || this.
CurrentToken
.Kind != SyntaxKind.ColonToken
12984
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12997
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
13004
if (forPattern && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
13016
if (inSwitchArmPattern && this.
CurrentToken
.ContextualKind == SyntaxKind.WhenKeyword)
13038
return !forPattern || this.
CurrentToken
.Kind switch
13063
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken || CanFollowCast(this.
CurrentToken
.Kind);
13069
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken &&
13078
return CanFollowCast(this.
CurrentToken
.Kind);
13109
return this.
CurrentToken
.ContextualKind is SyntaxKind.OrKeyword or SyntaxKind.AndKeyword;
13138
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
13154
if (this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
13159
else if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
13173
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
13183
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13191
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
13202
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
13211
if (st == ScanTypeFlags.NotType || this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13228
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
13236
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13308
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NewKeyword);
13327
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken);
13348
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleCollectionElement(),
13349
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13363
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WithKeyword &&
13381
return this.
CurrentToken
.Kind == SyntaxKind.NewKeyword && this.PeekToken(1).Kind == SyntaxKind.OpenBraceToken;
13389
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken);
13426
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken;
13441
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken;
13457
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
13467
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13472
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
13494
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13505
switch (this.
CurrentToken
.Kind)
13624
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
13625
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13634
this.
CurrentToken
.Kind == SyntaxKind.ColonToken
13637
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13648
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13676
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.NewKeyword or SyntaxKind.StackAllocKeyword);
13703
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13743
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleVariableInitializer(),
13744
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13770
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13792
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken ? this.ParseArrayInitializer() : null);
13809
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13822
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBraceToken)
13853
if (this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
13859
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
13874
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword);
13899
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken &&
13927
if (
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13934
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13947
var identifier = (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.EqualsGreaterThanToken)
13964
=>
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13995
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleLambdaParameter(),
13996
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
14003
switch (this.
CurrentToken
.Kind)
14021
return IsPredefinedType(this.
CurrentToken
.Kind);
14032
if (IsParameterModifierIncludingScoped(this.
CurrentToken
))
14059
if (IsPredefinedType(this.
CurrentToken
.Kind))
14065
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
14075
if (this.IsTrueIdentifier(this.
CurrentToken
))
14102
=> IsTokenQueryContextualKeyword(this.
CurrentToken
);
14144
return this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword &&
14197
return this.ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken or SyntaxKind.InKeyword;
14219
switch (this.
CurrentToken
.ContextualKind)
14242
SelectOrGroupClauseSyntax selectOrGroupBy = this.
CurrentToken
.ContextualKind switch
14254
this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword
14261
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword);
14270
(this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken || SyntaxFacts.IsQueryContextualKeyword(this.
CurrentToken
.ContextualKind)))
14294
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.JoinKeyword);
14307
into: this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword
14314
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.LetKeyword);
14318
SyntaxFacts.IsReservedKeyword(this.
CurrentToken
.Kind) && this.PeekToken(1).Kind == SyntaxKind.EqualsToken
14327
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword);
14335
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.OrderByKeyword);
14343
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
14345
if (this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken)
14349
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
14370
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
14371
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseParenToken
14372
|| p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
14384
if (this.
CurrentToken
.ContextualKind is SyntaxKind.AscendingKeyword or SyntaxKind.DescendingKeyword)
14398
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.SelectKeyword);
14406
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.GroupKeyword);
14416
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword);
14547
if (requireOneElement || this.
CurrentToken
.Kind != closeTokenKind)
14564
if (this.
CurrentToken
.Kind == closeTokenKind)
14575
nodes.AddSeparator(this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
14582
if (this.
CurrentToken
.Kind == closeTokenKind)
14617
if (this.
CurrentToken
.Kind == separatorTokenKind)
14622
if (allowSemicolonAsSeparator && this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken)
14711
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken) return node;
14713
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
Parser\LanguageParser_InterpolatedString.cs (3)
112
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.InterpolatedStringToken);
537
if (this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
550
var leading = this.
CurrentToken
.GetLeadingTrivia();
Parser\LanguageParser_Patterns.cs (34)
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)
166
else if (this.
CurrentToken
.Kind == SyntaxKind.EqualsEqualsToken)
172
else if (this.
CurrentToken
.Kind == SyntaxKind.ExclamationEqualsToken)
190
var tk = this.
CurrentToken
.Kind;
202
if (
CurrentToken
.ContextualKind == SyntaxKind.UnderscoreToken)
207
switch (
CurrentToken
.Kind)
259
switch (this.
CurrentToken
.Kind)
291
(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken || this.IsValidPatternDesignation(inSwitchArmPattern)))
300
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken && (type != null || !looksLikeCast()))
383
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
409
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
411
switch (
CurrentToken
.ContextualKind)
502
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
534
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken && ConvertPatternToExpressionIfPossible(pattern, permitTypeArguments: true) is ExpressionSyntax expr)
555
this.
CurrentToken
.Kind is
568
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBraceToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken)
575
if (@this._termState.HasFlag(TerminatorState.IsExpressionOrPatternInCaseLabelOfSwitchStatement) && @this.
CurrentToken
.Kind is SyntaxKind.ColonToken)
584
if (@this._termState.HasFlag(TerminatorState.IsPatternInSwitchExpressionArm) && @this.
CurrentToken
.Kind is SyntaxKind.EqualsGreaterThanToken or SyntaxKind.ColonToken)
588
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleSubpatternElement(),
589
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
609
while (this.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken)
615
var errantCase = this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword
634
this.
CurrentToken
.Kind == SyntaxKind.ColonToken
640
if (errantCase is null && switchExpressionCase.FullWidth == 0 && this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
647
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken)
649
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
;