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