771 references to CurrentToken
Microsoft.CodeAnalysis.CSharp (771)
Parser\DirectiveParser.cs (28)
50
SyntaxKind contextualKind = this.
CurrentToken
.ContextualKind;
89
result = (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken) ?
376
switch (this.
CurrentToken
.Kind)
397
if (this.
CurrentToken
.Kind == SyntaxKind.StringLiteralToken &&
398
(line.IsMissing || line.GetTrailingTriviaWidth() > 0 || this.
CurrentToken
.GetLeadingTriviaWidth() > 0)) //require separation between line number and file name
413
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
432
var characterOffset = (
CurrentToken
.Kind == SyntaxKind.NumericLiteralToken) ?
545
SyntaxToken setting = this.
CurrentToken
.Kind switch
553
SyntaxToken target = this.
CurrentToken
.Kind switch
574
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WarningKeyword)
578
if (this.
CurrentToken
.Kind == SyntaxKind.DisableKeyword || this.
CurrentToken
.Kind == SyntaxKind.RestoreKeyword)
583
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfDirectiveToken)
588
if (this.
CurrentToken
.Kind == SyntaxKind.NumericLiteralToken)
600
else if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
621
if (this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
639
else if (this.
CurrentToken
.Kind == SyntaxKind.ChecksumKeyword)
728
if (this.
CurrentToken
.Kind != SyntaxKind.EndOfDirectiveToken &&
729
this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
748
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfDirectiveToken &&
749
this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
756
SyntaxToken endOfDirective = this.
CurrentToken
.Kind == SyntaxKind.EndOfDirectiveToken
777
while (this.
CurrentToken
.Kind == SyntaxKind.BarBarToken)
790
while (this.
CurrentToken
.Kind == SyntaxKind.AmpersandAmpersandToken)
803
while (this.
CurrentToken
.Kind == SyntaxKind.EqualsEqualsToken || this.
CurrentToken
.Kind == SyntaxKind.ExclamationEqualsToken)
815
if (this.
CurrentToken
.Kind == SyntaxKind.ExclamationToken)
826
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 (606)
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)
2609
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken)
2643
if (this.
CurrentToken
.Kind == SyntaxKind.ConstKeyword)
2656
if (this.
CurrentToken
.Kind == SyntaxKind.EventKeyword)
2662
if (this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword)
2674
if (this.
CurrentToken
.Kind == SyntaxKind.NamespaceKeyword)
2696
if (this.
CurrentToken
.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken &&
2941
if (
CurrentToken
.Kind == SyntaxKind.UsingKeyword)
2946
if (
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
2961
if (GetModifierExcludingScoped(this.
CurrentToken
) != DeclarationModifiers.None &&
2962
this.
CurrentToken
.ContextualKind is not (SyntaxKind.PartialKeyword or SyntaxKind.AsyncKeyword or SyntaxKind.RequiredKeyword or SyntaxKind.FileKeyword) &&
2965
var misplacedModifier = this.
CurrentToken
;
3016
offset: incompleteMember.Width + incompleteMember.GetTrailingTriviaWidth() + this.
CurrentToken
.GetLeadingTriviaWidth(),
3017
this.
CurrentToken
.Width,
3019
this.
CurrentToken
.Text);
3036
|| this.
CurrentToken
.Kind is not SyntaxKind.OpenParenToken and not SyntaxKind.OpenBraceToken and not SyntaxKind.EqualsGreaterThanToken) &&
3064
if (IsStartOfPropertyBody(this.
CurrentToken
.Kind) ||
3065
(this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken && IsStartOfPropertyBody(this.PeekToken(1).Kind)))
3123
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken)
3129
if (this.
CurrentToken
.Kind == SyntaxKind.TildeToken)
3135
if (this.
CurrentToken
.Kind == SyntaxKind.ConstKeyword)
3141
if (this.
CurrentToken
.Kind == SyntaxKind.EventKeyword)
3147
if (this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword)
3254
return this.
CurrentToken
.ContextualKind == SyntaxKind.ExtensionKeyword &&
3286
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
3291
if (this.
CurrentToken
.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword)
3331
return this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword or SyntaxKind.OperatorKeyword;
3373
var initializer = this.
CurrentToken
.Kind == SyntaxKind.ColonToken
3392
var kind = this.
CurrentToken
.Kind == SyntaxKind.BaseKeyword
3397
if (this.
CurrentToken
.Kind is SyntaxKind.BaseKeyword or SyntaxKind.ThisKeyword)
3409
var argumentList = this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken
3421
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.TildeToken);
3447
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
3455
blockBody = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
3459
expressionBody = this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
3470
else if (parseSemicolonAfterBlock && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
3482
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
3488
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
3494
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
3510
=> this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken;
3514
return this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken;
3518
=> this.
CurrentToken
.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken;
3521
=> this.
CurrentToken
.Kind == (errored ? SyntaxKind.CloseParenToken : SyntaxKind.GreaterThanToken);
3524
=> this.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken;
3541
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
3546
else if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
3549
var colonToken = this.
CurrentToken
;
3599
switch (this.
CurrentToken
.Kind)
3618
if (this.
CurrentToken
.Kind is not (SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword))
3622
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
3632
if (this.
CurrentToken
.Kind == SyntaxKind.OperatorKeyword)
3646
(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken))
3652
separatorKind = this.
CurrentToken
.Kind;
3674
if (this.
CurrentToken
.Kind != SyntaxKind.OperatorKeyword ||
3696
var style = this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword
3706
if (!style.IsMissing && explicitInterfaceOpt is not null && this.
CurrentToken
.Kind != SyntaxKind.OperatorKeyword && style.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia))
3738
bool couldBeParameterList = this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken;
3743
this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
3774
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
3791
if (this.
CurrentToken
.Kind == SyntaxKind.OperatorKeyword)
3801
(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken);
3840
if (
CurrentToken
.Kind == SyntaxKind.UncheckedKeyword)
3859
var firstToken = this.
CurrentToken
;
3892
if (SyntaxFacts.IsAnyOverloadableOperator(this.
CurrentToken
.Kind))
3901
if (this.
CurrentToken
.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword)
3904
(opTokenErrorOffset, opTokenErrorWidth) = (0, this.
CurrentToken
.Width);
3936
var tk = this.
CurrentToken
;
3943
tk = this.
CurrentToken
;
4075
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
4083
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
4092
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken
4127
if (this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken)
4133
Debug.Assert(IsStartOfPropertyBody(this.
CurrentToken
.Kind));
4135
var accessorList = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
4143
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
4151
else if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
4163
else if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
4217
if (this.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken)
4252
var refKeyword = this.
CurrentToken
.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression)
4263
static p => p.
CurrentToken
.Kind != SyntaxKind.CloseBraceToken && !p.IsPossibleAccessor(),
4270
return this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken
4272
|| SyntaxFacts.GetAccessorDeclarationKind(this.
CurrentToken
.ContextualKind) != SyntaxKind.None
4273
|| this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken // for accessor blocks w/ missing keyword
4274
|| this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken // for empty body accessors w/ missing keyword
4296
if (GetModifierExcludingScoped(this.
CurrentToken
) == DeclarationModifiers.None)
4444
var token = (first && !this.
CurrentToken
.ContainsDiagnostics) ? this.EatTokenEvenWithIncorrectKind(expected) : this.EatToken();
4470
var token = (first && !this.
CurrentToken
.ContainsDiagnostics) ? this.EatTokenWithPrejudice(errorCode) : this.EatToken();
4526
bool currentTokenIsSemicolon = this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken;
4527
bool currentTokenIsArrow = this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken;
4528
bool currentTokenIsOpenBraceToken = this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken;
4711
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleParameter(),
4712
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
4719
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken;
4724
switch (this.
CurrentToken
.Kind)
4736
return IsParameterModifierExcludingScoped(this.
CurrentToken
) || IsPossibleScopedKeyword(isFunctionPointerParameter: false) || IsPredefinedType(this.
CurrentToken
.Kind);
4796
if (this.
CurrentToken
.Kind == SyntaxKind.ArgListKeyword)
4807
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && IsCurrentTokenWhereOfConstraintClause())
4814
identifier = allowOptionalIdentifier && this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken
4820
if (identifier is not null && this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind is SyntaxKind.CloseBracketToken)
4865
while (IsParameterModifierExcludingScoped(this.
CurrentToken
))
4867
if (this.
CurrentToken
.Kind is SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword or SyntaxKind.ReadOnlyKeyword)
4884
while (this.
CurrentToken
.Kind is SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword or SyntaxKind.ReadOnlyKeyword)
4897
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.FixedKeyword);
4915
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.EventKeyword);
4939
if (explicitInterfaceOpt != null && this.
CurrentToken
.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken)
4991
if (explicitInterfaceOpt != null && this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5018
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5071
if (this.
CurrentToken
.Kind == SyntaxKind.DotToken)
5087
return this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken;
5152
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5156
else if (stopOnCloseParen && this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
5160
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
5210
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
5211
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
5365
var currentTokenKind = this.
CurrentToken
.Kind;
5376
currentTokenKind = this.
CurrentToken
.Kind;
5426
switch (this.
CurrentToken
.Kind)
5437
var refKeyword = isLocalOrField && !isConst && this.
CurrentToken
.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression)
5514
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
5550
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or SyntaxKind.LessThanToken);
5558
(this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.EqualsGreaterThanToken ||
5559
this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword))
5569
switch (this.
CurrentToken
.Kind)
5581
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
5588
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.IsPossibleExpression();
5607
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DelegateKeyword);
5618
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
5640
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.EnumKeyword);
5655
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
5671
if (
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
5716
static p => p.
CurrentToken
.Kind is not SyntaxKind.CommaToken and not SyntaxKind.SemicolonToken && !p.IsPossibleEnumMemberDeclaration(),
5717
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
5732
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
5737
this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBraceToken
5747
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken || this.IsTrueIdentifier();
5752
return this.
CurrentToken
.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken;
5791
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
5831
var ctk = this.
CurrentToken
.Kind;
5843
result = this.AddError(result, ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
5869
if (this.
CurrentToken
.ContextualKind == SyntaxKind.PartialKeyword)
5882
return
CurrentToken
.ContextualKind == SyntaxKind.FieldKeyword &&
5889
if (this.
CurrentToken
.Kind != SyntaxKind.LessThanToken)
5919
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
5920
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
5931
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
5935
if (this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword)
5952
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
5962
this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword ? EatToken() : null,
5979
if (this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
5989
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6014
if (this.
CurrentToken
.Kind != SyntaxKind.LessThanToken)
6064
switch (this.
CurrentToken
.Kind)
6146
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6156
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6173
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
6179
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
6188
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6223
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
6250
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
6272
isDefinitelyTypeArgumentList = this.
CurrentToken
.Kind == SyntaxKind.CommaToken;
6290
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken);
6292
if (this.
CurrentToken
.Kind != SyntaxKind.GreaterThanToken)
6298
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken)
6307
if (lastScannedType is ScanTypeFlags.TupleType && this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken)
6320
isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken;
6332
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6342
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
6359
if (this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken)
6366
if (tokenBreaksTypeArgumentList(this.
CurrentToken
))
6375
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken && tokenBreaksTypeArgumentList(this.PeekToken(1)))
6384
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken
6390
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken || this.IsPossibleType())
6460
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleType(),
6461
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken,
6469
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken)
6485
var varianceToken = this.
CurrentToken
.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword
6512
this.
CurrentToken
.Kind is not SyntaxKind.CommaToken and not SyntaxKind.GreaterThanToken &&
6534
=> this.
CurrentToken
.Kind == SyntaxKind.GreaterThanToken;
6538
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LessThanToken);
6576
if (this.
CurrentToken
.Kind == SyntaxKind.ThisKeyword)
6627
if (isEvent && this.
CurrentToken
.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken)
6698
separator = this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken
6711
if (this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken)
6740
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
6816
return this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken
6946
var tk = this.
CurrentToken
.Kind;
6967
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken || !this.IsTrueIdentifier())
6974
if (this.
CurrentToken
.Kind == SyntaxKind.LessThanToken)
6989
if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
6994
if (this.
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword)
7001
if (this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken or SyntaxKind.ColonColonToken)
7004
if (this.
CurrentToken
.Kind is SyntaxKind.ColonColonToken)
7018
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken);
7058
else if (IsPredefinedType(this.
CurrentToken
.Kind))
7064
else if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
7069
if (result == ScanTypeFlags.NotType || mode == ParseTypeMode.DefinitePattern && this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
7089
switch (this.
CurrentToken
.Kind)
7130
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7135
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7168
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7186
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken);
7188
if (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
7210
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
7213
switch (
CurrentToken
)
7228
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
7245
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7258
if (!IsPossibleFunctionPointerParameterListStart(
CurrentToken
))
7298
if (!validStartingToken &&
CurrentToken
.Kind == SyntaxKind.CloseParenToken)
7312
isNotExpectedFunction: static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
7333
if (this.
CurrentToken
.Kind == SyntaxKind.VoidKeyword && this.PeekToken(1).Kind != SyntaxKind.AsteriskToken)
7358
if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
7362
this.
CurrentToken
.Kind == SyntaxKind.ReadOnlyKeyword ? this.EatToken() : null,
7406
switch (this.
CurrentToken
.Kind)
7454
while (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken);
7475
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.QuestionToken);
7498
if (mode == ParseTypeMode.AfterIs && this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken)
7525
return this.
CurrentToken
.Kind != SyntaxKind.ColonToken;
7552
if (IsTrueIdentifier(this.
CurrentToken
))
7561
if (this.
CurrentToken
.ContextualKind is SyntaxKind.AsyncKeyword or SyntaxKind.AwaitKeyword or SyntaxKind.FromKeyword)
7615
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBracketToken)
7624
this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or // ctor parameters
7659
while (IsMakingProgress(ref lastTokenPosition) && this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7661
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7674
if (this.
CurrentToken
.Kind != SyntaxKind.CloseBracketToken)
7715
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
7719
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
7754
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
7755
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseBracketToken,
7761
if (IsPredefinedType(this.
CurrentToken
.Kind))
7765
if (token.Kind == SyntaxKind.VoidKeyword && this.
CurrentToken
.Kind != SyntaxKind.AsteriskToken)
7774
if (IsTrueIdentifier() || this.
CurrentToken
.Kind == SyntaxKind.ColonColonToken)
7779
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
7802
if (!IsPossibleFunctionPointerParameterListStart(
CurrentToken
))
7845
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7856
lessThanToken.IsMissing &&
CurrentToken
.Kind == SyntaxKind.CloseParenToken
7871
isNotExpectedFunction: static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
7879
if (
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
7883
switch (
CurrentToken
)
7887
managedSpecifier = EatContextualToken(
CurrentToken
.ContextualKind);
7907
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
7925
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.CommaToken);
7955
=>
CurrentToken
.Kind == SyntaxKind.DelegateKeyword && PeekToken(1).Kind == SyntaxKind.AsteriskToken;
7966
while (this.
CurrentToken
.Kind == SyntaxKind.AsteriskToken)
7986
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBracketToken)
8000
while (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
8010
var isCollectionExpression = this.
CurrentToken
.Kind
8023
|| IsExpectedBinaryOperator(this.
CurrentToken
.Kind)
8024
|| IsExpectedAssignmentOperator(this.
CurrentToken
.Kind)
8025
|| (this.
CurrentToken
.ContextualKind is SyntaxKind.SwitchKeyword or SyntaxKind.WithKeyword && this.PeekToken(1).Kind is SyntaxKind.OpenBraceToken);
8029
this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
8088
switch (this.
CurrentToken
.Kind)
8184
bool beginsWithAwait = this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword;
8220
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword &&
8261
=>
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword && PeekToken(1).Kind == SyntaxKind.UsingKeyword;
8275
return this.
CurrentToken
.ContextualKind == SyntaxKind.YieldKeyword &&
8285
var tk = this.
CurrentToken
.Kind;
8313
tk = this.
CurrentToken
.ContextualKind;
8334
bool? typedIdentifier = IsPossibleTypedIdentifierStart(this.
CurrentToken
, this.PeekToken(1), allowThisKeyword: false);
8355
var tk = this.
CurrentToken
.ContextualKind;
8399
if (st == ScanTypeFlags.MustBeType && this.
CurrentToken
.Kind is not SyntaxKind.DotToken and not SyntaxKind.OpenParenToken)
8409
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
8417
return st == ScanTypeFlags.GenericTypeOrExpression && (IsDefiniteStatement() || IsTypeDeclarationStart() || IsAccessibilityModifier(
CurrentToken
.Kind));
8438
if (this.
CurrentToken
.Kind != SyntaxKind.UsingKeyword)
8504
if (this.
CurrentToken
.Kind is SyntaxKind.OpenBraceToken)
8525
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
8532
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsToken)
8541
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.SemicolonToken;
8559
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken || this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
8566
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
8650
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NewKeyword);
8795
CSharpSyntaxNode openBrace = isAccessorBody && this.
CurrentToken
.Kind != SyntaxKind.OpenBraceToken
8876
while (this.
CurrentToken
.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken
8908
return this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
8920
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseBraceToken,
8928
var tk = this.
CurrentToken
.Kind;
8965
var tk = this.
CurrentToken
.Kind;
9010
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken;
9073
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.TryKeyword or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword);
9086
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword);
9100
if (this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword)
9103
while (this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword)
9109
if (this.
CurrentToken
.Kind == SyntaxKind.FinallyKeyword)
9144
return this.
CurrentToken
.Kind is SyntaxKind.CloseBraceToken or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword;
9149
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.CatchKeyword);
9156
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
9176
var keywordKind = this.
CurrentToken
.ContextualKind;
9208
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken
9217
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken
9225
return this.
CurrentToken
.Kind is SyntaxKind.CloseBraceToken
9232
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.CheckedKeyword or SyntaxKind.UncheckedKeyword);
9249
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DoKeyword);
9273
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken;
9290
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9311
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9321
var condition = this.
CurrentToken
.Kind is not SyntaxKind.SemicolonToken and not SyntaxKind.CommaToken
9330
var incrementors = this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken
9359
if (this.
CurrentToken
.ContextualKind == SyntaxKind.ScopedKeyword)
9368
isDeclaration = ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken;
9372
else if (this.
CurrentToken
.Kind == SyntaxKind.RefKeyword)
9389
else if (this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken)
9404
=> this.
CurrentToken
.Kind is SyntaxKind.CommaToken
9412
while (this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CommaToken)
9436
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken)
9440
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
9441
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
9448
return this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken;
9455
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ForEachKeyword || this.
CurrentToken
.Kind == SyntaxKind.ForKeyword);
9466
if (this.
CurrentToken
.Kind == SyntaxKind.ForKeyword)
9560
if (this.IsInAsync && this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword)
9568
if (this.
CurrentToken
.ContextualKind == SyntaxKind.ScopedKeyword)
9571
if (ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
9618
return this.
CurrentToken
.Kind == SyntaxKind.CommaToken;
9620
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseParenToken;
9633
if (!this.
CurrentToken
.IsIdentifierVar())
9672
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.GotoKeyword);
9680
if (this.
CurrentToken
.Kind is SyntaxKind.CaseKeyword or SyntaxKind.DefaultKeyword)
9705
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IfKeyword);
9718
var elseKeyword = this.
CurrentToken
.Kind != SyntaxKind.ElseKeyword ?
9729
if (this.
CurrentToken
.Kind != SyntaxKind.IfKeyword)
9770
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ElseKeyword);
9784
return this.
CurrentToken
.Kind != SyntaxKind.ElseKeyword
9793
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.LockKeyword);
9805
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ReturnKeyword);
9809
this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken ? this.ParsePossibleRefExpression() : null,
9815
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.YieldKeyword);
9822
if (this.
CurrentToken
.Kind == SyntaxKind.BreakKeyword)
9831
if (this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken)
9852
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.SwitchKeyword or SyntaxKind.CaseKeyword);
9877
if (this.
CurrentToken
.Kind is SyntaxKind.CaseKeyword)
9922
return this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword ||
9923
(this.
CurrentToken
.Kind == SyntaxKind.DefaultKeyword && this.PeekToken(1).Kind != SyntaxKind.OpenParenToken);
9937
if (this.
CurrentToken
.Kind == SyntaxKind.CaseKeyword)
9941
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
9953
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhenKeyword && node is ExpressionSyntax ex)
9978
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.DefaultKeyword);
10000
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.ThrowKeyword);
10004
this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken ? this.ParseExpressionCore() : null,
10010
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.UnsafeKeyword);
10078
if (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken)
10105
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken &&
10137
bool condition1 = st == ScanTypeFlags.MustBeType && this.
CurrentToken
.Kind != SyntaxKind.DotToken;
10138
bool condition2 = st != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken;
10146
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.WhileKeyword);
10181
else if (this.
CurrentToken
.Kind == SyntaxKind.UsingKeyword)
10277
if (this.
CurrentToken
.ContextualKind != SyntaxKind.ScopedKeyword)
10289
if (this.
CurrentToken
.Kind is (SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword))
10318
return this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken;
10320
else if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
10336
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
10344
done = (this.
CurrentToken
.Kind == SyntaxKind.CloseParenToken);
10357
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
10387
return
CurrentToken
.ContextualKind == SyntaxKind.UnderscoreToken
10394
if (this.
CurrentToken
.ContextualKind != SyntaxKind.WhenKeyword)
10478
switch (this.
CurrentToken
.Kind)
10491
while (IsDeclarationModifier(k = this.
CurrentToken
.ContextualKind) || IsAdditionalLocalFunctionModifier(k))
10530
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken);
10536
if (IsDeclarationModifier(this.
CurrentToken
.Kind) ||
10537
IsAdditionalLocalFunctionModifier(this.
CurrentToken
.Kind))
10544
if (ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
10552
while (IsAdditionalLocalFunctionModifier(this.
CurrentToken
.ContextualKind));
10693
if (this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword)
10736
if (IsScript && this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken)
10780
SyntaxKind tk = this.
CurrentToken
.Kind;
10826
return this.IsTrueIdentifier() || this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword;
11062
return (this.IsScript || this.IsInAsync) && this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword;
11067
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AwaitKeyword)
11145
var tk = this.
CurrentToken
.Kind;
11187
if (this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword && IsInQuery)
11194
this.AddError(this.EatToken(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text));
11241
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken && precedence <= Precedence.Conditional)
11339
if (this.
CurrentToken
.Kind != SyntaxKind.ColonToken &&
11354
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
11366
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken && this.lexer.InterpolationFollowedByColon)
11425
var token1 = this.
CurrentToken
;
11527
if (operatorExpressionKind == SyntaxKind.SimpleAssignmentExpression &&
CurrentToken
.Kind == SyntaxKind.RefKeyword &&
11547
if (this.
CurrentToken
.Kind != SyntaxKind.DotToken)
11551
return nextToken.Kind == SyntaxKind.DotToken && NoTriviaBetween(this.
CurrentToken
, nextToken);
11569
if (this.
CurrentToken
is { Kind: SyntaxKind.DotToken } token3 &&
11639
var tk = this.
CurrentToken
.Kind;
11675
return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
11704
return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.
CurrentToken
.Text);
11771
if (this.
CurrentToken
.Kind != SyntaxKind.DotToken || tk == SyntaxKind.VoidKeyword)
11806
switch (this.
CurrentToken
.Kind)
11818
expr = _syntaxFactory.PostfixUnaryExpression(SyntaxFacts.GetPostfixUnaryExpression(this.
CurrentToken
.Kind), expr, this.EatToken());
11853
if (this.
CurrentToken
.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia) &&
11887
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.BaseKeyword);
11901
if (precedence > Precedence.Assignment || !(this.
CurrentToken
.IsIdentifierVar() || IsPredefinedType(this.
CurrentToken
.Kind)))
11910
this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken && ScanDesignator() &&
11911
this.
CurrentToken
.Kind == SyntaxKind.EqualsToken;
11916
switch (this.
CurrentToken
.Kind)
11935
switch (this.
CurrentToken
.Kind)
12009
if (this.
CurrentToken
.Kind == SyntaxKind.QuestionToken)
12048
return this.
CurrentToken
.Kind != SyntaxKind.ColonToken;
12061
while (this.
CurrentToken
.Kind == SyntaxKind.ExclamationToken)
12097
=> this.
CurrentToken
.Kind switch
12156
openToken = this.
CurrentToken
.Kind is SyntaxKind.OpenParenToken or SyntaxKind.OpenBracketToken
12163
if (this.
CurrentToken
.Kind != closeKind && this.
CurrentToken
.Kind != SyntaxKind.SemicolonToken)
12191
else if (isIndexer && this.
CurrentToken
.Kind == closeKind)
12207
closeToken = this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken
12216
if (@this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken)
12220
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleArgumentExpression(),
12221
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind || p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken,
12228
return this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken;
12233
return IsValidArgumentRefKindKeyword(this.
CurrentToken
.Kind) || this.IsPossibleExpression();
12251
var nameColon = this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.ColonToken
12258
if (IsValidArgumentRefKindKeyword(this.
CurrentToken
.Kind) &&
12260
!(this.
CurrentToken
.Kind == SyntaxKind.RefKeyword &&
12268
if (isIndexer && this.
CurrentToken
.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBracketToken)
12272
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12304
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
12382
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12413
Debug.Assert(
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12439
if (IsParameterModifierIncludingScoped(this.
CurrentToken
))
12465
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
12473
switch (this.
CurrentToken
.Kind)
12489
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken);
12517
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12525
if (expression.Kind == SyntaxKind.IdentifierName && this.
CurrentToken
.Kind == SyntaxKind.ColonToken)
12546
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
12551
var argument = expression.Kind != SyntaxKind.IdentifierName || this.
CurrentToken
.Kind != SyntaxKind.ColonToken
12577
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12590
if (this.
CurrentToken
.Kind != SyntaxKind.CloseParenToken)
12597
if (forPattern && this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken)
12619
return !forPattern || this.
CurrentToken
.Kind switch
12644
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken || CanFollowCast(this.
CurrentToken
.Kind);
12650
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken &&
12659
return CanFollowCast(this.
CurrentToken
.Kind);
12690
return this.
CurrentToken
.ContextualKind is SyntaxKind.OrKeyword or SyntaxKind.AndKeyword;
12719
if (
CurrentToken
.Kind == SyntaxKind.OpenBracketToken)
12735
if (this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
12740
else if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
12754
if (this.
CurrentToken
.Kind == SyntaxKind.EqualsGreaterThanToken)
12764
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
12772
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
12783
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
12792
if (st == ScanTypeFlags.NotType || this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12809
if (this.
CurrentToken
.Kind == SyntaxKind.IdentifierToken &&
12817
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
12889
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.NewKeyword);
12908
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken);
12929
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleCollectionElement(),
12930
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
12949
return this.
CurrentToken
.Kind == SyntaxKind.NewKeyword && this.PeekToken(1).Kind == SyntaxKind.OpenBraceToken;
12957
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken);
12994
return this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken;
13009
return this.
CurrentToken
.Kind == SyntaxKind.OpenBracketToken;
13025
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
13035
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13040
if (this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken)
13062
if (this.
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13073
switch (this.
CurrentToken
.Kind)
13192
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(),
13193
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13202
this.
CurrentToken
.Kind == SyntaxKind.ColonToken
13205
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13216
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13244
Debug.Assert(this.
CurrentToken
.Kind is SyntaxKind.NewKeyword or SyntaxKind.StackAllocKeyword);
13271
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13311
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleVariableInitializer(),
13312
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13338
if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13360
this.
CurrentToken
.Kind == SyntaxKind.OpenBraceToken ? this.ParseArrayInitializer() : null);
13388
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13401
if (this.
CurrentToken
.Kind != SyntaxKind.OpenBraceToken)
13432
if (this.
CurrentToken
.Kind == SyntaxKind.StaticKeyword)
13438
if (this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword &&
13453
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.AsyncKeyword);
13478
if (this.
CurrentToken
.Kind == SyntaxKind.ColonToken &&
13515
if (
CurrentToken
.Kind != SyntaxKind.OpenParenToken)
13522
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13535
var identifier = (this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.EqualsGreaterThanToken)
13552
=>
CurrentToken
.Kind == SyntaxKind.OpenBraceToken
13583
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken && !p.IsPossibleLambdaParameter(),
13584
static (p, closeKind) => p.
CurrentToken
.Kind == closeKind,
13591
switch (this.
CurrentToken
.Kind)
13609
return IsPredefinedType(this.
CurrentToken
.Kind);
13620
if (IsParameterModifierIncludingScoped(this.
CurrentToken
))
13647
if (IsPredefinedType(this.
CurrentToken
.Kind))
13653
if (this.
CurrentToken
.Kind == SyntaxKind.OpenParenToken)
13663
if (this.IsTrueIdentifier(this.
CurrentToken
))
13690
=> IsTokenQueryContextualKeyword(this.
CurrentToken
);
13732
return this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword &&
13785
return this.ScanType() != ScanTypeFlags.NotType && this.
CurrentToken
.Kind is SyntaxKind.IdentifierToken or SyntaxKind.InKeyword;
13810
switch (this.
CurrentToken
.ContextualKind)
13834
SelectOrGroupClauseSyntax selectOrGroupBy = this.
CurrentToken
.ContextualKind switch
13846
this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword
13853
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.FromKeyword);
13862
(this.
CurrentToken
.Kind != SyntaxKind.IdentifierToken || SyntaxFacts.IsQueryContextualKeyword(this.
CurrentToken
.ContextualKind)))
13886
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.JoinKeyword);
13899
into: this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword
13906
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.LetKeyword);
13916
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.WhereKeyword);
13924
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.OrderByKeyword);
13932
while (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13934
if (this.
CurrentToken
.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken)
13938
else if (this.
CurrentToken
.Kind == SyntaxKind.CommaToken)
13959
static p => p.
CurrentToken
.Kind != SyntaxKind.CommaToken,
13960
static (p, _) => p.
CurrentToken
.Kind == SyntaxKind.CloseParenToken
13961
|| p.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
13973
if (this.
CurrentToken
.ContextualKind is SyntaxKind.AscendingKeyword or SyntaxKind.DescendingKeyword)
13987
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.SelectKeyword);
13995
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.GroupKeyword);
14005
Debug.Assert(this.
CurrentToken
.ContextualKind == SyntaxKind.IntoKeyword);
14136
if (requireOneElement || this.
CurrentToken
.Kind != closeTokenKind)
14153
if (this.
CurrentToken
.Kind == closeTokenKind)
14164
nodes.AddSeparator(this.
CurrentToken
.Kind == SyntaxKind.SemicolonToken
14171
if (this.
CurrentToken
.Kind == closeTokenKind)
14206
if (this.
CurrentToken
.Kind == separatorTokenKind)
14211
if (allowSemicolonAsSeparator && this.
CurrentToken
.Kind is SyntaxKind.SemicolonToken)
14300
if (this.
CurrentToken
.Kind == SyntaxKind.EndOfFileToken) return node;
14302
while (this.
CurrentToken
.Kind != SyntaxKind.EndOfFileToken)
Parser\LanguageParser_InterpolatedString.cs (3)
40
Debug.Assert(this.
CurrentToken
.Kind == SyntaxKind.InterpolatedStringToken);
405
if (this.
CurrentToken
.Kind != SyntaxKind.CommaToken)
418
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
;