< prev index next >
src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java
Print this page
*** 4389,4402 ****
return new UnaryNode(unaryToken, expr);
}
appendStatement(new ExpressionStatement(unaryLine, unaryToken, finish, expr));
return LiteralNode.newInstance(unaryToken, finish, true);
}
case VOID:
case TYPEOF:
- case ADD:
- case SUB:
case BIT_NOT:
case NOT:
next();
final Expression expr = unaryExpression();
return new UnaryNode(unaryToken, expr);
--- 4389,4407 ----
return new UnaryNode(unaryToken, expr);
}
appendStatement(new ExpressionStatement(unaryLine, unaryToken, finish, expr));
return LiteralNode.newInstance(unaryToken, finish, true);
}
+ case ADD:
+ case SUB: {
+ final TokenType opType = type;
+ next();
+ final Expression expr = unaryExpression();
+ return new UnaryNode(Token.recast(unaryToken, (opType == TokenType.ADD) ? TokenType.POS : TokenType.NEG), expr);
+ }
case VOID:
case TYPEOF:
case BIT_NOT:
case NOT:
next();
final Expression expr = unaryExpression();
return new UnaryNode(unaryToken, expr);
< prev index next >