private EntityName ParseEntityName(bool allowReservedWords, DiagnosticMessage diagnosticMessage = null) { var entity = (EntityName)ParseIdentifier(); while (ParseOptional(SyntaxKind.DotToken)) { using (var node = CreateNode <QualifiedName>(SyntaxKind.QualifiedName, entity.Pos, NodeStackOperation.PushAdd)) { node.Left = entity; node.Right = ParseRightSideOfDot(allowReservedWords); Add(node.Left); Add(node.Right); entity = (EntityName)FinishNode(node); } } return(entity); }
private Identifier CreateIdentifier(bool isIdentifier, DiagnosticMessage diagnosticMessage = null) { identifierCount++; if (isIdentifier) { var node = CreateNode <Identifier>(SyntaxKind.Identifier); if (this.Token != SyntaxKind.Identifier) { node.OriginalKeywordKind = this.Token; } node.Text = InternIdentifier(scanner.GetTokenValue()); NextToken(); return(FinishNode(node)); } else { Debugger.Break(); return(null); } }
private Identifier ParseIdentifier(DiagnosticMessage diagnosticMessage = null) { return(CreateIdentifier(IsIdentifier())); }
private CLRStringEntityName ParseCLRStringEntityName(bool allowReservedWords, DiagnosticMessage diagnosticMessage = null) { var entityName = (CLRStringEntityName)ParseEntityName(allowReservedWords, diagnosticMessage); if (LookAhead(NextTokenIsNumericLiteral)) { NextToken(); entityName.ArgCount = (NumericLiteral)(TokenNode)ParseLiteralNode(); } return(entityName); }