/** * Shorthand for eatOpt(TokenType.IDENTIFIER) */ private IdentifierToken eatIdOpt() { return (peekId()) ? eatIdOrKeywordAsId() : null; }
/** * Shorthand for eatOpt(TokenType.IDENTIFIER) */ private IdentifierToken eatIdOpt() { return (peekId()) ? eatIdOrKeywordAsId() : null; }
private Token eatObjectLiteralPropertyName() { Token token = peekToken(); switch (token.type) { case STRING: case NUMBER: return nextToken(); case IDENTIFIER: default: return eatIdOrKeywordAsId(); } }
private Token eatObjectLiteralPropertyName() { Token token = peekToken(); switch (token.type) { case STRING: case NUMBER: return nextToken(); case IDENTIFIER: default: return eatIdOrKeywordAsId(); } }
/** * Consumes an identifier token that is not a reserved word. * @see "http://www.ecma-international.org/ecma-262/5.1/#sec-7.6" */ private IdentifierToken eatId() { if (peekId()) { return eatIdOrKeywordAsId(); } else { reportExpectedError(peekToken(), TokenType.IDENTIFIER); if (peekIdOrKeyword()) { return eatIdOrKeywordAsId(); } else { return null; } } }
private ParseTree parseExportSpecifier() { SourcePosition start = getTreeStartLocation(); IdentifierToken importedName = eatIdOrKeywordAsId(); IdentifierToken destinationName = null; if (peekPredefinedString(PredefinedName.AS)) { eatPredefinedString(PredefinedName.AS); destinationName = eatIdOrKeywordAsId(); } return new ExportSpecifierTree( getTreeLocation(start), importedName, destinationName); }
private ParseTree parseExportSpecifier() { SourcePosition start = getTreeStartLocation(); IdentifierToken importedName = eatIdOrKeywordAsId(); IdentifierToken destinationName = null; if (peekPredefinedString(PredefinedName.AS)) { eatPredefinedString(PredefinedName.AS); destinationName = eatIdOrKeywordAsId(); } return new ExportSpecifierTree( getTreeLocation(start), importedName, destinationName); }
/** * Consumes an identifier token that is not a reserved word. * @see "http://www.ecma-international.org/ecma-262/5.1/#sec-7.6" */ private IdentifierToken eatId() { if (peekId()) { return eatIdOrKeywordAsId(); } else { reportExpectedError(peekToken(), TokenType.IDENTIFIER); return null; } }
private TypeNameTree parseTypeName() { SourcePosition start = getTreeStartLocation(); IdentifierToken token = eatIdOrKeywordAsId(); // for 'void'. return new TypeNameTree(getTreeLocation(start), buildIdentifierPath(token)); }
private TypeNameTree parseTypeName() { SourcePosition start = getTreeStartLocation(); IdentifierToken token = eatIdOrKeywordAsId(); // for 'void'. return new TypeNameTree(getTreeLocation(start), buildIdentifierPath(token)); }
private ParseTree parseImportSpecifier() { SourcePosition start = getTreeStartLocation(); IdentifierToken importedName = eatIdOrKeywordAsId(); IdentifierToken destinationName = null; if (peekPredefinedString(PredefinedName.AS)) { eatPredefinedString(PredefinedName.AS); destinationName = eatId(); } else if (isKeyword(importedName.value)) { reportExpectedError(null, PredefinedName.AS); } return new ImportSpecifierTree( getTreeLocation(start), importedName, destinationName); }
private ParseTree parseImportSpecifier() { SourcePosition start = getTreeStartLocation(); IdentifierToken importedName = eatIdOrKeywordAsId(); IdentifierToken destinationName = null; if (peekPredefinedString(PredefinedName.AS)) { eatPredefinedString(PredefinedName.AS); destinationName = eatId(); } else if (Keywords.isKeyword(importedName.value)) { reportExpectedError(null, PredefinedName.AS); } return new ImportSpecifierTree( getTreeLocation(start), importedName, destinationName); }
private IndexSignatureTree parseIndexSignature() { SourcePosition start = getTreeStartLocation(); eat(TokenType.OPEN_SQUARE); IdentifierToken name = eatIdOrKeywordAsId(); eat(TokenType.COLON); ParseTree indexType = parseTypeName(); // must be 'string' or 'number' eat(TokenType.CLOSE_SQUARE); eat(TokenType.COLON); ParseTree declaredType = parseType(); ParseTree nameTree = new MemberVariableTree(getTreeLocation(start), name, false, false, null, indexType); return new IndexSignatureTree(getTreeLocation(start), nameTree, declaredType); }
private IndexSignatureTree parseIndexSignature() { SourcePosition start = getTreeStartLocation(); eat(TokenType.OPEN_SQUARE); IdentifierToken name = eatIdOrKeywordAsId(); eat(TokenType.COLON); ParseTree indexType = parseTypeName(); // must be 'string' or 'number' eat(TokenType.CLOSE_SQUARE); eat(TokenType.COLON); ParseTree declaredType = parseType(); ParseTree nameTree = new MemberVariableTree(getTreeLocation(start), name, false, false, null, indexType); return new IndexSignatureTree(getTreeLocation(start), nameTree, declaredType); }
case PERIOD: eat(TokenType.PERIOD); IdentifierToken id = eatIdOrKeywordAsId(); operand = new MemberExpressionTree(getTreeLocation(start), operand, id); break;
case PERIOD: eat(TokenType.PERIOD); IdentifierToken id = eatIdOrKeywordAsId(); operand = new MemberExpressionTree(getTreeLocation(start), operand, id); break;
return parseCallSignature(true); // ConstructSignature } else if (type == TokenType.IDENTIFIER || Keywords.isKeyword(type)) { name = eatIdOrKeywordAsId(); } else if (type == TokenType.OPEN_SQUARE) { // IndexSignature return parseIndexSignature();
return parseCallSignature(true); // ConstructSignature } else if (type == TokenType.IDENTIFIER || Keywords.isKeyword(type)) { name = eatIdOrKeywordAsId(); } else if (type == TokenType.OPEN_SQUARE) { // IndexSignature return parseIndexSignature();
name = eatIdOrKeywordAsId(); if (!peek(TokenType.COLON)) { IdentifierToken idToken = (IdentifierToken) name;
name = eatIdOrKeywordAsId(); if (!peek(TokenType.COLON)) { IdentifierToken idToken = (IdentifierToken) name;