3 types derived from SyntaxToken
Microsoft.CodeAnalysis.CSharp (3)
Syntax\InternalSyntax\SyntaxToken.SyntaxIdentifier.cs (1)
13internal class SyntaxIdentifier : SyntaxToken
Syntax\InternalSyntax\SyntaxToken.SyntaxLiteral.cs (1)
14internal class SyntaxTokenWithValue<T> : SyntaxToken
Syntax\InternalSyntax\SyntaxToken.SyntaxTokenWithTrivia.cs (1)
11internal class SyntaxTokenWithTrivia : SyntaxToken
2 instantiations of SyntaxToken
Microsoft.CodeAnalysis.CSharp (2)
Binder\Semantics\Conversions\ConversionsBase.cs (1)
1753var greenNode = new Syntax.InternalSyntax.LiteralExpressionSyntax(SyntaxKind.NumericLiteralExpression, new Syntax.InternalSyntax.SyntaxToken(SyntaxKind.NumericLiteralToken));
Syntax\InternalSyntax\SyntaxToken.cs (1)
156s_tokensWithNoTrivia[(int)kind].Value = new SyntaxToken(kind);
861 references to SyntaxToken
Microsoft.CodeAnalysis.CSharp (857)
Parser\BlendedNode.cs (2)
16internal readonly SyntaxToken Token; 19internal BlendedNode(CSharp.CSharpSyntaxNode node, SyntaxToken token, Blender blender)
Parser\Blender.Cursor.cs (1)
148var greenToken = Lexer.RescanInterpolatedString((InterpolatedStringExpressionSyntax)node.Green);
Parser\Blender.Reader.cs (5)
144var token = this.LexNewToken(mode); 163private SyntaxToken LexNewToken(LexerMode mode) 175var token = _lexer.Lex(ref mode); 211token: (InternalSyntax.SyntaxToken)currentNodeOrToken.AsToken().Node); 314private BlendedNode CreateBlendedNode(CSharp.CSharpSyntaxNode node, SyntaxToken token)
Parser\DirectiveParser.cs (96)
37var hash = this.EatToken(SyntaxKind.HashToken, false); 88var lineKeyword = this.EatContextualToken(contextualKind); 127var id = this.EatToken(SyntaxKind.IdentifierToken, false); 128var end = this.ParseEndOfDirective(ignoreErrors: true); 147private DirectiveTriviaSyntax ParseIfDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive) 150var eod = this.ParseEndOfDirective(ignoreErrors: false); 156private DirectiveTriviaSyntax ParseElifDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive, bool endIsActive) 159var eod = this.ParseEndOfDirective(ignoreErrors: false); 184private DirectiveTriviaSyntax ParseElseDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive, bool endIsActive) 186var eod = this.ParseEndOfDirective(ignoreErrors: false); 206private DirectiveTriviaSyntax ParseEndIfDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive, bool endIsActive) 208var eod = this.ParseEndOfDirective(ignoreErrors: false); 225private DirectiveTriviaSyntax ParseRegionDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive) 230private DirectiveTriviaSyntax ParseEndRegionDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive) 232var eod = this.ParseEndOfDirectiveWithOptionalPreprocessingMessage(); 247private DirectiveTriviaSyntax ParseDefineOrUndefDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive, bool isFollowingToken) 254var name = this.EatToken(SyntaxKind.IdentifierToken, ErrorCode.ERR_IdentifierExpected); 256var end = this.ParseEndOfDirective(ignoreErrors: name.IsMissing); 289private DirectiveTriviaSyntax ParseErrorOrWarningDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive) 291var eod = this.ParseEndOfDirectiveWithOptionalPreprocessingMessage(); 371private DirectiveTriviaSyntax ParseLineDirective(SyntaxToken hash, SyntaxToken id, bool isActive) 373SyntaxToken line; 374SyntaxToken file = null; 407var end = this.ParseEndOfDirective(ignoreErrors: line.IsMissing || !isActive, afterLineNumber: sawLineButNotFile); 411private LineSpanDirectiveTriviaSyntax ParseLineSpanDirective(SyntaxToken hash, SyntaxToken lineKeyword, bool isActive) 422var minus = EatToken(SyntaxKind.MinusToken, reportError: reportError); 432var characterOffset = (CurrentToken.Kind == SyntaxKind.NumericLiteralToken) ? 441var file = EatToken(SyntaxKind.StringLiteralToken, ErrorCode.ERR_MissingPPFile, reportError: reportError); 449var endOfDirective = this.ParseEndOfDirective(ignoreErrors: !reportError); 452static bool noTriviaBetween(SyntaxToken token1, SyntaxToken token2) 462var openParen = EatToken(SyntaxKind.OpenParenToken, reportError); 465var lineToken = ParseLineDirectiveNumericLiteral(ref reportError, minValue: 1, maxValue: MaxLineValue, out line); 467var comma = EatToken(SyntaxKind.CommaToken, reportError); 470var characterToken = ParseLineDirectiveNumericLiteral(ref reportError, minValue: 1, maxValue: MaxCharacterValue, out character); 472var closeParen = EatToken(SyntaxKind.CloseParenToken, reportError); 478private SyntaxToken ParseLineDirectiveNumericLiteral(ref bool reportError, int minValue, int maxValue, out int value) 480var token = this.EatToken(SyntaxKind.NumericLiteralToken, ErrorCode.ERR_LineSpanDirectiveInvalidValue, reportError: reportError); 498private DirectiveTriviaSyntax ParseReferenceDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive, bool isFollowingToken) 512SyntaxToken file = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.ERR_ExpectedPPFile, reportError: isActive); 514var end = this.ParseEndOfDirective(ignoreErrors: file.IsMissing || !isActive); 518private DirectiveTriviaSyntax ParseLoadDirective(SyntaxToken hash, SyntaxToken keyword, bool isActive, bool isFollowingToken) 532SyntaxToken file = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.ERR_ExpectedPPFile, reportError: isActive); 534var end = this.ParseEndOfDirective(ignoreErrors: file.IsMissing || !isActive); 538private DirectiveTriviaSyntax ParseNullableDirective(SyntaxToken hash, SyntaxToken token, bool isActive) 545SyntaxToken setting = this.CurrentToken.Kind switch 553SyntaxToken target = this.CurrentToken.Kind switch 562var end = this.ParseEndOfDirective(ignoreErrors: setting.IsMissing || target?.IsMissing == true || !isActive); 566private DirectiveTriviaSyntax ParsePragmaDirective(SyntaxToken hash, SyntaxToken pragma, bool isActive) 576var warning = this.EatContextualToken(SyntaxKind.WarningKeyword); 577SyntaxToken style; 585SyntaxToken id; 629var end = this.ParseEndOfDirective(hasError || !isActive, afterPragma: true); 635var end = this.ParseEndOfDirective(ignoreErrors: true, afterPragma: true); 641var checksum = this.EatToken(); 642var file = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.WRN_IllegalPPChecksum, reportError: isActive); 643var guid = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.WRN_IllegalPPChecksum, reportError: isActive && !file.IsMissing); 653var bytes = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.WRN_IllegalPPChecksum, reportError: isActive && !guid.IsMissing); 674var eod = this.ParseEndOfDirective(ignoreErrors: hasError, afterPragma: true); 679var warning = this.EatToken(SyntaxKind.WarningKeyword, ErrorCode.WRN_IllegalPragma, reportError: isActive); 680var style = this.EatToken(SyntaxKind.DisableKeyword, reportError: false); 681var eod = this.ParseEndOfDirective(ignoreErrors: true, afterPragma: true); 686private DirectiveTriviaSyntax ParseShebangDirective(SyntaxToken hash, SyntaxToken exclamation, bool isActive) 696private DirectiveTriviaSyntax ParseIgnoredDirective(SyntaxToken hash, SyntaxToken colon, bool isActive, bool isFollowingToken) 713SyntaxToken endOfDirective = this.lexer.LexEndOfDirectiveWithOptionalContent(out SyntaxToken content); 717private SyntaxToken ParseEndOfDirectiveWithOptionalPreprocessingMessage() 720private SyntaxToken ParseEndOfDirective(bool ignoreErrors, bool afterPragma = false, bool afterLineNumber = false) 722var skippedTokens = new SyntaxListBuilder<SyntaxToken>(); 728skippedTokens = new SyntaxListBuilder<SyntaxToken>(10); 753SyntaxToken endOfDirective = this.CurrentToken.Kind == SyntaxKind.EndOfDirectiveToken 776var op = this.EatToken(); 789var op = this.EatToken(); 802var op = this.EatToken(); 814var op = this.EatToken(); 827var open = this.EatToken(); 829var close = this.EatToken(SyntaxKind.CloseParenToken); 832var identifier = TruncateIdentifier(this.EatToken()); 844private static SyntaxToken TruncateIdentifier(SyntaxToken identifier)
Parser\DocumentationCommentParser.cs (84)
86var eoc = this.EatToken(SyntaxKind.EndOfDocumentationCommentToken); 110var token = this.EatToken(); 204var lessThan = this.EatToken(SyntaxKind.LessThanToken); // guaranteed 228SyntaxToken greaterThan; 231var lessThanSlash = this.EatToken(SyntaxKind.LessThanSlashToken, reportError: false); 281var slashGreater = this.EatToken(SyntaxKind.SlashGreaterThanToken, false); 379var badTokens = default(SyntaxListBuilder<SyntaxToken>); 396badTokens = _pool.Allocate<SyntaxToken>(); 399var token = this.EatToken(); 447var equals = this.EatToken(SyntaxKind.EqualsToken, false); 464default(SyntaxList<SyntaxToken>), 469SyntaxToken startQuote; 470SyntaxToken endQuote; 489var textTokens = _pool.Allocate<SyntaxToken>(); 525SyntaxToken openQuote = EatToken(this.CurrentToken.Kind == SyntaxKind.SingleQuoteToken 532SyntaxToken current = this.CurrentToken; 553private void ParseCrefAttribute(out SyntaxToken startQuote, out CrefSyntax cref, out SyntaxToken endQuote) 571private void ParseNameAttribute(out SyntaxToken startQuote, out IdentifierNameSyntax identifier, out SyntaxToken endQuote) 589private void ParseXmlAttributeText(out SyntaxToken startQuote, SyntaxListBuilder<SyntaxToken> textTokens, out SyntaxToken endQuote) 611var token = this.EatToken(); 629private SyntaxToken ParseXmlAttributeStartQuote() 640var startQuote = this.EatToken(quoteKind, reportError: false); 648private SyntaxToken ParseXmlAttributeEndQuote(SyntaxKind quoteKind) 655var endQuote = this.EatToken(quoteKind, reportError: false); 663private SyntaxToken SkipNonAsciiQuotationMark() 665var quote = SyntaxFactory.MissingToken(SyntaxKind.DoubleQuoteToken); 676private static bool IsNonAsciiQuotationMark(SyntaxToken token) 683var id = this.EatToken(SyntaxKind.IdentifierToken); 687var colon = this.EatToken(); 722var lessThanExclamationMinusMinusToken = this.EatToken(SyntaxKind.XmlCommentStartToken); 724var textTokens = _pool.Allocate<SyntaxToken>(); 729var token = this.EatToken(); 742var minusMinusGreaterThanToken = this.EatToken(SyntaxKind.XmlCommentEndToken); 749var startCDataToken = this.EatToken(SyntaxKind.XmlCDataStartToken); 751var textTokens = new SyntaxListBuilder<SyntaxToken>(10); 758var endCDataToken = this.EatToken(SyntaxKind.XmlCDataEndToken); 765var startProcessingInstructionToken = this.EatToken(SyntaxKind.XmlProcessingInstructionStartToken); 773var textTokens = new SyntaxListBuilder<SyntaxToken>(10); 777var textToken = this.EatToken(); 785var endProcessingInstructionToken = this.EatToken(SyntaxKind.XmlProcessingInstructionEndToken); 841private SyntaxToken WithXmlParseError(SyntaxToken node, XmlParseErrorCode code, params string[] args) 908SyntaxToken dot = EatToken(SyntaxKind.DotToken); 917var badTokens = _pool.Allocate<SyntaxToken>(); 972SyntaxToken thisKeyword = EatToken(); 984SyntaxToken operatorKeyword = EatToken(); 985SyntaxToken checkedKeyword = TryEatCheckedKeyword(isConversion: false, ref operatorKeyword); 987SyntaxToken operatorToken; 1019var operatorToken2 = this.EatToken(); 1024var operatorToken3 = this.EatToken(); 1060var operatorToken2 = this.EatToken(); 1070var operatorToken2 = this.EatToken(); 1124SyntaxToken tryParseCompoundAssignmentOperatorToken(SyntaxToken operatorToken, SyntaxKind kind) 1129var operatorToken2 = this.EatToken(); 1143private SyntaxToken TryEatCheckedKeyword(bool isConversion, ref SyntaxToken operatorKeyword) 1145SyntaxToken checkedKeyword = tryEatCheckedOrHandleUnchecked(ref operatorKeyword); 1155SyntaxToken tryEatCheckedOrHandleUnchecked(ref SyntaxToken operatorKeyword) 1160var misplacedToken = AddErrorAsWarning(EatToken(), ErrorCode.ERR_MisplacedUnchecked); 1176SyntaxToken implicitOrExplicit = EatToken(); 1178SyntaxToken operatorKeyword = EatToken(SyntaxKind.OperatorKeyword); 1179SyntaxToken checkedKeyword = TryEatCheckedKeyword(isConversion: true, ref operatorKeyword); 1217SyntaxToken open = EatToken(openKind); 1228SyntaxToken comma = EatToken(SyntaxKind.CommaToken); 1245SyntaxToken close = EatToken(closeKind); 1283SyntaxToken refKindOpt = null; 1293SyntaxToken readOnlyOpt = null; 1299var misplacedToken = AddErrorAsWarning(EatToken(), ErrorCode.ERR_RefReadOnlyWrongOrdering); 1319SyntaxToken identifierToken = EatToken(SyntaxKind.IdentifierToken); 1326var open = EatToken(); 1357SyntaxToken close = EatToken(SyntaxKind.GreaterThanToken); 1417SyntaxToken alias = EatToken(); 1425SyntaxToken colonColon = EatToken(); 1451SyntaxToken dot = EatToken(); 1495SyntaxToken open = EatToken(); 1524var close = this.EatToken(SyntaxKind.CloseBracketToken); 1596SyntaxToken identifierToken = this.EatToken(SyntaxKind.IdentifierToken, reportError: false); 1600var badTokens = _pool.Allocate<SyntaxToken>();
Parser\DocumentationCommentXmlTokens.cs (24)
16private static readonly SyntaxToken s_seeToken = Identifier(DocumentationCommentXmlNames.SeeElementName); 17private static readonly SyntaxToken s_codeToken = Identifier(DocumentationCommentXmlNames.CodeElementName); 18private static readonly SyntaxToken s_listToken = Identifier(DocumentationCommentXmlNames.ListElementName); 19private static readonly SyntaxToken s_paramToken = Identifier(DocumentationCommentXmlNames.ParameterElementName); 20private static readonly SyntaxToken s_valueToken = Identifier(DocumentationCommentXmlNames.ValueElementName); 21private static readonly SyntaxToken s_exampleToken = Identifier(DocumentationCommentXmlNames.ExampleElementName); 22private static readonly SyntaxToken s_includeToken = Identifier(DocumentationCommentXmlNames.IncludeElementName); 23private static readonly SyntaxToken s_remarksToken = Identifier(DocumentationCommentXmlNames.RemarksElementName); 24private static readonly SyntaxToken s_seealsoToken = Identifier(DocumentationCommentXmlNames.SeeAlsoElementName); 25private static readonly SyntaxToken s_summaryToken = Identifier(DocumentationCommentXmlNames.SummaryElementName); 26private static readonly SyntaxToken s_exceptionToken = Identifier(DocumentationCommentXmlNames.ExceptionElementName); 27private static readonly SyntaxToken s_typeparamToken = Identifier(DocumentationCommentXmlNames.TypeParameterElementName); 28private static readonly SyntaxToken s_permissionToken = Identifier(DocumentationCommentXmlNames.PermissionElementName); 29private static readonly SyntaxToken s_typeparamrefToken = Identifier(DocumentationCommentXmlNames.TypeParameterReferenceElementName); 32private static readonly SyntaxToken s_crefToken = IdentifierWithLeadingSpace(DocumentationCommentXmlNames.CrefAttributeName); 33private static readonly SyntaxToken s_fileToken = IdentifierWithLeadingSpace(DocumentationCommentXmlNames.FileAttributeName); 34private static readonly SyntaxToken s_nameToken = IdentifierWithLeadingSpace(DocumentationCommentXmlNames.NameAttributeName); 35private static readonly SyntaxToken s_pathToken = IdentifierWithLeadingSpace(DocumentationCommentXmlNames.PathAttributeName); 36private static readonly SyntaxToken s_typeToken = IdentifierWithLeadingSpace(DocumentationCommentXmlNames.TypeAttributeName); 38private static SyntaxToken Identifier(string text) 43private static SyntaxToken IdentifierWithLeadingSpace(string text) 60public static SyntaxToken? LookupToken(string text, SyntaxListBuilder? leading) 75private static SyntaxToken? LookupXmlElementTag(string text) 157private static SyntaxToken? LookupXmlAttribute(string text)
Parser\LanguageParser.cs (353)
182SyntaxToken? tmp = null; 189var eof = this.EatToken(SyntaxKind.EndOfFileToken); 230var fileAsTrivia = _syntaxFactory.SkippedTokensTrivia(builder.ToList<SyntaxToken>()); 252var namespaceToken = this.EatToken(SyntaxKind.NamespaceKeyword); 261SyntaxToken? openBrace = null; 262SyntaxToken? semicolon = null; 362ref SyntaxToken? openBraceOrSemicolon, 411[NotNullIfNotNull(nameof(openBraceOrSemicolon))] ref SyntaxToken? openBraceOrSemicolon, 563[NotNullIfNotNull(nameof(openBraceOrSemicolon))] ref SyntaxToken? openBraceOrSemicolon, 615var token = this.EatToken(); 730var skippedToken = EatToken(); 816ref SyntaxToken? openBrace, 850ref SyntaxToken? openBraceOrSemicolon, 956var globalToken = this.CurrentToken.ContextualKind == SyntaxKind.GlobalKeyword 962var usingToken = this.EatToken(SyntaxKind.UsingKeyword); 963var staticToken = this.TryEatToken(SyntaxKind.StaticKeyword); 964var unsafeToken = this.TryEatToken(SyntaxKind.UnsafeKeyword); 977SyntaxToken semicolon; 1026private static bool IsGlobalAttributeTarget(SyntaxToken token) 1122var openBracket = this.EatToken(SyntaxKind.OpenBracketToken); 1139var closeBracket = this.EatToken(SyntaxKind.CloseBracketToken); 1174LanguageParser @this, ref SyntaxToken openBracket, SeparatedSyntaxListBuilder<AttributeSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 1210var openParen = this.EatToken(SyntaxKind.OpenParenToken); 1229LanguageParser @this, ref SyntaxToken openParen, SeparatedSyntaxListBuilder<AttributeArgumentSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 1290private static DeclarationModifiers GetModifierExcludingScoped(SyntaxToken token) 1365SyntaxToken scopedKeyword = ParsePossibleScopedKeyword(isFunctionPointerParameter: false, isLambdaParameter: false); 1377SyntaxToken modTok; 1381var nextToken = PeekToken(1); 1412var next = PeekToken(1); 1473bool isStructOrRecordKeyword(SyntaxToken token) 1606private static bool IsNonContextualModifier(SyntaxToken nextToken) 1614var nextToken = this.PeekToken(1); 1727if (!tryScanRecordStart(out var keyword, out var recordModifier)) 1739SyntaxToken? name; 1776SyntaxToken semicolon; 1777SyntaxToken? openBrace; 1778SyntaxToken? closeBrace; 1866bool tryScanRecordStart([NotNullWhen(true)] out SyntaxToken? keyword, out SyntaxToken? recordModifier) 1883var misplacedToken = this.EatToken(); 1900static TypeDeclarationSyntax constructTypeDeclaration(ContextAwareSyntax syntaxFactory, SyntaxList<AttributeListSyntax> attributes, SyntaxListBuilder modifiers, SyntaxToken keyword, SyntaxToken? recordModifier, 1901SyntaxToken? name, TypeParameterListSyntax typeParameters, ParameterListSyntax? paramList, BaseListSyntax? baseList, SyntaxListBuilder<TypeParameterConstraintClauseSyntax> constraints, 1902SyntaxToken? openBrace, SyntaxListBuilder<MemberDeclarationSyntax> members, SyntaxToken? closeBrace, SyntaxToken semicolon) 1904var modifiersList = (SyntaxList<SyntaxToken>)modifiers.ToList(); 2002private void SkipBadMemberListTokens(ref SyntaxToken openBrace, SyntaxListBuilder members) 2014openBrace = (SyntaxToken)tmp; 2026var token = this.EatToken(); 2094var colon = this.TryEatToken(SyntaxKind.ColonToken); 2149PostSkipAction skipBadBaseListTokens(ref SyntaxToken colon, SeparatedSyntaxListBuilder<BaseTypeSyntax> list, SyntaxKind expected) 2176var where = this.EatContextualToken(SyntaxKind.WhereKeyword); 2181var colon = this.EatToken(SyntaxKind.ColonToken); 2209SyntaxToken separatorToken = this.EatToken(SyntaxKind.CommaToken); 2319var allows = this.EatContextualToken(SyntaxKind.AllowsKeyword); 2494new SyntaxList<SyntaxToken>(), 2631var identifier = this.EatToken(); 2778SyntaxToken identifierOrThisOpt; 2963var misplacedModifier = this.CurrentToken; 2980ExplicitInterfaceSpecifierSyntax explicitInterfaceOpt, SyntaxToken identifierOrThisOpt, TypeParameterListSyntax typeParameterListOpt, 3021ref ExplicitInterfaceSpecifierSyntax explicitInterfaceOpt, ref SyntaxToken identifierOrThisOpt, 3044ExplicitInterfaceSpecifierSyntax explicitInterfaceOpt, SyntaxToken identifierOrThisOpt, 3196SyntaxToken identifierOrThisOpt; 3253SyntaxToken identifierOrThisOpt) 3332if (child is not SyntaxToken token) 3356var name = this.ParseIdentifierToken(); 3366this.ParseBlockAndExpressionBodiesWithSemicolon(out var body, out var expressionBody, out var semicolon); 3378var colon = this.EatToken(SyntaxKind.ColonToken); 3385SyntaxToken token; 3411var tilde = this.EatToken(SyntaxKind.TildeToken); 3413var name = this.ParseIdentifierToken(); 3420out BlockSyntax body, out ArrowExpressionClauseSyntax expressionBody, out SyntaxToken semicolon); 3432out SyntaxToken semicolon, 3520SyntaxToken identifier, 3538var colonToken = this.CurrentToken; 3559this.ParseBlockAndExpressionBodiesWithSemicolon(out var blockBody, out var expressionBody, out var semicolon); 3685var style = this.CurrentToken.Kind is SyntaxKind.ImplicitKeyword or SyntaxKind.ExplicitKeyword 3692SyntaxToken opKeyword; 3722var checkedKeyword = TryEatCheckedOrHandleUnchecked(ref opKeyword); 3741this.ParseBlockAndExpressionBodiesWithSemicolon(out var blockBody, out var expressionBody, out var semicolon); 3769SyntaxToken separator = null; 3827private SyntaxToken TryEatCheckedOrHandleUnchecked(ref SyntaxToken operatorKeyword) 3848var firstToken = this.CurrentToken; 3875var opKeyword = this.EatToken(SyntaxKind.OperatorKeyword); 3876var checkedKeyword = TryEatCheckedOrHandleUnchecked(ref opKeyword); 3877SyntaxToken opToken; 3925var tk = this.CurrentToken; 3931var opToken2 = this.EatToken(); 3958var opToken2 = this.EatToken(); 4014this.ParseBlockAndExpressionBodiesWithSemicolon(out var blockBody, out var expressionBody, out var semicolon); 4045SyntaxToken thisKeyword, 4061SyntaxToken semicolon = null; 4105SyntaxToken identifier, 4142var equals = this.EatToken(SyntaxKind.EqualsToken); 4147SyntaxToken semicolon = null; 4196var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 4241var refKeyword = this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 4249private PostSkipAction SkipBadAccessorListTokens(ref SyntaxToken openBrace, SyntaxListBuilder<AccessorDeclarationSyntax> list, ErrorCode error) 4296var token = this.PeekToken(peekIndex); 4433var token = (first && !this.CurrentToken.ContainsDiagnostics) ? this.EatTokenWithPrejudice(expected) : this.EatToken(); 4459var token = (first && !this.CurrentToken.ContainsDiagnostics) ? this.EatTokenWithPrejudice(errorCode) : this.EatToken(); 4482var accessorName = this.EatToken(SyntaxKind.IdentifierToken, 4513SyntaxToken semicolon = null; 4567private SyntaxToken EatAccessorSemicolon() 4573private static SyntaxKind GetAccessorKind(SyntaxToken accessorName) 4593var parameters = this.ParseParameterList(out var open, out var close, SyntaxKind.OpenParenToken, SyntaxKind.CloseParenToken, forExtension); 4604var parameters = this.ParseParameterList(out var open, out var close, SyntaxKind.OpenBracketToken, SyntaxKind.CloseBracketToken, forExtension: false); 4665out SyntaxToken open, 4666out SyntaxToken close, 4697LanguageParser @this, ref SyntaxToken open, SeparatedSyntaxListBuilder<ParameterSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 4795SyntaxToken? identifier; 4816var equalsToken = TryEatToken(SyntaxKind.EqualsToken); 4826internal static bool NoTriviaBetween(SyntaxToken token1, SyntaxToken token2) 4831private static bool IsParameterModifierIncludingScoped(SyntaxToken token) 4834private static bool IsParameterModifierExcludingScoped(SyntaxToken token) 4866SyntaxToken scopedKeyword = ParsePossibleScopedKeyword(isFunctionPointerParameter, isLambdaParameter); 4906var eventToken = this.EatToken(); 4917SyntaxToken eventToken, 4921SyntaxToken identifierOrThisOpt; 4947SyntaxToken identifier; 4978SyntaxToken semicolon = null; 5009var semi = this.EatToken(); 5026if (modifiers is [.., SyntaxToken { Kind: SyntaxKind.ScopedKeyword } scopedKeyword]) 5042SyntaxToken eventToken, 5119SyntaxList<SyntaxToken> mods, 5307SyntaxList<SyntaxToken> mods, 5378var missingIdentifier = CreateMissingIdentifierToken(); 5396var name = this.ParseIdentifierToken(); 5423var equals = this.EatToken(); 5426var refKeyword = isLocalOrField && !isConst && this.CurrentToken.Kind == SyntaxKind.RefKeyword && !this.IsPossibleLambdaExpression(Precedence.Expression) 5494args.AddSeparator((SyntaxToken)item); 5598var delegateToken = this.EatToken(SyntaxKind.DelegateKeyword); 5602var name = this.ParseIdentifierToken(); 5631var enumToken = this.EatToken(SyntaxKind.EnumKeyword); 5632var name = this.ParseIdentifierToken(); 5646var colon = this.EatToken(SyntaxKind.ColonToken); 5656SyntaxToken semicolon; 5657SyntaxToken openBrace; 5658SyntaxToken closeBrace; 5702LanguageParser @this, ref SyntaxToken openBrace, SeparatedSyntaxListBuilder<EnumMemberDeclarationSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 5719var memberName = this.ParseIdentifierToken(); 5755private static SyntaxToken CreateMissingIdentifierToken() 5797private bool IsTrueIdentifier(SyntaxToken token) 5818private SyntaxToken ParseIdentifierToken(ErrorCode code = ErrorCode.ERR_IdentifierExpected) 5831var result = CreateMissingIdentifierToken(); 5836SyntaxToken identifierToken = this.EatToken(); 5886var open = this.EatToken(SyntaxKind.LessThanToken); 5905LanguageParser @this, ref SyntaxToken open, SeparatedSyntaxListBuilder<TypeParameterSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 5981this.ParseTypeArgumentList(out var open, types, out var close); 6035out var greaterThanToken, out bool isDefinitelyTypeArgumentList); 6131out SyntaxToken greaterThanToken, 6144var start = this.EatToken(); 6319private void ParseTypeArgumentList(out SyntaxToken open, SeparatedSyntaxListBuilder<TypeSyntax> types, out SyntaxToken close) 6392static bool tokenBreaksTypeArgumentList(SyntaxToken token) 6537out SyntaxToken identifierOrThisOpt, 6553SyntaxToken separator = null; 6673private void AccumulateExplicitInterfaceName(ref NameSyntax explicitInterfaceName, ref SyntaxToken separator) 6735SyntaxToken separator = null; 6822var separator = this.EatToken(); 6832SyntaxToken separator) 6874private SyntaxToken ConvertToMissingWithTrailingTrivia(SyntaxToken token, SyntaxKind expectedKind) 6876var newToken = SyntaxFactory.MissingToken(expectedKind); 6944private ScanTypeFlags ScanType(out SyntaxToken lastTokenOfType, bool forPattern = false) 6954private ScanTypeFlags ScanNamedTypePart(out SyntaxToken lastTokenOfType) 6973private ScanTypeFlags ScanType(ParseTypeMode mode, out SyntaxToken lastTokenOfType) 7147private ScanTypeFlags ScanTupleType(out SyntaxToken lastTokenOfType) 7191private ScanTypeFlags ScanFunctionPointerType(out SyntaxToken lastTokenOfType) 7201var peek1 = PeekToken(1); 7261var ignoredModifiers = _pool.Allocate<SyntaxToken>(); 7399var question = TryEatNullableQualifierIfApplicable(type, mode); 7461private SyntaxToken TryEatNullableQualifierIfApplicable( 7475var questionToken = this.EatToken(); 7553var nextToken = PeekToken(1); 7643var open = this.EatToken(SyntaxKind.OpenBracketToken); 7705var open = this.EatToken(SyntaxKind.OpenParenToken); 7744private PostSkipAction SkipBadArrayRankSpecifierTokens(ref SyntaxToken openBracket, SeparatedSyntaxListBuilder<ExpressionSyntax> list, SyntaxKind expected) 7757var token = this.EatToken(); 7790var @delegate = EatToken(SyntaxKind.DelegateKeyword); 7791var asterisk = EatToken(SyntaxKind.AsteriskToken); 7797var lessThanTokenError = WithAdditionalDiagnostics(SyntaxFactory.MissingToken(SyntaxKind.LessThanToken), GetExpectedTokenError(SyntaxKind.LessThanToken, SyntaxKind.None)); 7815var lessThanToken = EatTokenAsKind(SyntaxKind.LessThanToken); 7824var modifiers = _pool.Allocate<SyntaxToken>(); 7874SyntaxToken managedSpecifier; 7875SyntaxToken peek1 = PeekToken(1); 7902var openBracket = EatToken(SyntaxKind.OpenBracketToken); 7922var closeBracket = EatToken(SyntaxKind.CloseBracketToken); 7950private static bool IsPossibleFunctionPointerParameterListStart(SyntaxToken token) 8352var token1 = PeekToken(1); 8472SyntaxToken identifierOrThisOpt; 8635SyntaxToken nextToken = PeekToken(1); 8716private bool? IsPossibleTypedIdentifierStart(SyntaxToken current, SyntaxToken next, bool allowThisKeyword) 8790(SyntaxToken)openBrace, 8821(SyntaxToken)openBrace, 8955var @fixed = this.EatToken(SyntaxKind.FixedKeyword); 8956var openParen = this.EatToken(SyntaxKind.OpenParenToken); 9040var @try = this.EatToken(SyntaxKind.TryKeyword); 9115var @catch = this.EatToken(); 9122var openParen = this.EatToken(); 9126SyntaxToken name = null; 9134var closeParen = this.EatToken(SyntaxKind.CloseParenToken); 9143var whenKeyword = this.EatContextualToken(SyntaxKind.WhenKeyword); 9155var openParen = this.EatToken(SyntaxKind.OpenParenToken); 9159var closeParen = this.EatToken(SyntaxKind.CloseParenToken); 9203var keyword = this.EatToken(); 9214var @do = this.EatToken(SyntaxKind.DoKeyword); 9216var @while = this.EatToken(SyntaxKind.WhileKeyword); 9217var openParen = this.EatToken(SyntaxKind.OpenParenToken); 9280var forToken = this.EatToken(SyntaxKind.ForKeyword); 9281var openParen = this.EatToken(SyntaxKind.OpenParenToken); 9284var firstSemicolonToken = eatCommaOrSemicolon(); 9290var secondSemicolonToken = eatCommaOrSemicolon(); 9367SyntaxToken eatCommaOrSemicolon() 9372SyntaxToken eatUnexpectedTokensAndCloseParenToken() 9379var result = this.EatToken(SyntaxKind.CloseParenToken); 9386SeparatedSyntaxList<ExpressionSyntax> parseForStatementExpressionList(ref SyntaxToken startToken, bool allowSemicolonAsSeparator) 9398LanguageParser @this, ref SyntaxToken startToken, SeparatedSyntaxListBuilder<ExpressionSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 9416SyntaxList<AttributeListSyntax> attributes, SyntaxToken awaitTokenOpt) 9426SyntaxToken @foreach; 9432var skippedForToken = this.EatToken(); 9441var openParen = this.EatToken(SyntaxKind.OpenParenToken); 9444var @in = this.EatToken(SyntaxKind.InKeyword, ErrorCode.ERR_InExpected); 9451var closeParen = this.EatToken(SyntaxKind.CloseParenToken); 9459SyntaxToken identifier; 9469identifier = SyntaxToken.WithValue(SyntaxKind.IdentifierToken, discard.LeadingTrivia.Node, discard.Text, discard.ValueText, discard.TrailingTrivia.Node); 9567SyntaxToken lastTokenOfType; 9638var @goto = this.EatToken(SyntaxKind.GotoKeyword); 9640SyntaxToken caseOrDefault = null; 9671var stack = ArrayBuilder<(SyntaxToken, SyntaxToken, ExpressionSyntax, SyntaxToken, StatementSyntax, SyntaxToken)>.GetInstance(); 9676var ifKeyword = this.EatToken(SyntaxKind.IfKeyword); 9677var openParen = this.EatToken(SyntaxKind.OpenParenToken); 9679var closeParen = this.EatToken(SyntaxKind.CloseParenToken); 9682var elseKeyword = this.CurrentToken.Kind != SyntaxKind.ElseKeyword ? 9781var yieldToken = ConvertToKeyword(this.EatToken()); 9782SyntaxToken returnOrBreak; 9818parseSwitchHeader(out var switchKeyword, out var openParen, out var expression, out var closeParen, out var openBrace); 9835out SyntaxToken switchKeyword, 9836out SyntaxToken openParen, 9838out SyntaxToken closeParen, 9839out SyntaxToken openBrace) 9903var caseKeyword = this.EatToken(); 9981private UsingStatementSyntax ParseUsingStatement(SyntaxList<AttributeListSyntax> attributes, SyntaxToken awaitTokenOpt = null) 9983var @using = this.EatToken(SyntaxKind.UsingKeyword); 9984var openParen = this.EatToken(SyntaxKind.OpenParenToken); 10022SyntaxToken scopedKeyword = ParsePossibleScopedKeyword(isFunctionPointerParameter: false, isLambdaParameter: false); 10138SyntaxToken awaitKeyword, usingKeyword; 10163SyntaxToken scopedKeyword = ParsePossibleScopedKeyword(isFunctionPointerParameter: false, isLambdaParameter: false); 10195if (attributes.Count == 0 && mods.Count > 0 && IsAccessibilityModifier(((SyntaxToken)mods[0]).ContextualKind)) 10213var mod = (SyntaxToken)mods[i]; 10237private SyntaxToken ParsePossibleScopedKeyword( 10250var scopedKeyword = this.EatContextualToken(SyntaxKind.ScopedKeyword); 10302var openParen = this.EatToken(SyntaxKind.OpenParenToken); 10375VariableFlags initialFlags, SyntaxToken? scopedKeyword) 10401SyntaxList<SyntaxToken> mods, 10402SyntaxToken? scopedKeyword, 10457SyntaxToken mod; 10576SyntaxList<SyntaxToken> modifiers, 10578SyntaxToken identifier) 10603var modifier = modifiers[i]; 10666SyntaxToken semicolon; 10699SyntaxToken semicolon; 11042var next = PeekToken(1); 11234var operatorToken = EatExpressionOperatorToken(operatorTokenKind); 11298var questionToken = this.EatToken(); 11389var token1 = this.CurrentToken; 11443private SyntaxToken EatExpressionOperatorToken(SyntaxKind operatorTokenKind) 11455var token1 = EatToken(); 11456var token2 = EatToken(); 11468var token1 = EatToken(); 11470var token3 = EatToken(); 11484private AssignmentExpressionSyntax ParseAssignmentExpression(SyntaxKind operatorExpressionKind, ExpressionSyntax leftOperand, SyntaxToken operatorToken) 11514var nextToken = this.PeekToken(1); 11518public static bool IsAtDotDotToken(SyntaxToken token1, SyntaxToken token2) 11526public SyntaxToken EatDotDotToken() 11529var token1 = this.EatToken(); 11530var token2 = this.EatToken(); 11532var dotDotToken = SyntaxFactory.Token(token1.GetLeadingTrivia(), SyntaxKind.DotDotToken, token2.GetTrailingTrivia()); 11564var scopedKeyword = isScoped 11581private ExpressionSyntax ParseIsExpression(ExpressionSyntax leftOperand, SyntaxToken opToken) 11722var refKeyword = this.EatToken(); 11971(SyntaxToken? questionToken, ExpressionSyntax? bindingExpression) tryEatQuestionAndBindingExpression() 11975var nextToken = this.PeekToken(1); 12083openToken: out SyntaxToken openToken, 12085closeToken: out SyntaxToken closeToken, 12099openToken: out SyntaxToken openToken, 12101closeToken: out SyntaxToken closeToken, 12108out SyntaxToken openToken, 12110out SyntaxToken closeToken, 12178LanguageParser @this, ref SyntaxToken open, SeparatedSyntaxListBuilder<ArgumentSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 12221SyntaxToken refKindKeyword = null; 12267var keyword = this.EatToken(); 12311var checkedOrUnchecked = this.EatToken(); 12358var token = this.PeekToken(index++); 12417var identifier = this.IsTrueIdentifier() ? this.EatToken() : CreateMissingIdentifierToken(); 12419var equalsToken = TryEatToken(SyntaxKind.EqualsToken); 12477var openParen = this.EatToken(SyntaxKind.OpenParenToken); 12505private TupleExpressionSyntax ParseTupleExpressionTail(SyntaxToken openParen, ArgumentSyntax firstArg) 12670var token1 = this.PeekToken(1); 12873var openBracket = this.EatToken(SyntaxKind.OpenBracketToken); 12890LanguageParser @this, ref SyntaxToken openBracket, SeparatedSyntaxListBuilder<CollectionElementSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 12919var @new = this.EatToken(SyntaxKind.NewKeyword); 12923var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 12973SyntaxToken @new = this.EatToken(SyntaxKind.NewKeyword); 13046private WithExpressionSyntax ParseWithExpression(ExpressionSyntax receiverExpression, SyntaxToken withKeyword) 13048var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 13073var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 13147LanguageParser @this, ref SyntaxToken startToken, SeparatedSyntaxListBuilder<T> list, SyntaxKind expectedKind, SyntaxKind closeKind) 13180var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 13207var @new = this.EatToken(SyntaxKind.NewKeyword); 13208var openBracket = this.EatToken(SyntaxKind.OpenBracketToken); 13247var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 13265LanguageParser @this, ref SyntaxToken openBrace, SeparatedSyntaxListBuilder<ExpressionSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 13283var @stackalloc = this.EatToken(SyntaxKind.StackAllocKeyword); 13284var openBracket = this.EatToken(SyntaxKind.OpenBracketToken); 13342var @delegate = this.EatToken(SyntaxKind.DelegateKeyword); 13361var openBrace = this.EatToken(SyntaxKind.OpenBraceToken); 13383private SyntaxList<SyntaxToken> ParseAnonymousFunctionModifiers() 13482var arrow = this.EatToken(SyntaxKind.EqualsGreaterThanToken); 13492var identifier = (this.CurrentToken.Kind != SyntaxKind.IdentifierToken && this.PeekToken(1).Kind == SyntaxKind.EqualsGreaterThanToken) 13497var arrow = this.EatToken(SyntaxKind.EqualsGreaterThanToken); 13515var openParen = this.EatToken(SyntaxKind.OpenParenToken); 13537LanguageParser @this, ref SyntaxToken openParen, SeparatedSyntaxListBuilder<ParameterSyntax> list, SyntaxKind expectedKind, SyntaxKind closeKind) 13586var identifier = this.ParseIdentifierToken(); 13589var equalsToken = TryEatToken(SyntaxKind.EqualsToken); 13631var peek1 = this.PeekToken(1); 13649private static bool IsTokenQueryContextualKeyword(SyntaxToken token) 13669private static bool IsTokenStartOfNewQueryClause(SyntaxToken token) 13811var @from = this.EatContextualToken(SyntaxKind.FromKeyword); 13817SyntaxToken name; 13882var @orderby = this.EatContextualToken(SyntaxKind.OrderByKeyword); 13927SyntaxToken direction = null; 14023LanguageParser parser, ref SyntaxToken openToken, SeparatedSyntaxListBuilder<TNode> builder, SyntaxKind expectedKind, SyntaxKind closeTokenKind) where TNode : GreenNode; 14055ref SyntaxToken openToken, 14077ref SyntaxToken openToken, 14253SyntaxListBuilder<SyntaxToken> b = _pool.Allocate<SyntaxToken>();
Parser\LanguageParser_InterpolatedString.cs (10)
41var originalToken = this.EatToken(); 78SyntaxToken getOpenQuote() 238SyntaxToken getCloseQuote() 319private static SyntaxToken TokenOrMissingToken(GreenNode? leading, SyntaxKind kind, string text, GreenNode? trailing) 395SyntaxToken openBraceToken) 421(InterpolationFormatClauseSyntax? format, SyntaxToken closeBraceToken) getFormatAndCloseBrace() 437SyntaxToken getInterpolationCloseToken(GreenNode? leading) 452private SyntaxToken MakeInterpolatedStringTextToken(Lexer.InterpolatedStringKind kind, string text) 467var token = tempLexer.Lex(ref mode); 469var result = SyntaxFactory.Literal(leading: null, text, SyntaxKind.InterpolatedStringTextToken, token.ValueText, trailing: null);
Parser\LanguageParser_Patterns.cs (9)
279var varToken = ConvertToKeyword(typeIdentifierToken); 289var openParenToken = this.EatToken(SyntaxKind.OpenParenToken); 299var closeParenToken = this.EatToken(SyntaxKind.CloseParenToken); 486var openBraceToken = this.EatToken(SyntaxKind.OpenBraceToken); 511var colon = EatToken(); 540LanguageParser @this, ref SyntaxToken open, SeparatedSyntaxListBuilder<T> list, SyntaxKind expectedKind, SyntaxKind closeKind) 568private SwitchExpressionSyntax ParseSwitchExpression(ExpressionSyntax governingExpression, SyntaxToken switchKeyword) 624var commaToken = this.CurrentToken.Kind == SyntaxKind.SemicolonToken 637var openBracket = this.EatToken(SyntaxKind.OpenBracketToken);
Parser\Lexer.cs (23)
237public SyntaxToken Lex(ref LexerMode mode) 239var result = Lex(mode); 248public SyntaxToken Lex(LexerMode mode) 307private SyntaxToken LexSyntaxToken() 342private SyntaxToken Create(in TokenInfo info, SyntaxListBuilder? leading, SyntaxListBuilder? trailing, SyntaxDiagnosticInfo[]? errors) 349SyntaxToken token; 2494private SyntaxToken LexDirectiveToken() 2507var token = Create(in info, null, directiveTriviaCache, errors); 2540private SyntaxToken LexEndOfDirectiveAfterOptionalPreprocessingMessage(SyntaxTrivia? leading) 2551var endOfDirective = SyntaxFactory.Token(leading, SyntaxKind.EndOfDirectiveToken, trailing); 2556public SyntaxToken LexEndOfDirectiveWithOptionalPreprocessingMessage() 2565public SyntaxToken LexEndOfDirectiveWithOptionalContent(out SyntaxToken? content) 2568? SyntaxToken.StringLiteral(message) 2853private SyntaxToken LexXmlToken() 3209private SyntaxToken LexXmlElementTagToken() 3224SyntaxToken? token = DocumentationCommentXmlTokens.LookupToken(tagInfo.Text, leading); 3395private SyntaxToken LexXmlAttributeTextToken() 3548private SyntaxToken LexXmlCharacter() 3604private SyntaxToken LexXmlCrefOrNameToken() 4017private SyntaxToken LexXmlCDataSectionTextToken() 4139private SyntaxToken LexXmlCommentTextToken() 4269private SyntaxToken LexXmlProcessingInstructionTextToken()
Parser\Lexer_StringLiteral.cs (1)
300internal static SyntaxToken RescanInterpolatedString(InterpolatedStringExpressionSyntax interpolatedString)
Parser\LexerCache.cs (5)
33private TextKeyedCache<SyntaxToken>? _tokenMap; 122private TextKeyedCache<SyntaxToken> TokenMap 126_tokenMap ??= TextKeyedCache<SyntaxToken>.GetInstance(); 224internal SyntaxToken LookupToken<TArg>( 229Func<TArg, SyntaxToken> createTokenFunction,
Parser\QuickScanner.cs (4)
192private SyntaxToken? QuickScanSyntaxToken() 237var token = _cache.LookupToken( 253private static SyntaxToken CreateQuickToken(Lexer lexer) 259var token = lexer.LexSyntaxToken();
Parser\SyntaxParser.cs (55)
29private SyntaxToken _currentToken; 30private ArrayElement<SyntaxToken>[] _lexedTokens; 39private static readonly ObjectPool<ArrayElement<SyntaxToken>[]> s_lexedTokensPool = new ObjectPool<ArrayElement<SyntaxToken>[]>(() => new ArrayElement<SyntaxToken>[CachedTokenArraySize]); 149var token = lexer.Lex(mode); 316protected SyntaxToken CurrentToken 324private SyntaxToken FetchCurrentToken() 380private void AddLexedToken(SyntaxToken token) 454private void ReturnLexedTokensToPool(ArrayElement<SyntaxToken>[] lexedTokens) 466protected SyntaxToken PeekToken(int n) 486protected SyntaxToken EatToken() 488var ct = this.CurrentToken; 497protected SyntaxToken TryEatToken(SyntaxKind kind) 521protected SyntaxToken EatToken(SyntaxKind kind) 525var ct = this.CurrentToken; 537protected SyntaxToken EatTokenAsKind(SyntaxKind expected) 541var ct = this.CurrentToken; 548var replacement = CreateMissingToken(expected, this.CurrentToken.Kind, reportError: true); 552private SyntaxToken CreateMissingToken(SyntaxKind expected, SyntaxKind actual, bool reportError) 555var token = SyntaxFactory.MissingToken(expected); 564private SyntaxToken CreateMissingToken(SyntaxKind expected, ErrorCode code, bool reportError) 567var token = SyntaxFactory.MissingToken(expected); 576protected SyntaxToken EatToken(SyntaxKind kind, bool reportError) 595protected SyntaxToken EatToken(SyntaxKind kind, ErrorCode code, bool reportError = true) 608protected SyntaxToken EatTokenWithPrejudice(SyntaxKind kind) 610var token = this.CurrentToken; 621protected SyntaxToken EatTokenWithPrejudice(ErrorCode errorCode, params object[] args) 623var token = this.EatToken(); 628protected SyntaxToken EatContextualToken(SyntaxKind kind, ErrorCode code, bool reportError = true) 642protected SyntaxToken EatContextualToken(SyntaxKind kind, bool reportError = true) 736SyntaxToken ct = this.CurrentToken; 778SyntaxToken token = node as SyntaxToken; 834var firstToken = node.GetFirstToken(); 840var firstToken = node.GetFirstToken(); 862var lastToken = node.GetLastNonmissingToken(); 900var oldToken = node as SyntaxToken ?? node.GetFirstToken(); 901var newToken = AddSkippedSyntax(oldToken, skippedSyntax, trailing: false); 919var token = node as SyntaxToken; 926var lastToken = node.GetLastToken(); 927var newToken = AddSkippedSyntax(lastToken, skippedSyntax, trailing: true); 936internal SyntaxToken AddSkippedSyntax(SyntaxToken target, GreenNode skippedSyntax, bool trailing) 949SyntaxToken token = node as SyntaxToken; 957SyntaxToken tk = token.TokenWithLeadingTrivia(null).TokenWithTrailingTrivia(null); 1096protected static SyntaxToken ConvertToKeyword(SyntaxToken token) 1115protected static SyntaxToken ConvertToIdentifier(SyntaxToken token) 1119var identifier = SyntaxToken.Identifier(token.Kind, token.LeadingTrivia.Node, token.Text, token.ValueText, token.TrailingTrivia.Node);
Symbols\Source\AttributeLocation.cs (1)
123internal static AttributeLocation ToAttributeLocation(this Syntax.InternalSyntax.SyntaxToken token)
Syntax\InternalSyntax\CSharpSyntaxNode.cs (8)
98public SyntaxToken GetFirstToken() 100return (SyntaxToken)this.GetFirstTerminal(); 103public SyntaxToken GetLastToken() 105return (SyntaxToken)this.GetLastTerminal(); 108public SyntaxToken GetLastNonmissingToken() 110return (SyntaxToken)this.GetLastNonmissingTerminal(); 199var t = node as SyntaxToken;
Syntax\InternalSyntax\CSharpSyntaxRewriter.cs (1)
21public override CSharpSyntaxNode VisitToken(SyntaxToken token)
Syntax\InternalSyntax\CSharpSyntaxVisitor.cs (2)
25public virtual TResult VisitToken(SyntaxToken token) 53public virtual void VisitToken(SyntaxToken token)
Syntax\InternalSyntax\SyntaxFactory.cs (55)
32private static SyntaxToken s_xmlCarriageReturnLineFeed; 33private static SyntaxToken XmlCarriageReturnLineFeed 116public static SyntaxToken Token(SyntaxKind kind) 118return SyntaxToken.Create(kind); 121internal static SyntaxToken Token(GreenNode leading, SyntaxKind kind, GreenNode trailing) 123return SyntaxToken.Create(kind, leading, trailing); 127/// Creates a token whose <see cref="SyntaxToken.Text"/> and <see cref="SyntaxToken.ValueText"/> are the same. 129internal static SyntaxToken Token(GreenNode leading, SyntaxKind kind, string text, GreenNode trailing) 134internal static SyntaxToken Token(GreenNode leading, SyntaxKind kind, string text, string valueText, GreenNode trailing) 142return kind >= SyntaxToken.FirstTokenWithWellKnownText && kind <= SyntaxToken.LastTokenWithWellKnownText && text == defaultText && valueText == defaultText 144: SyntaxToken.WithValue(kind, leading, text, valueText, trailing); 147internal static SyntaxToken MissingToken(SyntaxKind kind) 149return SyntaxToken.CreateMissing(kind); 152internal static SyntaxToken MissingToken(GreenNode leading, SyntaxKind kind, GreenNode trailing) 154return SyntaxToken.CreateMissing(kind, leading, trailing); 157internal static SyntaxToken Identifier(string text) 162internal static SyntaxToken Identifier(GreenNode leading, string text, GreenNode trailing) 167internal static SyntaxToken Identifier(SyntaxKind contextualKind, GreenNode leading, string text, string valueText, GreenNode trailing) 169return SyntaxToken.Identifier(contextualKind, leading, text, valueText, trailing); 172internal static SyntaxToken Literal(GreenNode leading, string text, int value, GreenNode trailing) 174return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 177internal static SyntaxToken Literal(GreenNode leading, string text, uint value, GreenNode trailing) 179return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 182internal static SyntaxToken Literal(GreenNode leading, string text, long value, GreenNode trailing) 184return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 187internal static SyntaxToken Literal(GreenNode leading, string text, ulong value, GreenNode trailing) 189return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 192internal static SyntaxToken Literal(GreenNode leading, string text, float value, GreenNode trailing) 194return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 197internal static SyntaxToken Literal(GreenNode leading, string text, double value, GreenNode trailing) 199return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 202internal static SyntaxToken Literal(GreenNode leading, string text, decimal value, GreenNode trailing) 204return SyntaxToken.WithValue(SyntaxKind.NumericLiteralToken, leading, text, value, trailing); 207internal static SyntaxToken Literal(GreenNode leading, string text, string value, GreenNode trailing) 209return SyntaxToken.WithValue(SyntaxKind.StringLiteralToken, leading, text, value, trailing); 212internal static SyntaxToken Literal(GreenNode leading, string text, SyntaxKind kind, string value, GreenNode trailing) 214return SyntaxToken.WithValue(kind, leading, text, value, trailing); 217internal static SyntaxToken Literal(GreenNode leading, string text, char value, GreenNode trailing) 219return SyntaxToken.WithValue(SyntaxKind.CharacterLiteralToken, leading, text, value, trailing); 222internal static SyntaxToken BadToken(GreenNode leading, string text, GreenNode trailing) 224return SyntaxToken.WithValue(SyntaxKind.BadToken, leading, text, text, trailing); 227internal static SyntaxToken XmlTextLiteral(GreenNode leading, string text, string value, GreenNode trailing) 229return SyntaxToken.WithValue(SyntaxKind.XmlTextLiteralToken, leading, text, value, trailing); 232internal static SyntaxToken XmlTextNewLine(GreenNode leading, string text, string value, GreenNode trailing) 239return SyntaxToken.WithValue(SyntaxKind.XmlTextLiteralNewLineToken, leading, text, value, trailing); 242internal static SyntaxToken XmlTextNewLine(string text) 244return SyntaxToken.WithValue(SyntaxKind.XmlTextLiteralNewLineToken, null, text, text, null); 247internal static SyntaxToken XmlEntity(GreenNode leading, string text, string value, GreenNode trailing) 249return SyntaxToken.WithValue(SyntaxKind.XmlEntityLiteralToken, leading, text, value, trailing); 307public static SeparatedSyntaxList<TNode> SeparatedList<TNode>(SyntaxToken token) where TNode : CSharpSyntaxNode 312public static SeparatedSyntaxList<TNode> SeparatedList<TNode>(TNode node1, SyntaxToken token, TNode node2) where TNode : CSharpSyntaxNode 344internal static IEnumerable<SyntaxToken> GetWellKnownTokens() 346return SyntaxToken.GetWellKnownTokens();
Syntax\InternalSyntax\SyntaxFirstTokenReplacer.cs (8)
16private readonly SyntaxToken _oldToken; 17private readonly SyntaxToken _newToken; 21private SyntaxFirstTokenReplacer(SyntaxToken oldToken, SyntaxToken newToken, int diagnosticOffsetDelta) 29internal static TRoot Replace<TRoot>(TRoot root, SyntaxToken oldToken, SyntaxToken newToken, int diagnosticOffsetDelta) 44var token = node as SyntaxToken;
Syntax\InternalSyntax\SyntaxLastTokenReplacer.cs (8)
16private readonly SyntaxToken _oldToken; 17private readonly SyntaxToken _newToken; 21private SyntaxLastTokenReplacer(SyntaxToken oldToken, SyntaxToken newToken) 27internal static TRoot Replace<TRoot>(TRoot root, SyntaxToken newToken) 30var oldToken = root.GetLastToken(); 49var token = node as SyntaxToken;
Syntax\InternalSyntax\SyntaxListPoolExtensions.cs (2)
11public static SyntaxList<SyntaxToken> ToTokenListAndFree(this SyntaxListPool pool, SyntaxListBuilder builder) 15return new SyntaxList<SyntaxToken>(listNode);
Syntax\InternalSyntax\SyntaxToken.cs (29)
70internal static SyntaxToken Create(SyntaxKind kind) 85internal static SyntaxToken Create(SyntaxKind kind, GreenNode leading, GreenNode trailing) 121internal static SyntaxToken CreateMissing(SyntaxKind kind) 135internal static SyntaxToken CreateMissing(SyntaxKind kind, GreenNode leading, GreenNode trailing) 144private static readonly ArrayElement<SyntaxToken>[] s_tokensWithNoTrivia = new ArrayElement<SyntaxToken>[(int)LastTokenWithWellKnownText + 1]; 145private static readonly ArrayElement<SyntaxToken>[] s_tokensWithElasticTrivia = new ArrayElement<SyntaxToken>[(int)LastTokenWithWellKnownText + 1]; 146private static readonly ArrayElement<SyntaxToken>[] s_tokensWithSingleTrailingSpace = new ArrayElement<SyntaxToken>[(int)LastTokenWithWellKnownText + 1]; 147private static readonly ArrayElement<SyntaxToken>[] s_tokensWithSingleTrailingCRLF = new ArrayElement<SyntaxToken>[(int)LastTokenWithWellKnownText + 1]; 148private static readonly ArrayElement<SyntaxToken>[] s_missingTokensWithNoTrivia = new ArrayElement<SyntaxToken>[(int)LastTokenWithWellKnownText + 1]; 150private static readonly SyntaxToken s_missingIdentifierTokenWithNoTrivia = new MissingTokenWithTrivia(SyntaxKind.IdentifierToken, leading: null, trailing: null); 164internal static IEnumerable<SyntaxToken> GetWellKnownTokens() 199internal static SyntaxToken Identifier(string text) 204internal static SyntaxToken Identifier(GreenNode leading, string text, GreenNode trailing) 221internal static SyntaxToken Identifier(SyntaxKind contextualKind, GreenNode leading, string text, string valueText, GreenNode trailing) 231internal static SyntaxToken WithValue<T>(SyntaxKind kind, string text, T value) 236internal static SyntaxToken WithValue<T>(SyntaxKind kind, GreenNode leading, string text, T value, GreenNode trailing) 241internal static SyntaxToken StringLiteral(string text) 246internal static SyntaxToken StringLiteral(CSharpSyntaxNode leading, string text, CSharpSyntaxNode trailing) 347public virtual SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 357public virtual SyntaxToken TokenWithTrailingTrivia(GreenNode trivia) 364System.Diagnostics.Debug.Assert(this.GetType() == typeof(SyntaxToken)); 370System.Diagnostics.Debug.Assert(this.GetType() == typeof(SyntaxToken)); 435var otherToken = (SyntaxToken)other;
Syntax\InternalSyntax\SyntaxToken.MissingTokenWithTrivia.cs (2)
47public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 52public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxIdentifier.cs (2)
44public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 49public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxIdentifierExtended.cs (2)
47public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 52public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxIdentifierWithTrailingTrivia.cs (2)
40public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 45public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxIdentifierWithTrivia.cs (2)
68public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 73public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxLiteral.cs (2)
57public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 62public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxLiteralWithTrivia.cs (2)
63public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 68public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\SyntaxToken.SyntaxTokenWithTrivia.cs (2)
56public override SyntaxToken TokenWithLeadingTrivia(GreenNode trivia) 61public override SyntaxToken TokenWithTrailingTrivia(GreenNode trivia)
Syntax\InternalSyntax\TypeDeclarationSyntax.cs (37)
16CoreSyntax.SyntaxList<SyntaxToken> modifiers, 17SyntaxToken keyword, 18SyntaxToken identifier, 23SyntaxToken openBraceToken, 25SyntaxToken closeBraceToken, 26SyntaxToken semicolonToken); 33CoreSyntax.SyntaxList<SyntaxToken> modifiers, 34SyntaxToken keyword, 35SyntaxToken identifier, 40SyntaxToken openBraceToken, 42SyntaxToken closeBraceToken, 43SyntaxToken semicolonToken) 65CoreSyntax.SyntaxList<SyntaxToken> modifiers, 66SyntaxToken keyword, 67SyntaxToken identifier, 72SyntaxToken openBraceToken, 74SyntaxToken closeBraceToken, 75SyntaxToken semicolonToken) 97CoreSyntax.SyntaxList<SyntaxToken> modifiers, 98SyntaxToken keyword, 99SyntaxToken identifier, 104SyntaxToken openBraceToken, 106SyntaxToken closeBraceToken, 107SyntaxToken semicolonToken) 130CoreSyntax.SyntaxList<SyntaxToken> modifiers, 131SyntaxToken keyword, 132SyntaxToken identifier, 137SyntaxToken openBraceToken, 139SyntaxToken closeBraceToken, 140SyntaxToken semicolonToken) 162CoreSyntax.SyntaxList<SyntaxToken> modifiers, 163SyntaxToken keyword, 164SyntaxToken identifier, 169SyntaxToken openBraceToken, 171SyntaxToken closeBraceToken, 172SyntaxToken semicolonToken) 197public override SyntaxToken Identifier => null;
Syntax\ShebangDirectiveTriviaSyntax.cs (5)
15var token = InternalSyntax.SyntaxToken.StringLiteral(this.EndOfDirectiveToken.LeadingTrivia.ToString()); 25.WithContent((InternalSyntax.SyntaxToken)content.Node!).CreateRed(); 37public ShebangDirectiveTriviaSyntax WithContent(SyntaxToken content) 39SyntaxToken endOfDirectiveToken = this.EndOfDirectiveToken;
Syntax\SyntaxEquivalence.cs (4)
80if (((Green.SyntaxToken)before).ValueText != ((Green.SyntaxToken)after).ValueText) 95if (((Green.SyntaxToken)before).Text != ((Green.SyntaxToken)after).Text)
Syntax\SyntaxFactory.cs (1)
1663var token = lexer.Lex(InternalSyntax.LexerMode.Syntax);
Syntax\SyntaxFacts.cs (2)
443internal static bool IsIdentifierVar(this Syntax.InternalSyntax.SyntaxToken node) 448internal static bool IsIdentifierVarOrPredefinedType(this Syntax.InternalSyntax.SyntaxToken node)
Syntax\SyntaxTokenParser.cs (3)
55var token = _lexer.Lex(InternalSyntax.LexerMode.Syntax); 70var containingToken = InternalSyntax.SyntaxFactory.MissingToken(leading: leadingTrivia.Node, SyntaxKind.None, trailing: null); 85var containingToken = InternalSyntax.SyntaxFactory.MissingToken(leading: null, SyntaxKind.None, trailing: trailingTrivia.Node);
Syntax\SyntaxTreeDiagnosticEnumerator.cs (3)
142var token = node as Syntax.InternalSyntax.SyntaxToken; 153private void PushToken(Syntax.InternalSyntax.SyntaxToken token)
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (4)
IncrementalParsing\IncrementalParsingTests.cs (2)
3504var oldToken = ((Syntax.InternalSyntax.ClassDeclarationSyntax)oldClassC).Identifier; 3505var newToken = ((Syntax.InternalSyntax.ClassDeclarationSyntax)newClassC).Identifier;
LexicalAndXml\CrefLexerTests.cs (1)
448var token = lexer.Lex(InternalSyntax.LexerMode.XmlCrefQuote | InternalSyntax.LexerMode.XmlDocCommentStyleSingleLine | InternalSyntax.LexerMode.XmlDocCommentLocationInterior);
LexicalAndXml\NameAttributeValueLexerTests.cs (1)
412var token = lexer.Lex(InternalSyntax.LexerMode.XmlNameQuote | InternalSyntax.LexerMode.XmlDocCommentStyleSingleLine | InternalSyntax.LexerMode.XmlDocCommentLocationInterior);