780 references to CurrentToken
Microsoft.CodeAnalysis.CSharp (780)
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 (613)
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) 2558switch (this.CurrentToken.Kind) 2600if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken) 2634if (this.CurrentToken.Kind == SyntaxKind.ConstKeyword) 2647if (this.CurrentToken.Kind == SyntaxKind.EventKeyword) 2653if (this.CurrentToken.Kind == SyntaxKind.FixedKeyword) 2665if (this.CurrentToken.Kind == SyntaxKind.NamespaceKeyword) 2687if (this.CurrentToken.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken && 2928if (CurrentToken.Kind == SyntaxKind.UsingKeyword) 2933if (CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword) 2948if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None && 2949this.CurrentToken.ContextualKind is not (SyntaxKind.PartialKeyword or SyntaxKind.AsyncKeyword or SyntaxKind.RequiredKeyword or SyntaxKind.FileKeyword) && 2952var misplacedModifier = this.CurrentToken; 3015offset: incompleteMember.Width + incompleteMember.GetTrailingTriviaWidth() + this.CurrentToken.GetLeadingTriviaWidth(), 3016this.CurrentToken.Width, 3018this.CurrentToken.Text); 3082|| this.CurrentToken.Kind is not SyntaxKind.OpenParenToken and not SyntaxKind.OpenBraceToken and not SyntaxKind.EqualsGreaterThanToken) && 3190if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken) 3196if (this.CurrentToken.Kind == SyntaxKind.TildeToken) 3202if (this.CurrentToken.Kind == SyntaxKind.ConstKeyword) 3208if (this.CurrentToken.Kind == SyntaxKind.EventKeyword) 3214if (this.CurrentToken.Kind == SyntaxKind.FixedKeyword) 3322return this.CurrentToken.ContextualKind == SyntaxKind.ExtensionKeyword && 3354if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 3359if (this.CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword) 3397return this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword or SyntaxKind.OperatorKeyword; 3455var currentTokenKind = this.CurrentToken.Kind; 3472Debug.Assert(this.CurrentToken.Kind is SyntaxKind.ColonToken or SyntaxKind.EqualsGreaterThanToken); 3475var token = this.CurrentToken.Kind is SyntaxKind.BaseKeyword or SyntaxKind.ThisKeyword 3479var argumentList = this.CurrentToken.Kind == SyntaxKind.OpenParenToken 3497Debug.Assert(this.CurrentToken.Kind == SyntaxKind.TildeToken); 3523if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 3531blockBody = this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 3535expressionBody = this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken 3546else if (parseSemicolonAfterBlock && this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 3558if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 3564if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 3570if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 3586=> this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken; 3590return this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken; 3594=> this.CurrentToken.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken; 3597=> this.CurrentToken.Kind == (errored ? SyntaxKind.CloseParenToken : SyntaxKind.GreaterThanToken); 3600=> this.CurrentToken.Kind == SyntaxKind.CloseBracketToken; 3617if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 3622else if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 3625var colonToken = this.CurrentToken; 3672switch (this.CurrentToken.Kind) 3691if (this.CurrentToken.Kind is not (SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword)) 3695if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 3705if (this.CurrentToken.Kind == SyntaxKind.OperatorKeyword) 3719(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.CurrentToken.Kind != SyntaxKind.OpenParenToken)) 3725separatorKind = this.CurrentToken.Kind; 3747if (this.CurrentToken.Kind != SyntaxKind.OperatorKeyword || 3769var style = this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword 3779if (!style.IsMissing && explicitInterfaceOpt is not null && this.CurrentToken.Kind != SyntaxKind.OperatorKeyword && style.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia)) 3811bool couldBeParameterList = this.CurrentToken.Kind == SyntaxKind.OpenParenToken; 3816this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 3847if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 3864if (this.CurrentToken.Kind == SyntaxKind.OperatorKeyword) 3874(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.CurrentToken.Kind != SyntaxKind.OpenParenToken); 3913if (CurrentToken.Kind == SyntaxKind.UncheckedKeyword) 3932var firstToken = this.CurrentToken; 3965if (SyntaxFacts.IsAnyOverloadableOperator(this.CurrentToken.Kind)) 3974if (this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword) 3977(opTokenErrorOffset, opTokenErrorWidth) = (0, this.CurrentToken.Width); 4009var tk = this.CurrentToken; 4016tk = this.CurrentToken; 4148if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken) 4156if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 4165if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken 4200if (this.CurrentToken.Kind is SyntaxKind.SemicolonToken) 4208var accessorList = this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 4216if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken) 4222else if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 4234else if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 4319if (this.CurrentToken.Kind == SyntaxKind.CloseBraceToken) 4354var refKeyword = this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 4365static p => p.CurrentToken.Kind != SyntaxKind.CloseBraceToken && !p.IsPossibleAccessor(), 4372return this.CurrentToken.Kind == SyntaxKind.IdentifierToken 4374|| SyntaxFacts.GetAccessorDeclarationKind(this.CurrentToken.ContextualKind) != SyntaxKind.None 4375|| this.CurrentToken.Kind == SyntaxKind.OpenBraceToken // for accessor blocks w/ missing keyword 4376|| this.CurrentToken.Kind == SyntaxKind.SemicolonToken // for empty body accessors w/ missing keyword 4398if (GetModifierExcludingScoped(this.CurrentToken) == DeclarationModifiers.None) 4546var token = (first && !this.CurrentToken.ContainsDiagnostics) ? this.EatTokenEvenWithIncorrectKind(expected) : this.EatToken(); 4572var token = (first && !this.CurrentToken.ContainsDiagnostics) ? this.EatTokenWithPrejudice(errorCode) : this.EatToken(); 4628bool currentTokenIsSemicolon = this.CurrentToken.Kind == SyntaxKind.SemicolonToken; 4629bool currentTokenIsArrow = this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken; 4630bool currentTokenIsOpenBraceToken = this.CurrentToken.Kind == SyntaxKind.OpenBraceToken; 4812static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleParameter(), 4813static (p, closeKind) => p.CurrentToken.Kind == closeKind, 4820return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken; 4825switch (this.CurrentToken.Kind) 4837return IsParameterModifierExcludingScoped(this.CurrentToken) || 4839IsPredefinedType(this.CurrentToken.Kind); 4899if (this.CurrentToken.Kind == SyntaxKind.ArgListKeyword) 4910if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && IsCurrentTokenWhereOfConstraintClause()) 4917identifier = allowOptionalIdentifier && this.CurrentToken.Kind != SyntaxKind.IdentifierToken 4923if (identifier is not null && this.CurrentToken.Kind is SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind is SyntaxKind.CloseBracketToken) 4972if (IsParameterModifierExcludingScoped(this.CurrentToken)) 5018Debug.Assert(this.CurrentToken.Kind == SyntaxKind.FixedKeyword); 5036Debug.Assert(this.CurrentToken.Kind == SyntaxKind.EventKeyword); 5060if (explicitInterfaceOpt != null && this.CurrentToken.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken) 5112if (explicitInterfaceOpt != null && this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 5139if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 5192if (this.CurrentToken.Kind == SyntaxKind.DotToken) 5208return this.CurrentToken.Kind == SyntaxKind.SemicolonToken; 5273if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 5277else if (stopOnCloseParen && this.CurrentToken.Kind == SyntaxKind.CloseParenToken) 5281else if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 5331static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 5332static (p, _) => p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 5486var currentTokenKind = this.CurrentToken.Kind; 5497currentTokenKind = this.CurrentToken.Kind; 5547switch (this.CurrentToken.Kind) 5558var refKeyword = isLocalOrField && !isConst && this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 5635if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 5653Debug.Assert(this.CurrentToken.Kind != SyntaxKind.EqualsToken); 5693if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 5707this.CurrentToken.Kind == SyntaxKind.IdentifierToken && 5732Debug.Assert(this.CurrentToken.Kind is SyntaxKind.OpenParenToken or SyntaxKind.LessThanToken); 5740(this.CurrentToken.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.EqualsGreaterThanToken || 5741this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword)) 5751switch (this.CurrentToken.Kind) 5763return this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 5770return this.CurrentToken.Kind == SyntaxKind.OpenBraceToken || this.IsPossibleExpression(); 5789Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DelegateKeyword); 5800if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 5822Debug.Assert(this.CurrentToken.Kind == SyntaxKind.EnumKeyword); 5837if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 5853if (CurrentToken.Kind == SyntaxKind.SemicolonToken) 5898static p => p.CurrentToken.Kind is not SyntaxKind.CommaToken and not SyntaxKind.SemicolonToken && !p.IsPossibleEnumMemberDeclaration(), 5899static (p, closeKind) => p.CurrentToken.Kind == closeKind, 5914if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 5919this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBraceToken 5929return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken || this.IsTrueIdentifier(); 5934return this.CurrentToken.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken; 5973if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 6013var ctk = this.CurrentToken.Kind; 6025result = this.AddError(result, ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text); 6051if (this.CurrentToken.ContextualKind == SyntaxKind.PartialKeyword) 6064return CurrentToken.ContextualKind == SyntaxKind.FieldKeyword && 6071if (this.CurrentToken.Kind != SyntaxKind.LessThanToken) 6101static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 6102static (p, closeKind) => p.CurrentToken.Kind == closeKind, 6114if (this.CurrentToken.Kind is SyntaxKind.OpenBracketToken or SyntaxKind.InKeyword or SyntaxKind.OutKeyword) 6123if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 6142this.CurrentToken.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword ? EatToken() : null, 6159if (this.CurrentToken.Kind == SyntaxKind.LessThanToken) 6169Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6194if (this.CurrentToken.Kind != SyntaxKind.LessThanToken) 6244switch (this.CurrentToken.Kind) 6326Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6336while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 6353if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 6359if (this.CurrentToken.Kind == SyntaxKind.GreaterThanToken) 6368if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 6403isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken; 6430isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken; 6452isDefinitelyTypeArgumentList = this.CurrentToken.Kind == SyntaxKind.CommaToken; 6470while (this.CurrentToken.Kind == SyntaxKind.CommaToken); 6472if (this.CurrentToken.Kind != SyntaxKind.GreaterThanToken) 6478if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken) 6487if (lastScannedType is ScanTypeFlags.TupleType && this.CurrentToken.Kind is SyntaxKind.OpenParenToken) 6500isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.CurrentToken.Kind is SyntaxKind.CloseParenToken; 6512Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6522while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 6539if (this.CurrentToken.Kind == SyntaxKind.GreaterThanToken) 6546if (tokenBreaksTypeArgumentList(this.CurrentToken)) 6555if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken && tokenBreaksTypeArgumentList(this.PeekToken(1))) 6564if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken 6570if (this.CurrentToken.Kind == SyntaxKind.CommaToken || this.IsPossibleType()) 6640static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleType(), 6641static (p, _) => p.CurrentToken.Kind == SyntaxKind.GreaterThanToken, 6649if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken) 6665var varianceToken = this.CurrentToken.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword 6692this.CurrentToken.Kind is not SyntaxKind.CommaToken and not SyntaxKind.GreaterThanToken && 6714=> this.CurrentToken.Kind == SyntaxKind.GreaterThanToken; 6718Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6756if (this.CurrentToken.Kind == SyntaxKind.ThisKeyword) 6807if (isEvent && this.CurrentToken.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken) 6878separator = this.CurrentToken.Kind == SyntaxKind.ColonColonToken 6891if (this.CurrentToken.Kind == SyntaxKind.ColonColonToken) 6920if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 6996return this.CurrentToken.Kind == SyntaxKind.ColonColonToken 7126var tk = this.CurrentToken.Kind; 7147if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken || !this.IsTrueIdentifier()) 7154if (this.CurrentToken.Kind == SyntaxKind.LessThanToken) 7169if (this.CurrentToken.Kind == SyntaxKind.RefKeyword) 7174if (this.CurrentToken.Kind == SyntaxKind.ReadOnlyKeyword) 7181if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken or SyntaxKind.ColonColonToken) 7184if (this.CurrentToken.Kind is SyntaxKind.ColonColonToken) 7198Debug.Assert(this.CurrentToken.Kind is SyntaxKind.IdentifierToken); 7238else if (IsPredefinedType(this.CurrentToken.Kind)) 7244else if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 7249if (result == ScanTypeFlags.NotType || mode == ParseTypeMode.DefinitePattern && this.CurrentToken.Kind != SyntaxKind.OpenBracketToken) 7269switch (this.CurrentToken.Kind) 7310while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7315if (this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 7348if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7366while (this.CurrentToken.Kind == SyntaxKind.CommaToken); 7368if (this.CurrentToken.Kind == SyntaxKind.CloseParenToken) 7390if (CurrentToken.Kind == SyntaxKind.IdentifierToken) 7393switch (CurrentToken) 7408if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 7425Debug.Assert(CurrentToken.Kind == SyntaxKind.CommaToken); 7438if (!IsPossibleFunctionPointerParameterListStart(CurrentToken)) 7478if (!validStartingToken && CurrentToken.Kind == SyntaxKind.CloseParenToken) 7492isNotExpectedFunction: static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 7513if (this.CurrentToken.Kind == SyntaxKind.VoidKeyword && this.PeekToken(1).Kind != SyntaxKind.AsteriskToken) 7538if (this.CurrentToken.Kind == SyntaxKind.RefKeyword) 7542this.CurrentToken.Kind == SyntaxKind.ReadOnlyKeyword ? this.EatToken() : null, 7586switch (this.CurrentToken.Kind) 7634while (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken); 7655Debug.Assert(this.CurrentToken.Kind == SyntaxKind.QuestionToken); 7678if (mode == ParseTypeMode.AfterIs && this.CurrentToken.Kind is SyntaxKind.OpenBracketToken) 7705return this.CurrentToken.Kind != SyntaxKind.ColonToken; 7732if (IsTrueIdentifier(this.CurrentToken)) 7741if (this.CurrentToken.ContextualKind is SyntaxKind.AsyncKeyword or SyntaxKind.AwaitKeyword or SyntaxKind.FromKeyword) 7795if (this.CurrentToken.Kind is SyntaxKind.OpenBracketToken) 7804this.CurrentToken.Kind is SyntaxKind.OpenParenToken or // ctor parameters 7839while (IsMakingProgress(ref lastTokenPosition) && this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 7841if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7854if (this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 7895if (this.CurrentToken.Kind != SyntaxKind.CloseParenToken) 7899while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7934static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(), 7935static (p, _) => p.CurrentToken.Kind == SyntaxKind.CloseBracketToken, 7941if (IsPredefinedType(this.CurrentToken.Kind)) 7945if (token.Kind == SyntaxKind.VoidKeyword && this.CurrentToken.Kind != SyntaxKind.AsteriskToken) 7954if (IsTrueIdentifier() || this.CurrentToken.Kind == SyntaxKind.ColonColonToken) 7959if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 7982if (!IsPossibleFunctionPointerParameterListStart(CurrentToken)) 8025Debug.Assert(CurrentToken.Kind == SyntaxKind.CommaToken); 8036lessThanToken.IsMissing && CurrentToken.Kind == SyntaxKind.CloseParenToken 8051isNotExpectedFunction: static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 8059if (CurrentToken.Kind == SyntaxKind.IdentifierToken) 8063switch (CurrentToken) 8067managedSpecifier = EatContextualToken(CurrentToken.ContextualKind); 8087if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 8105Debug.Assert(CurrentToken.Kind == SyntaxKind.CommaToken); 8135=> CurrentToken.Kind == SyntaxKind.DelegateKeyword && PeekToken(1).Kind == SyntaxKind.AsteriskToken; 8146while (this.CurrentToken.Kind == SyntaxKind.AsteriskToken) 8166if (this.CurrentToken.Kind != SyntaxKind.OpenBracketToken) 8180while (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 8190var isCollectionExpression = this.CurrentToken.Kind 8203|| IsExpectedBinaryOperator(this.CurrentToken.Kind) 8204|| IsExpectedAssignmentOperator(this.CurrentToken.Kind) 8205|| (this.CurrentToken.ContextualKind is SyntaxKind.SwitchKeyword or SyntaxKind.WithKeyword && this.PeekToken(1).Kind is SyntaxKind.OpenBraceToken); 8209this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 8268switch (this.CurrentToken.Kind) 8364bool beginsWithAwait = this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword; 8399if (this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword && 8440=> CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword && PeekToken(1).Kind == SyntaxKind.UsingKeyword; 8454return this.CurrentToken.ContextualKind == SyntaxKind.YieldKeyword && 8464var tk = this.CurrentToken.Kind; 8492tk = this.CurrentToken.ContextualKind; 8507bool? typedIdentifier = IsPossibleTypedIdentifierStart(this.CurrentToken, this.PeekToken(1), allowThisKeyword: false); 8528var tk = this.CurrentToken.ContextualKind; 8572if (st == ScanTypeFlags.MustBeType && this.CurrentToken.Kind is not SyntaxKind.DotToken and not SyntaxKind.OpenParenToken) 8582if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 8590return st == ScanTypeFlags.GenericTypeOrExpression && (IsDefiniteStatement() || IsTypeDeclarationStart() || IsAccessibilityModifier(CurrentToken.Kind)); 8611if (this.CurrentToken.Kind != SyntaxKind.UsingKeyword) 8677if (this.CurrentToken.Kind is SyntaxKind.OpenBraceToken) 8698if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 8705if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 8714return this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.SemicolonToken; 8732if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken || this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 8739if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 8831Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DelegateKeyword); 8859Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenParenToken); 8868if (scanResult == ScanTypeFlags.TupleType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 8879Debug.Assert(this.CurrentToken.Kind == SyntaxKind.NewKeyword); 9024CSharpSyntaxNode openBrace = isAccessorBody && this.CurrentToken.Kind != SyntaxKind.OpenBraceToken 9105while (this.CurrentToken.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken 9137return this.CurrentToken.Kind == SyntaxKind.SemicolonToken 9149static (p, _) => p.CurrentToken.Kind == SyntaxKind.CloseBraceToken, 9157var tk = this.CurrentToken.Kind; 9194var tk = this.CurrentToken.Kind; 9239return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken; 9302Debug.Assert(this.CurrentToken.Kind is SyntaxKind.TryKeyword or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword); 9315Debug.Assert(this.CurrentToken.Kind is SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword); 9329if (this.CurrentToken.Kind == SyntaxKind.CatchKeyword) 9332while (this.CurrentToken.Kind == SyntaxKind.CatchKeyword) 9338if (this.CurrentToken.Kind == SyntaxKind.FinallyKeyword) 9373return this.CurrentToken.Kind is SyntaxKind.CloseBraceToken or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword; 9378Debug.Assert(this.CurrentToken.Kind == SyntaxKind.CatchKeyword); 9385if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 9405var keywordKind = this.CurrentToken.ContextualKind; 9437return this.CurrentToken.Kind is SyntaxKind.CloseParenToken 9446return this.CurrentToken.Kind is SyntaxKind.CloseParenToken 9454return this.CurrentToken.Kind is SyntaxKind.CloseBraceToken 9461Debug.Assert(this.CurrentToken.Kind is SyntaxKind.CheckedKeyword or SyntaxKind.UncheckedKeyword); 9478Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DoKeyword); 9502return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken; 9519Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ForKeyword); 9540Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ForKeyword); 9550var condition = this.CurrentToken.Kind is not SyntaxKind.SemicolonToken and not SyntaxKind.CommaToken 9559var incrementors = this.CurrentToken.Kind != SyntaxKind.CloseParenToken 9588if (this.CurrentToken.ContextualKind == SyntaxKind.ScopedKeyword) 9597isDeclaration = ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken; 9601else if (this.CurrentToken.Kind == SyntaxKind.RefKeyword) 9618else if (this.CurrentToken.Kind != SyntaxKind.SemicolonToken) 9633=> this.CurrentToken.Kind is SyntaxKind.CommaToken 9641while (this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CommaToken) 9665if (@this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken) 9669static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(), 9670static (p, closeKind) => p.CurrentToken.Kind == closeKind || p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 9677return this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken; 9684Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ForEachKeyword || this.CurrentToken.Kind == SyntaxKind.ForKeyword); 9695if (this.CurrentToken.Kind == SyntaxKind.ForKeyword) 9789if (this.IsInAsync && this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword) 9797if (this.CurrentToken.ContextualKind == SyntaxKind.ScopedKeyword) 9800if (ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 9847return this.CurrentToken.Kind == SyntaxKind.CommaToken; 9849return this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseParenToken; 9862if (!this.CurrentToken.IsIdentifierVar()) 9901Debug.Assert(this.CurrentToken.Kind == SyntaxKind.GotoKeyword); 9909if (this.CurrentToken.Kind is SyntaxKind.CaseKeyword or SyntaxKind.DefaultKeyword) 9937if (this.CurrentToken.Kind != SyntaxKind.CloseParenToken) 9948if (this.CurrentToken.Kind == SyntaxKind.CloseParenToken && 9967Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IfKeyword); 9980var elseKeyword = this.CurrentToken.Kind != SyntaxKind.ElseKeyword ? 9991if (this.CurrentToken.Kind != SyntaxKind.IfKeyword) 10032Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ElseKeyword); 10046return this.CurrentToken.Kind != SyntaxKind.ElseKeyword 10055Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LockKeyword); 10067Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ReturnKeyword); 10071this.CurrentToken.Kind != SyntaxKind.SemicolonToken ? this.ParsePossibleRefExpression() : null, 10077Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.YieldKeyword); 10084if (this.CurrentToken.Kind == SyntaxKind.BreakKeyword) 10093if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 10114Debug.Assert(this.CurrentToken.Kind is SyntaxKind.SwitchKeyword or SyntaxKind.CaseKeyword); 10139if (this.CurrentToken.Kind is SyntaxKind.CaseKeyword) 10184return this.CurrentToken.Kind == SyntaxKind.CaseKeyword || 10185(this.CurrentToken.Kind == SyntaxKind.DefaultKeyword && this.PeekToken(1).Kind != SyntaxKind.OpenParenToken); 10199if (this.CurrentToken.Kind == SyntaxKind.CaseKeyword) 10203if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 10215if (this.CurrentToken.ContextualKind == SyntaxKind.WhenKeyword && node is ExpressionSyntax ex) 10240Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DefaultKeyword); 10262Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ThrowKeyword); 10266this.CurrentToken.Kind != SyntaxKind.SemicolonToken ? this.ParseExpressionCore() : null, 10272Debug.Assert(this.CurrentToken.Kind == SyntaxKind.UnsafeKeyword); 10340if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 10367if (this.CurrentToken.Kind == SyntaxKind.ColonToken && 10399bool condition1 = st == ScanTypeFlags.MustBeType && this.CurrentToken.Kind != SyntaxKind.DotToken; 10400bool condition2 = st != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken; 10408Debug.Assert(this.CurrentToken.Kind == SyntaxKind.WhileKeyword); 10443else if (this.CurrentToken.Kind == SyntaxKind.UsingKeyword) 10539if (this.CurrentToken.ContextualKind != SyntaxKind.ScopedKeyword) 10556if (IsParameterModifierExcludingScoped(this.CurrentToken)) 10573return this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken; 10575else if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 10600if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 10608done = (this.CurrentToken.Kind == SyntaxKind.CloseParenToken); 10621if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 10651return CurrentToken.ContextualKind == SyntaxKind.UnderscoreToken 10658if (this.CurrentToken.ContextualKind != SyntaxKind.WhenKeyword) 10742switch (this.CurrentToken.Kind) 10755while (IsDeclarationModifier(k = this.CurrentToken.ContextualKind) || IsAdditionalLocalFunctionModifier(k)) 10792Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IdentifierToken); 10798if (IsDeclarationModifier(this.CurrentToken.Kind) || 10799IsAdditionalLocalFunctionModifier(this.CurrentToken.Kind)) 10806if (ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 10814while (IsAdditionalLocalFunctionModifier(this.CurrentToken.ContextualKind)); 10954if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 10993if (IsScript && this.CurrentToken.Kind == SyntaxKind.EndOfFileToken) 11037SyntaxKind tk = this.CurrentToken.Kind; 11083return this.IsTrueIdentifier() || this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword; 11319return (this.IsScript || this.IsInAsync) && this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword; 11324if (this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword) 11402var tk = this.CurrentToken.Kind; 11444if (this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword && IsInQuery) 11451this.AddError(this.EatToken(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text)); 11498if (this.CurrentToken.Kind == SyntaxKind.QuestionToken && precedence <= Precedence.Conditional) 11596if (this.CurrentToken.Kind != SyntaxKind.ColonToken && 11614if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 11626if (this.CurrentToken.Kind == SyntaxKind.EndOfFileToken && this.lexer.InterpolationFollowedByColon) 11685var token1 = this.CurrentToken; 11787if (operatorExpressionKind == SyntaxKind.SimpleAssignmentExpression && CurrentToken.Kind == SyntaxKind.RefKeyword && 11807if (this.CurrentToken.Kind != SyntaxKind.DotToken) 11811return nextToken.Kind == SyntaxKind.DotToken && NoTriviaBetween(this.CurrentToken, nextToken); 11829if (this.CurrentToken is { Kind: SyntaxKind.DotToken } token3 && 11899var tk = this.CurrentToken.Kind; 11935return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text); 11964return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text); 12032if (this.CurrentToken.Kind != SyntaxKind.DotToken || tk == SyntaxKind.VoidKeyword) 12057offset: this.CurrentToken.GetLeadingTriviaWidth(), 12058width: this.CurrentToken.Width, 12082switch (this.CurrentToken.Kind) 12094expr = _syntaxFactory.PostfixUnaryExpression(SyntaxFacts.GetPostfixUnaryExpression(this.CurrentToken.Kind), expr, this.EatToken()); 12129if (this.CurrentToken.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia) && 12163Debug.Assert(this.CurrentToken.Kind == SyntaxKind.BaseKeyword); 12177if (precedence > Precedence.Assignment || !(this.CurrentToken.IsIdentifierVar() || IsPredefinedType(this.CurrentToken.Kind))) 12186this.CurrentToken.Kind == SyntaxKind.OpenParenToken && ScanDesignator() && 12187this.CurrentToken.Kind == SyntaxKind.EqualsToken; 12192switch (this.CurrentToken.Kind) 12211switch (this.CurrentToken.Kind) 12285if (this.CurrentToken.Kind == SyntaxKind.QuestionToken) 12324return this.CurrentToken.Kind != SyntaxKind.ColonToken; 12337while (this.CurrentToken.Kind == SyntaxKind.ExclamationToken) 12373=> this.CurrentToken.Kind switch 12432openToken = this.CurrentToken.Kind is SyntaxKind.OpenParenToken or SyntaxKind.OpenBracketToken 12439if (this.CurrentToken.Kind != closeKind && this.CurrentToken.Kind != SyntaxKind.SemicolonToken) 12467else if (isIndexer && this.CurrentToken.Kind == closeKind) 12483closeToken = this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken 12492if (@this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken) 12496static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleArgumentExpression(), 12497static (p, closeKind) => p.CurrentToken.Kind == closeKind || p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 12504return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken; 12509return IsValidArgumentRefKindKeyword(this.CurrentToken.Kind) || this.IsPossibleExpression(); 12527var nameColon = this.CurrentToken.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.ColonToken 12534if (IsValidArgumentRefKindKeyword(this.CurrentToken.Kind) && 12536!(this.CurrentToken.Kind == SyntaxKind.RefKeyword && 12544if (isIndexer && this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBracketToken) 12548else if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 12580if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 12658Debug.Assert(CurrentToken.Kind == SyntaxKind.OpenParenToken); 12689Debug.Assert(CurrentToken.Kind == SyntaxKind.OpenParenToken); 12715if (IsParameterModifierIncludingScoped(this.CurrentToken)) 12741if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 12749switch (this.CurrentToken.Kind) 12765Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenParenToken); 12793if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 12801if (expression.Kind == SyntaxKind.IdentifierName && this.CurrentToken.Kind == SyntaxKind.ColonToken) 12822while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 12827var argument = expression.Kind != SyntaxKind.IdentifierName || this.CurrentToken.Kind != SyntaxKind.ColonToken 12855if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 12868if (this.CurrentToken.Kind != SyntaxKind.CloseParenToken) 12875if (forPattern && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 12887if (inSwitchArmPattern && this.CurrentToken.ContextualKind == SyntaxKind.WhenKeyword) 12909return !forPattern || this.CurrentToken.Kind switch 12934return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken || CanFollowCast(this.CurrentToken.Kind); 12940if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken && 12949return CanFollowCast(this.CurrentToken.Kind); 12980return this.CurrentToken.ContextualKind is SyntaxKind.OrKeyword or SyntaxKind.AndKeyword; 13009if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 13025if (this.CurrentToken.Kind == SyntaxKind.StaticKeyword) 13030else if (this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword && 13044if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken) 13054if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13062if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && 13073if (this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword && 13082if (st == ScanTypeFlags.NotType || this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 13099if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && 13107if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 13179Debug.Assert(this.CurrentToken.Kind == SyntaxKind.NewKeyword); 13198Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenBracketToken); 13219static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleCollectionElement(), 13220static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13234if (this.CurrentToken.ContextualKind == SyntaxKind.WithKeyword && 13252return this.CurrentToken.Kind == SyntaxKind.NewKeyword && this.PeekToken(1).Kind == SyntaxKind.OpenBraceToken; 13260Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenBraceToken); 13297return this.CurrentToken.Kind == SyntaxKind.OpenBraceToken; 13312return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken; 13328if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 13338if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13343if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 13365if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 13376switch (this.CurrentToken.Kind) 13495static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(), 13496static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13505this.CurrentToken.Kind == SyntaxKind.ColonToken 13508this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 13519this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 13547Debug.Assert(this.CurrentToken.Kind is SyntaxKind.NewKeyword or SyntaxKind.StackAllocKeyword); 13574if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 13614static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleVariableInitializer(), 13615static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13641if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 13663this.CurrentToken.Kind == SyntaxKind.OpenBraceToken ? this.ParseArrayInitializer() : null); 13680if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13693if (this.CurrentToken.Kind != SyntaxKind.OpenBraceToken) 13724if (this.CurrentToken.Kind == SyntaxKind.StaticKeyword) 13730if (this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword && 13745Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword); 13770if (this.CurrentToken.Kind == SyntaxKind.ColonToken && 13798if (CurrentToken.Kind != SyntaxKind.OpenParenToken) 13805if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13818var identifier = (this.CurrentToken.Kind != SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.EqualsGreaterThanToken) 13835=> CurrentToken.Kind == SyntaxKind.OpenBraceToken 13866static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleLambdaParameter(), 13867static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13874switch (this.CurrentToken.Kind) 13892return IsPredefinedType(this.CurrentToken.Kind); 13903if (IsParameterModifierIncludingScoped(this.CurrentToken)) 13930if (IsPredefinedType(this.CurrentToken.Kind)) 13936if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13946if (this.IsTrueIdentifier(this.CurrentToken)) 13973=> IsTokenQueryContextualKeyword(this.CurrentToken); 14015return this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword && 14068return this.ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind is SyntaxKind.IdentifierToken or SyntaxKind.InKeyword; 14090switch (this.CurrentToken.ContextualKind) 14113SelectOrGroupClauseSyntax selectOrGroupBy = this.CurrentToken.ContextualKind switch 14125this.CurrentToken.ContextualKind == SyntaxKind.IntoKeyword 14132Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword); 14141(this.CurrentToken.Kind != SyntaxKind.IdentifierToken || SyntaxFacts.IsQueryContextualKeyword(this.CurrentToken.ContextualKind))) 14165Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.JoinKeyword); 14178into: this.CurrentToken.ContextualKind == SyntaxKind.IntoKeyword 14185Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.LetKeyword); 14189SyntaxFacts.IsReservedKeyword(this.CurrentToken.Kind) && this.PeekToken(1).Kind == SyntaxKind.EqualsToken 14198Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword); 14206Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.OrderByKeyword); 14214while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 14216if (this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken) 14220else if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 14241static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 14242static (p, _) => p.CurrentToken.Kind == SyntaxKind.CloseParenToken 14243|| p.CurrentToken.Kind == SyntaxKind.SemicolonToken 14255if (this.CurrentToken.ContextualKind is SyntaxKind.AscendingKeyword or SyntaxKind.DescendingKeyword) 14269Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.SelectKeyword); 14277Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.GroupKeyword); 14287Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.IntoKeyword); 14418if (requireOneElement || this.CurrentToken.Kind != closeTokenKind) 14435if (this.CurrentToken.Kind == closeTokenKind) 14446nodes.AddSeparator(this.CurrentToken.Kind == SyntaxKind.SemicolonToken 14453if (this.CurrentToken.Kind == closeTokenKind) 14488if (this.CurrentToken.Kind == separatorTokenKind) 14493if (allowSemicolonAsSeparator && this.CurrentToken.Kind is SyntaxKind.SemicolonToken) 14582if (this.CurrentToken.Kind == SyntaxKind.EndOfFileToken) return node; 14584while (this.CurrentToken.Kind != SyntaxKind.EndOfFileToken)
Parser\LanguageParser_InterpolatedString.cs (3)
112Debug.Assert(this.CurrentToken.Kind == SyntaxKind.InterpolatedStringToken); 537if (this.CurrentToken.Kind != SyntaxKind.CommaToken) 550var leading = this.CurrentToken.GetLeadingTrivia();
Parser\LanguageParser_Patterns.cs (34)
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) 166else if (this.CurrentToken.Kind == SyntaxKind.EqualsEqualsToken) 172else if (this.CurrentToken.Kind == SyntaxKind.ExclamationEqualsToken) 190var tk = this.CurrentToken.Kind; 202if (CurrentToken.ContextualKind == SyntaxKind.UnderscoreToken) 207switch (CurrentToken.Kind) 259switch (this.CurrentToken.Kind) 291(this.CurrentToken.Kind == SyntaxKind.OpenParenToken || this.IsValidPatternDesignation(inSwitchArmPattern))) 300if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken && (type != null || !looksLikeCast())) 383if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 409if (CurrentToken.Kind == SyntaxKind.IdentifierToken) 411switch (CurrentToken.ContextualKind) 502if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 534if (this.CurrentToken.Kind == SyntaxKind.ColonToken && ConvertPatternToExpressionIfPossible(pattern, permitTypeArguments: true) is ExpressionSyntax expr) 555this.CurrentToken.Kind is 568if (@this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBraceToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken) 575if (@this._termState.HasFlag(TerminatorState.IsExpressionOrPatternInCaseLabelOfSwitchStatement) && @this.CurrentToken.Kind is SyntaxKind.ColonToken) 584if (@this._termState.HasFlag(TerminatorState.IsPatternInSwitchExpressionArm) && @this.CurrentToken.Kind is SyntaxKind.EqualsGreaterThanToken or SyntaxKind.ColonToken) 588static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleSubpatternElement(), 589static (p, closeKind) => p.CurrentToken.Kind == closeKind || p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 609while (this.CurrentToken.Kind != SyntaxKind.CloseBraceToken) 615var errantCase = this.CurrentToken.Kind == SyntaxKind.CaseKeyword 634this.CurrentToken.Kind == SyntaxKind.ColonToken 640if (errantCase is null && switchExpressionCase.FullWidth == 0 && this.CurrentToken.Kind != SyntaxKind.CommaToken) 647if (this.CurrentToken.Kind != SyntaxKind.CloseBraceToken) 649var 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;