767 references to CurrentToken
Microsoft.CodeAnalysis.CSharp (767)
Parser\DirectiveParser.cs (28)
50SyntaxKind contextualKind = this.CurrentToken.ContextualKind; 89result = (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) ? 376switch (this.CurrentToken.Kind) 397if (this.CurrentToken.Kind == SyntaxKind.StringLiteralToken && 398(line.IsMissing || line.GetTrailingTriviaWidth() > 0 || this.CurrentToken.GetLeadingTriviaWidth() > 0)) //require separation between line number and file name 413Debug.Assert(CurrentToken.Kind == SyntaxKind.OpenParenToken); 432var characterOffset = (CurrentToken.Kind == SyntaxKind.NumericLiteralToken) ? 545SyntaxToken setting = this.CurrentToken.Kind switch 553SyntaxToken target = this.CurrentToken.Kind switch 574if (this.CurrentToken.ContextualKind == SyntaxKind.WarningKeyword) 578if (this.CurrentToken.Kind == SyntaxKind.DisableKeyword || this.CurrentToken.Kind == SyntaxKind.RestoreKeyword) 583while (this.CurrentToken.Kind != SyntaxKind.EndOfDirectiveToken) 588if (this.CurrentToken.Kind == SyntaxKind.NumericLiteralToken) 600else if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 621if (this.CurrentToken.Kind != SyntaxKind.CommaToken) 639else if (this.CurrentToken.Kind == SyntaxKind.ChecksumKeyword) 728if (this.CurrentToken.Kind != SyntaxKind.EndOfDirectiveToken && 729this.CurrentToken.Kind != SyntaxKind.EndOfFileToken) 748while (this.CurrentToken.Kind != SyntaxKind.EndOfDirectiveToken && 749this.CurrentToken.Kind != SyntaxKind.EndOfFileToken) 756SyntaxToken endOfDirective = this.CurrentToken.Kind == SyntaxKind.EndOfDirectiveToken 777while (this.CurrentToken.Kind == SyntaxKind.BarBarToken) 790while (this.CurrentToken.Kind == SyntaxKind.AmpersandAmpersandToken) 803while (this.CurrentToken.Kind == SyntaxKind.EqualsEqualsToken || this.CurrentToken.Kind == SyntaxKind.ExclamationEqualsToken) 815if (this.CurrentToken.Kind == SyntaxKind.ExclamationToken) 826var 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)) 1037if (SyntaxFacts.IsUnaryOperatorDeclarationToken(CurrentToken.Kind) || SyntaxFacts.IsBinaryExpressionOperatorToken(CurrentToken.Kind)) 1050if (operatorToken.Kind == SyntaxKind.GreaterThanToken && LanguageParser.NoTriviaBetween(operatorToken, CurrentToken)) 1052if (CurrentToken.Kind == SyntaxKind.GreaterThanToken) 1056if (LanguageParser.NoTriviaBetween(operatorToken2, CurrentToken) && 1057CurrentToken.Kind is (SyntaxKind.GreaterThanToken or SyntaxKind.GreaterThanEqualsToken)) 1093else if (CurrentToken.Kind == SyntaxKind.EqualsToken) 1103else if (CurrentToken.Kind == SyntaxKind.GreaterThanEqualsToken) 1161if (LanguageParser.NoTriviaBetween(operatorToken, CurrentToken) && CurrentToken.Kind == SyntaxKind.EqualsToken) 1183(isConversion || SyntaxFacts.IsAnyOverloadableOperator(CurrentToken.Kind))) 1192if (CurrentToken.Kind == SyntaxKind.UncheckedKeyword) 1209Debug.Assert(CurrentToken.Kind == SyntaxKind.ExplicitKeyword || 1210CurrentToken.Kind == SyntaxKind.ImplicitKeyword); 1247if (CurrentToken.Kind != openKind) 1257while (CurrentToken.Kind == SyntaxKind.CommaToken || IsPossibleCrefParameter()) 1261if (CurrentToken.Kind != closeKind) 1272Debug.Assert(CurrentToken.Kind != SyntaxKind.CommaToken); 1297SyntaxKind kind = this.CurrentToken.Kind; 1319switch (CurrentToken.Kind) 1329if (CurrentToken.Kind == SyntaxKind.ReadOnlyKeyword && refKindOpt is not null) 1356if (CurrentToken.Kind != SyntaxKind.LessThanToken) 1366Debug.Assert(CurrentToken.Kind == SyntaxKind.LessThanToken); 1384var currentKind = CurrentToken.Kind; 1386SyntaxFacts.IsPredefinedType(CurrentToken.Kind)) 1446if (SyntaxFacts.IsPredefinedType(CurrentToken.Kind)) 1455else if (CurrentToken.Kind == SyntaxKind.IdentifierToken && PeekToken(1).Kind == SyntaxKind.ColonColonToken) 1475if (checkForMember && (leftName.IsMissing || CurrentToken.Kind != SyntaxKind.DotToken)) 1487while (CurrentToken.Kind == SyntaxKind.DotToken) 1496if (checkForMember && (rightName.IsMissing || CurrentToken.Kind != SyntaxKind.DotToken)) 1518if (CurrentToken.Kind == SyntaxKind.QuestionToken) 1523while (CurrentToken.Kind == SyntaxKind.AsteriskToken) 1528if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 1534while (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 1540while (this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 1542if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 1592switch (CurrentToken.Kind) 1604return CurrentToken.Text == SyntaxFacts.GetText(SyntaxKind.LessThanToken) || 1605IsNonAsciiQuotationMark(CurrentToken); 1660switch (CurrentToken.Kind) 1672return CurrentToken.Text == SyntaxFacts.GetText(SyntaxKind.LessThanToken) || 1673IsNonAsciiQuotationMark(CurrentToken);
Parser\LanguageParser.cs (602)
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) 862switch (this.CurrentToken.Kind) 871return IsPossibleStartOfTypeDeclaration(this.CurrentToken.Kind); 877if (this.CurrentToken.ContextualKind == SyntaxKind.PartialKeyword) 894return this.CurrentToken.Kind == SyntaxKind.CloseBraceToken; 919return this.CurrentToken.Kind == SyntaxKind.ExternKeyword 932Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ExternKeyword); 956var globalToken = this.CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword 960Debug.Assert(this.CurrentToken.Kind == SyntaxKind.UsingKeyword); 967if (staticToken is null && unsafeToken != null && this.CurrentToken.Kind == SyntaxKind.StaticKeyword) 979var isAliasToFunctionPointer = alias != null && this.CurrentToken.Kind == SyntaxKind.DelegateKeyword; 998type = WithAdditionalDiagnostics(CreateMissingIdentifierName(), GetExpectedTokenError(SyntaxKind.IdentifierToken, this.CurrentToken.Kind)); 1021return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken 1041if (this.CurrentToken.Kind != SyntaxKind.OpenBracketToken) 1059if (SyntaxFacts.IsLiteralExpression(this.CurrentToken.Kind)) 1103return this.CurrentToken.Kind == SyntaxKind.CloseBracketToken 1108=> IsSomeWord(this.CurrentToken.Kind) && this.PeekToken(1).Kind == SyntaxKind.ColonToken; 1153if (this.CurrentToken.Kind == SyntaxKind.DotToken) 1159if (this.CurrentToken.Kind == SyntaxKind.MinusGreaterThanToken) 1164if (this.CurrentToken.Kind == SyntaxKind.QuestionToken && 1177static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttribute(), 1178static (p, closeKind) => p.CurrentToken.Kind == closeKind, 1207if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 1232static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttributeArgument(), 1233static (p, closeKind) => p.CurrentToken.Kind == closeKind, 1267if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 1358var newMod = GetModifierExcludingScoped(this.CurrentToken); 1495Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IdentifierToken && GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None); 1514(this.CurrentToken.ContextualKind == SyntaxKind.PartialKeyword)) 1531var currentTokenKind = this.CurrentToken.Kind; 1553var currentTokenKind = this.CurrentToken.Kind; 1571if (SyntaxFacts.IsPredefinedType(this.CurrentToken.Kind)) 1578if (IsNonContextualModifier(this.CurrentToken)) 1613Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.PartialKeyword); 1637Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.PartialKeyword); 1670switch (this.CurrentToken.Kind) 1673if (this.CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword) 1693switch (this.CurrentToken.Kind) 1711Debug.Assert(CurrentToken.ContextualKind is SyntaxKind.RecordKeyword or SyntaxKind.ExtensionKeyword); 1715throw ExceptionUtilities.UnexpectedValue(this.CurrentToken.Kind); 1721Debug.Assert(this.CurrentToken.Kind is SyntaxKind.ClassKeyword or SyntaxKind.StructKeyword or SyntaxKind.InterfaceKeyword || 1722this.CurrentToken.ContextualKind is SyntaxKind.RecordKeyword or SyntaxKind.ExtensionKeyword); 1743if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 1756var paramList = CurrentToken.Kind == SyntaxKind.OpenParenToken || isExtension 1768if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 1779if (CurrentToken.Kind == SyntaxKind.SemicolonToken) 1803SyntaxKind kind = this.CurrentToken.Kind; 1841closeBrace = WithAdditionalDiagnostics(closeBrace, this.GetExpectedTokenError(SyntaxKind.CloseBraceToken, this.CurrentToken.Kind)); 1868if (this.CurrentToken.ContextualKind == SyntaxKind.RecordKeyword) 1871recordModifier = this.CurrentToken.Kind is SyntaxKind.ClassKeyword or SyntaxKind.StructKeyword 1878if (this.CurrentToken.Kind is SyntaxKind.StructKeyword or SyntaxKind.ClassKeyword && 2032SyntaxKind kind = this.CurrentToken.Kind; 2080return this.IsPossibleMemberStart() || this.CurrentToken.Kind == SyntaxKind.CloseBraceToken; 2085return this.CurrentToken.Kind is SyntaxKind.ColonToken or SyntaxKind.OpenBraceToken 2102list.Add(this.CurrentToken.Kind == SyntaxKind.OpenParenToken 2109if (this.CurrentToken.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken || 2115if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 2129if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None) 2152static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleAttribute(), 2153static (p, _) => p.CurrentToken.Kind == SyntaxKind.OpenBraceToken || p.IsCurrentTokenWhereOfConstraintClause(), 2161this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword && 2168while (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 2186if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken || this.IsCurrentTokenWhereOfConstraintClause()) 2200if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 2201|| ((_termState & TerminatorState.IsEndOfTypeSignature) != 0 && this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 2202|| this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken 2203|| this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 2207else if (haveComma = (this.CurrentToken.Kind == SyntaxKind.CommaToken) || this.IsPossibleTypeParameterConstraint()) 2247static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleTypeParameterConstraint(), 2248static (p, _) => p.CurrentToken.Kind == SyntaxKind.OpenBraceToken || p.IsCurrentTokenWhereOfConstraintClause(), 2255switch (this.CurrentToken.Kind) 2264return (this.CurrentToken.ContextualKind == SyntaxKind.AllowsKeyword && PeekToken(1).Kind == SyntaxKind.RefKeyword) || this.IsTrueIdentifier(); 2266return IsPredefinedType(this.CurrentToken.Kind); 2272return this.CurrentToken.Kind switch 2284this.CurrentToken.Kind == SyntaxKind.QuestionToken 2316if (this.CurrentToken.ContextualKind == SyntaxKind.AllowsKeyword && 2330if (this.CurrentToken.Kind == SyntaxKind.CommaToken && PeekToken(1).Kind == SyntaxKind.RefKeyword) 2348return CanStartMember(this.CurrentToken.Kind); 2409switch (this.CurrentToken.Kind) 2419if (CurrentToken.ContextualKind == SyntaxKind.RecordKeyword) 2561switch (this.CurrentToken.Kind) 2607if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken) 2641if (this.CurrentToken.Kind == SyntaxKind.ConstKeyword) 2654if (this.CurrentToken.Kind == SyntaxKind.EventKeyword) 2660if (this.CurrentToken.Kind == SyntaxKind.FixedKeyword) 2672if (this.CurrentToken.Kind == SyntaxKind.NamespaceKeyword) 2694if (this.CurrentToken.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken && 2939if (CurrentToken.Kind == SyntaxKind.UsingKeyword) 2944if (CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword) 2959if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None && 2960this.CurrentToken.ContextualKind is not (SyntaxKind.PartialKeyword or SyntaxKind.AsyncKeyword or SyntaxKind.RequiredKeyword or SyntaxKind.FileKeyword) && 2963var misplacedModifier = this.CurrentToken; 3007incompleteMember.FullWidth + this.CurrentToken.GetLeadingTriviaWidth(), 3008this.CurrentToken.Width, 3010this.CurrentToken.Text); 3027|| this.CurrentToken.Kind is not SyntaxKind.OpenParenToken and not SyntaxKind.OpenBraceToken and not SyntaxKind.EqualsGreaterThanToken) && 3055if (IsStartOfPropertyBody(this.CurrentToken.Kind) || 3056(this.CurrentToken.Kind is SyntaxKind.SemicolonToken && IsStartOfPropertyBody(this.PeekToken(1).Kind))) 3114if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.OpenParenToken) 3120if (this.CurrentToken.Kind == SyntaxKind.TildeToken) 3126if (this.CurrentToken.Kind == SyntaxKind.ConstKeyword) 3132if (this.CurrentToken.Kind == SyntaxKind.EventKeyword) 3138if (this.CurrentToken.Kind == SyntaxKind.FixedKeyword) 3245return this.CurrentToken.ContextualKind == SyntaxKind.ExtensionKeyword && 3277if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 3282if (this.CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword && this.PeekToken(1).Kind == SyntaxKind.UsingKeyword) 3322return this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword or SyntaxKind.OperatorKeyword; 3364var initializer = this.CurrentToken.Kind == SyntaxKind.ColonToken 3383var kind = this.CurrentToken.Kind == SyntaxKind.BaseKeyword 3388if (this.CurrentToken.Kind is SyntaxKind.BaseKeyword or SyntaxKind.ThisKeyword) 3400var argumentList = this.CurrentToken.Kind == SyntaxKind.OpenParenToken 3412Debug.Assert(this.CurrentToken.Kind == SyntaxKind.TildeToken); 3438if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 3446blockBody = this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 3450expressionBody = this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken 3461else if (parseSemicolonAfterBlock && this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 3473if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 3479if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 3485if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 3501=> this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken; 3505return this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.OpenBraceToken; 3509=> this.CurrentToken.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken; 3512=> this.CurrentToken.Kind == (errored ? SyntaxKind.CloseParenToken : SyntaxKind.GreaterThanToken); 3515=> this.CurrentToken.Kind == SyntaxKind.CloseBracketToken; 3532if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 3537else if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 3540var colonToken = this.CurrentToken; 3590switch (this.CurrentToken.Kind) 3609if (this.CurrentToken.Kind is not (SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword)) 3613if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 3623if (this.CurrentToken.Kind == SyntaxKind.OperatorKeyword) 3637(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.CurrentToken.Kind != SyntaxKind.OpenParenToken)) 3643separatorKind = this.CurrentToken.Kind; 3665if (this.CurrentToken.Kind != SyntaxKind.OperatorKeyword || 3687var style = this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword 3697if (!style.IsMissing && explicitInterfaceOpt is not null && this.CurrentToken.Kind != SyntaxKind.OperatorKeyword && style.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia)) 3729bool couldBeParameterList = this.CurrentToken.Kind == SyntaxKind.OpenParenToken; 3734this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 3765if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 3782if (this.CurrentToken.Kind == SyntaxKind.OperatorKeyword) 3792(IsMakingProgress(ref lastTokenPosition, assertIfFalse: false) && this.CurrentToken.Kind != SyntaxKind.OpenParenToken); 3831if (CurrentToken.Kind == SyntaxKind.UncheckedKeyword) 3850var firstToken = this.CurrentToken; 3883if (SyntaxFacts.IsAnyOverloadableOperator(this.CurrentToken.Kind)) 3892if (this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword) 3927var tk = this.CurrentToken; 3934tk = this.CurrentToken; 4066if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken) 4074if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 4083if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken 4118if (this.CurrentToken.Kind is SyntaxKind.SemicolonToken) 4124Debug.Assert(IsStartOfPropertyBody(this.CurrentToken.Kind)); 4126var accessorList = this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 4134if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken) 4142else if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 4154else if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 4208if (this.CurrentToken.Kind == SyntaxKind.CloseBraceToken) 4243var refKeyword = this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 4254static p => p.CurrentToken.Kind != SyntaxKind.CloseBraceToken && !p.IsPossibleAccessor(), 4261return this.CurrentToken.Kind == SyntaxKind.IdentifierToken 4263|| SyntaxFacts.GetAccessorDeclarationKind(this.CurrentToken.ContextualKind) != SyntaxKind.None 4264|| this.CurrentToken.Kind == SyntaxKind.OpenBraceToken // for accessor blocks w/ missing keyword 4265|| this.CurrentToken.Kind == SyntaxKind.SemicolonToken // for empty body accessors w/ missing keyword 4287if (GetModifierExcludingScoped(this.CurrentToken) == DeclarationModifiers.None) 4435var token = (first && !this.CurrentToken.ContainsDiagnostics) ? this.EatTokenWithPrejudice(expected) : this.EatToken(); 4461var token = (first && !this.CurrentToken.ContainsDiagnostics) ? this.EatTokenWithPrejudice(errorCode) : this.EatToken(); 4517bool currentTokenIsSemicolon = this.CurrentToken.Kind == SyntaxKind.SemicolonToken; 4518bool currentTokenIsArrow = this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken; 4519bool currentTokenIsOpenBraceToken = this.CurrentToken.Kind == SyntaxKind.OpenBraceToken; 4702static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleParameter(), 4703static (p, closeKind) => p.CurrentToken.Kind == closeKind, 4710return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken; 4715switch (this.CurrentToken.Kind) 4727return IsParameterModifierExcludingScoped(this.CurrentToken) || IsPossibleScopedKeyword(isFunctionPointerParameter: false) || IsPredefinedType(this.CurrentToken.Kind); 4787if (this.CurrentToken.Kind == SyntaxKind.ArgListKeyword) 4798if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && IsCurrentTokenWhereOfConstraintClause()) 4805identifier = allowOptionalIdentifier && this.CurrentToken.Kind != SyntaxKind.IdentifierToken 4811if (identifier is not null && this.CurrentToken.Kind is SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind is SyntaxKind.CloseBracketToken) 4856while (IsParameterModifierExcludingScoped(this.CurrentToken)) 4858if (this.CurrentToken.Kind is SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword or SyntaxKind.ReadOnlyKeyword) 4875while (this.CurrentToken.Kind is SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword or SyntaxKind.ReadOnlyKeyword) 4888Debug.Assert(this.CurrentToken.Kind == SyntaxKind.FixedKeyword); 4906Debug.Assert(this.CurrentToken.Kind == SyntaxKind.EventKeyword); 4930if (explicitInterfaceOpt != null && this.CurrentToken.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken) 4982if (explicitInterfaceOpt != null && this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 5009if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 5062if (this.CurrentToken.Kind == SyntaxKind.DotToken) 5078return this.CurrentToken.Kind == SyntaxKind.SemicolonToken; 5143if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 5147else if (stopOnCloseParen && this.CurrentToken.Kind == SyntaxKind.CloseParenToken) 5151else if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 5201static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 5202static (p, _) => p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 5356var currentTokenKind = this.CurrentToken.Kind; 5366currentTokenKind = this.CurrentToken.Kind; 5417switch (this.CurrentToken.Kind) 5428var refKeyword = isLocalOrField && !isConst && this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 5505if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 5541Debug.Assert(this.CurrentToken.Kind is SyntaxKind.OpenParenToken or SyntaxKind.LessThanToken); 5549(this.CurrentToken.Kind is SyntaxKind.OpenBraceToken or SyntaxKind.EqualsGreaterThanToken || 5550this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword)) 5560switch (this.CurrentToken.Kind) 5572return this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 5579return this.CurrentToken.Kind == SyntaxKind.OpenBraceToken || this.IsPossibleExpression(); 5598Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DelegateKeyword); 5609if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 5631Debug.Assert(this.CurrentToken.Kind == SyntaxKind.EnumKeyword); 5646if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 5662if (CurrentToken.Kind == SyntaxKind.SemicolonToken) 5707static p => p.CurrentToken.Kind is not SyntaxKind.CommaToken and not SyntaxKind.SemicolonToken && !p.IsPossibleEnumMemberDeclaration(), 5708static (p, closeKind) => p.CurrentToken.Kind == closeKind, 5723if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 5728this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBraceToken 5738return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken || this.IsTrueIdentifier(); 5743return this.CurrentToken.Kind is SyntaxKind.DotToken or SyntaxKind.ColonColonToken; 5782if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 5822var ctk = this.CurrentToken.Kind; 5834result = this.AddError(result, ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text); 5860if (this.CurrentToken.ContextualKind == SyntaxKind.PartialKeyword) 5873return CurrentToken.ContextualKind == SyntaxKind.FieldKeyword && 5880if (this.CurrentToken.Kind != SyntaxKind.LessThanToken) 5910static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 5911static (p, closeKind) => p.CurrentToken.Kind == closeKind, 5922if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken) 5926if (this.CurrentToken.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword) 5943if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken) 5953this.CurrentToken.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword ? EatToken() : null, 5970if (this.CurrentToken.Kind == SyntaxKind.LessThanToken) 5980Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6005if (this.CurrentToken.Kind != SyntaxKind.LessThanToken) 6055switch (this.CurrentToken.Kind) 6137Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6147while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 6164if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 6170if (this.CurrentToken.Kind == SyntaxKind.GreaterThanToken) 6179if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 6214isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken; 6241isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken; 6263isDefinitelyTypeArgumentList = this.CurrentToken.Kind == SyntaxKind.CommaToken; 6281while (this.CurrentToken.Kind == SyntaxKind.CommaToken); 6283if (this.CurrentToken.Kind != SyntaxKind.GreaterThanToken) 6289if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken) 6298if (lastScannedType is ScanTypeFlags.TupleType && this.CurrentToken.Kind is SyntaxKind.OpenParenToken) 6311isDefinitelyTypeArgumentList = isDefinitelyTypeArgumentList || this.CurrentToken.Kind is SyntaxKind.CloseParenToken; 6323Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6333while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 6350if (this.CurrentToken.Kind == SyntaxKind.GreaterThanToken) 6357if (tokenBreaksTypeArgumentList(this.CurrentToken)) 6366if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken && tokenBreaksTypeArgumentList(this.PeekToken(1))) 6375if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken 6381if (this.CurrentToken.Kind == SyntaxKind.CommaToken || this.IsPossibleType()) 6451static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleType(), 6452static (p, _) => p.CurrentToken.Kind == SyntaxKind.GreaterThanToken, 6460if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken && this.PeekToken(1).Kind != SyntaxKind.CloseBracketToken) 6476var varianceToken = this.CurrentToken.Kind is SyntaxKind.InKeyword or SyntaxKind.OutKeyword 6503this.CurrentToken.Kind is not SyntaxKind.CommaToken and not SyntaxKind.GreaterThanToken && 6525=> this.CurrentToken.Kind == SyntaxKind.GreaterThanToken; 6529Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LessThanToken); 6567if (this.CurrentToken.Kind == SyntaxKind.ThisKeyword) 6618if (isEvent && this.CurrentToken.Kind is not SyntaxKind.OpenBraceToken and not SyntaxKind.SemicolonToken) 6689separator = this.CurrentToken.Kind == SyntaxKind.ColonColonToken 6702if (this.CurrentToken.Kind == SyntaxKind.ColonColonToken) 6731if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 6807return this.CurrentToken.Kind == SyntaxKind.ColonColonToken 6937var tk = this.CurrentToken.Kind; 6958if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken || !this.IsTrueIdentifier()) 6965if (this.CurrentToken.Kind == SyntaxKind.LessThanToken) 6980if (this.CurrentToken.Kind == SyntaxKind.RefKeyword) 6985if (this.CurrentToken.Kind == SyntaxKind.ReadOnlyKeyword) 6992if (this.CurrentToken.Kind is SyntaxKind.IdentifierToken or SyntaxKind.ColonColonToken) 6995if (this.CurrentToken.Kind is SyntaxKind.ColonColonToken) 7009Debug.Assert(this.CurrentToken.Kind is SyntaxKind.IdentifierToken); 7049else if (IsPredefinedType(this.CurrentToken.Kind)) 7055else if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 7060if (result == ScanTypeFlags.NotType || mode == ParseTypeMode.DefinitePattern && this.CurrentToken.Kind != SyntaxKind.OpenBracketToken) 7080switch (this.CurrentToken.Kind) 7121while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7126if (this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 7159if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7177while (this.CurrentToken.Kind == SyntaxKind.CommaToken); 7179if (this.CurrentToken.Kind == SyntaxKind.CloseParenToken) 7201if (CurrentToken.Kind == SyntaxKind.IdentifierToken) 7204switch (CurrentToken) 7219if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 7236Debug.Assert(CurrentToken.Kind == SyntaxKind.CommaToken); 7249if (!IsPossibleFunctionPointerParameterListStart(CurrentToken)) 7289if (!validStartingToken && CurrentToken.Kind == SyntaxKind.CloseParenToken) 7303isNotExpectedFunction: static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 7324if (this.CurrentToken.Kind == SyntaxKind.VoidKeyword && this.PeekToken(1).Kind != SyntaxKind.AsteriskToken) 7349if (this.CurrentToken.Kind == SyntaxKind.RefKeyword) 7353this.CurrentToken.Kind == SyntaxKind.ReadOnlyKeyword ? this.EatToken() : null, 7397switch (this.CurrentToken.Kind) 7445while (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken); 7466Debug.Assert(this.CurrentToken.Kind == SyntaxKind.QuestionToken); 7489if (mode == ParseTypeMode.AfterIs && this.CurrentToken.Kind is SyntaxKind.OpenBracketToken) 7516return this.CurrentToken.Kind != SyntaxKind.ColonToken; 7543if (IsTrueIdentifier(this.CurrentToken)) 7552if (this.CurrentToken.ContextualKind is SyntaxKind.AsyncKeyword or SyntaxKind.AwaitKeyword or SyntaxKind.FromKeyword) 7606if (this.CurrentToken.Kind is SyntaxKind.OpenBracketToken) 7615this.CurrentToken.Kind is SyntaxKind.OpenParenToken or // ctor parameters 7650while (IsMakingProgress(ref lastTokenPosition) && this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 7652if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7665if (this.CurrentToken.Kind != SyntaxKind.CloseBracketToken) 7710if (this.CurrentToken.Kind != SyntaxKind.CloseParenToken) 7714while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 7749static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(), 7750static (p, _) => p.CurrentToken.Kind == SyntaxKind.CloseBracketToken, 7756if (IsPredefinedType(this.CurrentToken.Kind)) 7760if (token.Kind == SyntaxKind.VoidKeyword && this.CurrentToken.Kind != SyntaxKind.AsteriskToken) 7769if (IsTrueIdentifier() || this.CurrentToken.Kind == SyntaxKind.ColonColonToken) 7774if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 7797if (!IsPossibleFunctionPointerParameterListStart(CurrentToken)) 7840Debug.Assert(CurrentToken.Kind == SyntaxKind.CommaToken); 7851lessThanToken.IsMissing && CurrentToken.Kind == SyntaxKind.CloseParenToken 7866isNotExpectedFunction: static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 7874if (CurrentToken.Kind == SyntaxKind.IdentifierToken) 7878switch (CurrentToken) 7882managedSpecifier = EatContextualToken(CurrentToken.ContextualKind); 7902if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 7920Debug.Assert(CurrentToken.Kind == SyntaxKind.CommaToken); 7950=> CurrentToken.Kind == SyntaxKind.DelegateKeyword && PeekToken(1).Kind == SyntaxKind.AsteriskToken; 7961while (this.CurrentToken.Kind == SyntaxKind.AsteriskToken) 7981if (this.CurrentToken.Kind != SyntaxKind.OpenBracketToken) 7995while (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 8005var isCollectionExpression = this.CurrentToken.Kind 8018|| IsExpectedBinaryOperator(this.CurrentToken.Kind) 8019|| IsExpectedAssignmentOperator(this.CurrentToken.Kind) 8020|| (this.CurrentToken.ContextualKind is SyntaxKind.SwitchKeyword or SyntaxKind.WithKeyword && this.PeekToken(1).Kind is SyntaxKind.OpenBraceToken); 8024this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 8083switch (this.CurrentToken.Kind) 8179bool beginsWithAwait = this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword; 8215if (this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword && 8256=> CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword && PeekToken(1).Kind == SyntaxKind.UsingKeyword; 8270return this.CurrentToken.ContextualKind == SyntaxKind.YieldKeyword && 8280var tk = this.CurrentToken.Kind; 8308tk = this.CurrentToken.ContextualKind; 8329bool? typedIdentifier = IsPossibleTypedIdentifierStart(this.CurrentToken, this.PeekToken(1), allowThisKeyword: false); 8350var tk = this.CurrentToken.ContextualKind; 8394if (st == ScanTypeFlags.MustBeType && this.CurrentToken.Kind is not SyntaxKind.DotToken and not SyntaxKind.OpenParenToken) 8399if (st == ScanTypeFlags.NotType || this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 8422if (this.CurrentToken.Kind != SyntaxKind.UsingKeyword) 8488if (this.CurrentToken.Kind is SyntaxKind.OpenBraceToken) 8509if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 8516if (this.CurrentToken.Kind == SyntaxKind.EqualsToken) 8525return this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.SemicolonToken; 8543if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken || this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 8550if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 8634Debug.Assert(this.CurrentToken.Kind == SyntaxKind.NewKeyword); 8779CSharpSyntaxNode openBrace = isAccessorBody && this.CurrentToken.Kind != SyntaxKind.OpenBraceToken 8860while (this.CurrentToken.Kind is not SyntaxKind.CloseBraceToken and not SyntaxKind.EndOfFileToken 8892return this.CurrentToken.Kind == SyntaxKind.SemicolonToken 8904static (p, _) => p.CurrentToken.Kind == SyntaxKind.CloseBraceToken, 8912var tk = this.CurrentToken.Kind; 8976return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken or SyntaxKind.SemicolonToken; 9039Debug.Assert(this.CurrentToken.Kind is SyntaxKind.TryKeyword or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword); 9052Debug.Assert(this.CurrentToken.Kind is SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword); 9066if (this.CurrentToken.Kind == SyntaxKind.CatchKeyword) 9069while (this.CurrentToken.Kind == SyntaxKind.CatchKeyword) 9075if (this.CurrentToken.Kind == SyntaxKind.FinallyKeyword) 9110return this.CurrentToken.Kind is SyntaxKind.CloseBraceToken or SyntaxKind.CatchKeyword or SyntaxKind.FinallyKeyword; 9115Debug.Assert(this.CurrentToken.Kind == SyntaxKind.CatchKeyword); 9122if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 9142var keywordKind = this.CurrentToken.ContextualKind; 9174return this.CurrentToken.Kind is SyntaxKind.CloseParenToken 9183return this.CurrentToken.Kind is SyntaxKind.CloseParenToken 9191return this.CurrentToken.Kind is SyntaxKind.CloseBraceToken 9198Debug.Assert(this.CurrentToken.Kind is SyntaxKind.CheckedKeyword or SyntaxKind.UncheckedKeyword); 9215Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DoKeyword); 9239return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken; 9256Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ForKeyword); 9277Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ForKeyword); 9287var condition = this.CurrentToken.Kind is not SyntaxKind.SemicolonToken and not SyntaxKind.CommaToken 9296var incrementors = this.CurrentToken.Kind != SyntaxKind.CloseParenToken 9325if (this.CurrentToken.ContextualKind == SyntaxKind.ScopedKeyword) 9334isDeclaration = ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken; 9338else if (this.CurrentToken.Kind == SyntaxKind.RefKeyword) 9355else if (this.CurrentToken.Kind != SyntaxKind.SemicolonToken) 9370=> this.CurrentToken.Kind is SyntaxKind.CommaToken 9378while (this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CommaToken) 9402if (@this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken) 9406static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(), 9407static (p, closeKind) => p.CurrentToken.Kind == closeKind || p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 9414return this.CurrentToken.Kind is SyntaxKind.SemicolonToken or SyntaxKind.CloseParenToken or SyntaxKind.OpenBraceToken; 9421Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ForEachKeyword || this.CurrentToken.Kind == SyntaxKind.ForKeyword); 9432if (this.CurrentToken.Kind == SyntaxKind.ForKeyword) 9526if (this.IsInAsync && this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword) 9534if (this.CurrentToken.ContextualKind == SyntaxKind.ScopedKeyword) 9537if (ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 9584return this.CurrentToken.Kind == SyntaxKind.CommaToken; 9586return this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseParenToken; 9599if (!this.CurrentToken.IsIdentifierVar()) 9638Debug.Assert(this.CurrentToken.Kind == SyntaxKind.GotoKeyword); 9646if (this.CurrentToken.Kind is SyntaxKind.CaseKeyword or SyntaxKind.DefaultKeyword) 9671Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IfKeyword); 9684var elseKeyword = this.CurrentToken.Kind != SyntaxKind.ElseKeyword ? 9695if (this.CurrentToken.Kind != SyntaxKind.IfKeyword) 9736Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ElseKeyword); 9750return this.CurrentToken.Kind != SyntaxKind.ElseKeyword 9759Debug.Assert(this.CurrentToken.Kind == SyntaxKind.LockKeyword); 9771Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ReturnKeyword); 9775this.CurrentToken.Kind != SyntaxKind.SemicolonToken ? this.ParsePossibleRefExpression() : null, 9781Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.YieldKeyword); 9788if (this.CurrentToken.Kind == SyntaxKind.BreakKeyword) 9797if (this.CurrentToken.Kind == SyntaxKind.SemicolonToken) 9818Debug.Assert(this.CurrentToken.Kind is SyntaxKind.SwitchKeyword or SyntaxKind.CaseKeyword); 9843if (this.CurrentToken.Kind is SyntaxKind.CaseKeyword) 9888return this.CurrentToken.Kind == SyntaxKind.CaseKeyword || 9889(this.CurrentToken.Kind == SyntaxKind.DefaultKeyword && this.PeekToken(1).Kind != SyntaxKind.OpenParenToken); 9903if (this.CurrentToken.Kind == SyntaxKind.CaseKeyword) 9907if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 9919if (this.CurrentToken.ContextualKind == SyntaxKind.WhenKeyword && node is ExpressionSyntax ex) 9944Debug.Assert(this.CurrentToken.Kind == SyntaxKind.DefaultKeyword); 9966Debug.Assert(this.CurrentToken.Kind == SyntaxKind.ThrowKeyword); 9970this.CurrentToken.Kind != SyntaxKind.SemicolonToken ? this.ParseExpressionCore() : null, 9976Debug.Assert(this.CurrentToken.Kind == SyntaxKind.UnsafeKeyword); 10044if (this.CurrentToken.Kind != SyntaxKind.IdentifierToken) 10071if (this.CurrentToken.Kind == SyntaxKind.ColonToken && 10103bool condition1 = st == ScanTypeFlags.MustBeType && this.CurrentToken.Kind != SyntaxKind.DotToken; 10104bool condition2 = st != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken; 10112Debug.Assert(this.CurrentToken.Kind == SyntaxKind.WhileKeyword); 10147else if (this.CurrentToken.Kind == SyntaxKind.UsingKeyword) 10243if (this.CurrentToken.ContextualKind != SyntaxKind.ScopedKeyword) 10255if (this.CurrentToken.Kind is (SyntaxKind.RefKeyword or SyntaxKind.OutKeyword or SyntaxKind.InKeyword)) 10284return this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.GreaterThanToken; 10286else if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 10302if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 10310done = (this.CurrentToken.Kind == SyntaxKind.CloseParenToken); 10323if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 10353return CurrentToken.ContextualKind == SyntaxKind.UnderscoreToken 10360if (this.CurrentToken.ContextualKind != SyntaxKind.WhenKeyword) 10444switch (this.CurrentToken.Kind) 10457while (IsDeclarationModifier(k = this.CurrentToken.ContextualKind) || IsAdditionalLocalFunctionModifier(k)) 10496Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IdentifierToken); 10502if (IsDeclarationModifier(this.CurrentToken.Kind) || 10503IsAdditionalLocalFunctionModifier(this.CurrentToken.Kind)) 10510if (ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 10518while (IsAdditionalLocalFunctionModifier(this.CurrentToken.ContextualKind)); 10659if (this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword) 10702if (IsScript && this.CurrentToken.Kind == SyntaxKind.EndOfFileToken) 10746SyntaxKind tk = this.CurrentToken.Kind; 10792return this.IsTrueIdentifier() || this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword; 11028return (this.IsScript || this.IsInAsync) && this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword; 11033if (this.CurrentToken.ContextualKind == SyntaxKind.AwaitKeyword) 11111var tk = this.CurrentToken.Kind; 11153if (this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword && IsInQuery) 11160this.AddError(this.EatToken(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text)); 11207if (this.CurrentToken.Kind == SyntaxKind.QuestionToken && precedence <= Precedence.Conditional) 11305if (this.CurrentToken.Kind != SyntaxKind.ColonToken && 11320if (this.CurrentToken.Kind == SyntaxKind.ColonToken) 11332if (this.CurrentToken.Kind == SyntaxKind.EndOfFileToken && this.lexer.InterpolationFollowedByColon) 11391var token1 = this.CurrentToken; 11493if (operatorExpressionKind == SyntaxKind.SimpleAssignmentExpression && CurrentToken.Kind == SyntaxKind.RefKeyword && 11513if (this.CurrentToken.Kind != SyntaxKind.DotToken) 11517return nextToken.Kind == SyntaxKind.DotToken && NoTriviaBetween(this.CurrentToken, nextToken); 11535if (this.CurrentToken is { Kind: SyntaxKind.DotToken } token3 && 11605var tk = this.CurrentToken.Kind; 11641return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text); 11670return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text); 11737if (this.CurrentToken.Kind != SyntaxKind.DotToken || tk == SyntaxKind.VoidKeyword) 11772switch (this.CurrentToken.Kind) 11784expr = _syntaxFactory.PostfixUnaryExpression(SyntaxFacts.GetPostfixUnaryExpression(this.CurrentToken.Kind), expr, this.EatToken()); 11819if (this.CurrentToken.TrailingTrivia.Any((int)SyntaxKind.EndOfLineTrivia) && 11853Debug.Assert(this.CurrentToken.Kind == SyntaxKind.BaseKeyword); 11867if (precedence > Precedence.Assignment || !(this.CurrentToken.IsIdentifierVar() || IsPredefinedType(this.CurrentToken.Kind))) 11876this.CurrentToken.Kind == SyntaxKind.OpenParenToken && ScanDesignator() && 11877this.CurrentToken.Kind == SyntaxKind.EqualsToken; 11882switch (this.CurrentToken.Kind) 11901switch (this.CurrentToken.Kind) 11975if (this.CurrentToken.Kind == SyntaxKind.QuestionToken) 12014return this.CurrentToken.Kind != SyntaxKind.ColonToken; 12027while (this.CurrentToken.Kind == SyntaxKind.ExclamationToken) 12063=> this.CurrentToken.Kind switch 12122openToken = this.CurrentToken.Kind is SyntaxKind.OpenParenToken or SyntaxKind.OpenBracketToken 12129if (this.CurrentToken.Kind != closeKind && this.CurrentToken.Kind != SyntaxKind.SemicolonToken) 12157else if (isIndexer && this.CurrentToken.Kind == closeKind) 12173closeToken = this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken 12182if (@this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken or SyntaxKind.SemicolonToken) 12186static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleArgumentExpression(), 12187static (p, closeKind) => p.CurrentToken.Kind == closeKind || p.CurrentToken.Kind == SyntaxKind.SemicolonToken, 12194return this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.CloseBracketToken; 12199return IsValidArgumentRefKindKeyword(this.CurrentToken.Kind) || this.IsPossibleExpression(); 12217var nameColon = this.CurrentToken.Kind == SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.ColonToken 12224if (IsValidArgumentRefKindKeyword(this.CurrentToken.Kind) && 12226!(this.CurrentToken.Kind == SyntaxKind.RefKeyword && 12234if (isIndexer && this.CurrentToken.Kind is SyntaxKind.CommaToken or SyntaxKind.CloseBracketToken) 12238else if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 12270if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 12348Debug.Assert(CurrentToken.Kind == SyntaxKind.OpenParenToken); 12379Debug.Assert(CurrentToken.Kind == SyntaxKind.OpenParenToken); 12405if (IsParameterModifierIncludingScoped(this.CurrentToken)) 12431if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken) 12439switch (this.CurrentToken.Kind) 12455Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenParenToken); 12483if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 12491if (expression.Kind == SyntaxKind.IdentifierName && this.CurrentToken.Kind == SyntaxKind.ColonToken) 12512while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 12517var argument = expression.Kind != SyntaxKind.IdentifierName || this.CurrentToken.Kind != SyntaxKind.ColonToken 12543if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 12556if (this.CurrentToken.Kind != SyntaxKind.CloseParenToken) 12563if (forPattern && this.CurrentToken.Kind == SyntaxKind.IdentifierToken) 12585return !forPattern || this.CurrentToken.Kind switch 12610return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken || CanFollowCast(this.CurrentToken.Kind); 12616if (this.CurrentToken.Kind == SyntaxKind.OpenBracketToken && 12625return CanFollowCast(this.CurrentToken.Kind); 12656return this.CurrentToken.ContextualKind is SyntaxKind.OrKeyword or SyntaxKind.AndKeyword; 12685if (CurrentToken.Kind == SyntaxKind.OpenBracketToken) 12701if (this.CurrentToken.Kind == SyntaxKind.StaticKeyword) 12706else if (this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword && 12720if (this.CurrentToken.Kind == SyntaxKind.EqualsGreaterThanToken) 12730if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 12738if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && 12749if (this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword && 12758if (st == ScanTypeFlags.NotType || this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 12775if (this.CurrentToken.Kind == SyntaxKind.IdentifierToken && 12783if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 12855Debug.Assert(this.CurrentToken.Kind == SyntaxKind.NewKeyword); 12874Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenBracketToken); 12895static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleCollectionElement(), 12896static (p, closeKind) => p.CurrentToken.Kind == closeKind, 12915return this.CurrentToken.Kind == SyntaxKind.NewKeyword && this.PeekToken(1).Kind == SyntaxKind.OpenBraceToken; 12923Debug.Assert(this.CurrentToken.Kind == SyntaxKind.OpenBraceToken); 12960return this.CurrentToken.Kind == SyntaxKind.OpenBraceToken; 12970return this.CurrentToken.Kind == SyntaxKind.OpenBracketToken; 12986if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 12996if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13001if (this.CurrentToken.Kind == SyntaxKind.OpenBraceToken) 13023if (this.CurrentToken.Kind != SyntaxKind.OpenParenToken) 13034switch (this.CurrentToken.Kind) 13153static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleExpression(), 13154static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13164this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 13175this.CurrentToken.Kind == SyntaxKind.OpenBraceToken 13203Debug.Assert(this.CurrentToken.Kind is SyntaxKind.NewKeyword or SyntaxKind.StackAllocKeyword); 13230if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 13270static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleVariableInitializer(), 13271static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13297if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 13319this.CurrentToken.Kind == SyntaxKind.OpenBraceToken ? this.ParseArrayInitializer() : null); 13347if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13360if (this.CurrentToken.Kind != SyntaxKind.OpenBraceToken) 13391if (this.CurrentToken.Kind == SyntaxKind.StaticKeyword) 13397if (this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword && 13412Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.AsyncKeyword); 13437if (this.CurrentToken.Kind == SyntaxKind.ColonToken && 13474if (CurrentToken.Kind != SyntaxKind.OpenParenToken) 13481if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13494var identifier = (this.CurrentToken.Kind != SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.EqualsGreaterThanToken) 13511=> CurrentToken.Kind == SyntaxKind.OpenBraceToken 13542static p => p.CurrentToken.Kind != SyntaxKind.CommaToken && !p.IsPossibleLambdaParameter(), 13543static (p, closeKind) => p.CurrentToken.Kind == closeKind, 13550switch (this.CurrentToken.Kind) 13568return IsPredefinedType(this.CurrentToken.Kind); 13579if (IsParameterModifierIncludingScoped(this.CurrentToken)) 13606if (IsPredefinedType(this.CurrentToken.Kind)) 13612if (this.CurrentToken.Kind == SyntaxKind.OpenParenToken) 13622if (this.IsTrueIdentifier(this.CurrentToken)) 13649=> IsTokenQueryContextualKeyword(this.CurrentToken); 13691return this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword && 13744return this.ScanType() != ScanTypeFlags.NotType && this.CurrentToken.Kind is SyntaxKind.IdentifierToken or SyntaxKind.InKeyword; 13769switch (this.CurrentToken.ContextualKind) 13793SelectOrGroupClauseSyntax selectOrGroupBy = this.CurrentToken.ContextualKind switch 13805this.CurrentToken.ContextualKind == SyntaxKind.IntoKeyword 13812Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.FromKeyword); 13821(this.CurrentToken.Kind != SyntaxKind.IdentifierToken || SyntaxFacts.IsQueryContextualKeyword(this.CurrentToken.ContextualKind))) 13845Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.JoinKeyword); 13858into: this.CurrentToken.ContextualKind == SyntaxKind.IntoKeyword 13865Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.LetKeyword); 13875Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.WhereKeyword); 13883Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.OrderByKeyword); 13891while (this.CurrentToken.Kind == SyntaxKind.CommaToken) 13893if (this.CurrentToken.Kind is SyntaxKind.CloseParenToken or SyntaxKind.SemicolonToken) 13897else if (this.CurrentToken.Kind == SyntaxKind.CommaToken) 13918static p => p.CurrentToken.Kind != SyntaxKind.CommaToken, 13919static (p, _) => p.CurrentToken.Kind == SyntaxKind.CloseParenToken 13920|| p.CurrentToken.Kind == SyntaxKind.SemicolonToken 13932if (this.CurrentToken.ContextualKind is SyntaxKind.AscendingKeyword or SyntaxKind.DescendingKeyword) 13946Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.SelectKeyword); 13954Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.GroupKeyword); 13964Debug.Assert(this.CurrentToken.ContextualKind == SyntaxKind.IntoKeyword); 14095if (requireOneElement || this.CurrentToken.Kind != closeTokenKind) 14112if (this.CurrentToken.Kind == closeTokenKind) 14118nodes.AddSeparator(this.CurrentToken.Kind == SyntaxKind.SemicolonToken 14125if (this.CurrentToken.Kind == closeTokenKind) 14160if (this.CurrentToken.Kind == separatorTokenKind) 14165if (allowSemicolonAsSeparator && this.CurrentToken.Kind is SyntaxKind.SemicolonToken) 14254if (this.CurrentToken.Kind == SyntaxKind.EndOfFileToken) return node; 14256while (this.CurrentToken.Kind != SyntaxKind.EndOfFileToken)
Parser\LanguageParser_InterpolatedString.cs (3)
40Debug.Assert(this.CurrentToken.Kind == SyntaxKind.InterpolatedStringToken); 410if (this.CurrentToken.Kind != SyntaxKind.CommaToken) 423var 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, reportError: true); 541var ct = this.CurrentToken; 548var replacement = CreateMissingToken(expected, this.CurrentToken.Kind, reportError: true); 584if (this.CurrentToken.Kind != kind) 598if (this.CurrentToken.Kind != kind) 610var token = this.CurrentToken; 632if (this.CurrentToken.ContextualKind != kind) 646var contextualKind = this.CurrentToken.ContextualKind; 736SyntaxToken ct = this.CurrentToken;