< prev index next >

src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IRTranslator.java

Print this page




 367         curExpr = new ConditionalExpressionTreeImpl(ternaryNode,
 368                 translateExpr(ternaryNode.getTest()),
 369                 translateExpr(ternaryNode.getTrueExpression()),
 370                 translateExpr(ternaryNode.getFalseExpression()));
 371         return false;
 372     }
 373 
 374     @Override
 375     public boolean enterThrowNode(final ThrowNode throwNode) {
 376         curStat = new ThrowTreeImpl(throwNode,
 377                 translateExpr(throwNode.getExpression()));
 378         return false;
 379     }
 380 
 381     @Override
 382     public boolean enterTryNode(final TryNode tryNode) {
 383         final List<? extends CatchNode> catchNodes = tryNode.getCatches();
 384         final List<CatchTreeImpl> catchTrees = new ArrayList<>(catchNodes.size());
 385         for (final CatchNode catchNode : catchNodes) {
 386             catchTrees.add(new CatchTreeImpl(catchNode,
 387                     translateIdent(catchNode.getException()),
 388                     (BlockTree) translateBlock(catchNode.getBody()),
 389                     translateExpr(catchNode.getExceptionCondition())));
 390         }
 391 
 392         curStat = new TryTreeImpl(tryNode,
 393                 (BlockTree) translateBlock(tryNode.getBody()),
 394                 catchTrees,
 395                 (BlockTree) translateBlock(tryNode.getFinallyBody()));
 396 
 397         return false;
 398     }
 399 
 400     @Override
 401     public boolean enterUnaryNode(final UnaryNode unaryNode) {
 402         if (unaryNode.isTokenType(TokenType.NEW)) {
 403             curExpr = new NewTreeImpl(unaryNode,
 404                     translateExpr(unaryNode.getExpression()));
 405         } else if (unaryNode.isTokenType(TokenType.YIELD) ||
 406                 unaryNode.isTokenType(TokenType.YIELD_STAR)) {
 407             curExpr = new YieldTreeImpl(unaryNode,




 367         curExpr = new ConditionalExpressionTreeImpl(ternaryNode,
 368                 translateExpr(ternaryNode.getTest()),
 369                 translateExpr(ternaryNode.getTrueExpression()),
 370                 translateExpr(ternaryNode.getFalseExpression()));
 371         return false;
 372     }
 373 
 374     @Override
 375     public boolean enterThrowNode(final ThrowNode throwNode) {
 376         curStat = new ThrowTreeImpl(throwNode,
 377                 translateExpr(throwNode.getExpression()));
 378         return false;
 379     }
 380 
 381     @Override
 382     public boolean enterTryNode(final TryNode tryNode) {
 383         final List<? extends CatchNode> catchNodes = tryNode.getCatches();
 384         final List<CatchTreeImpl> catchTrees = new ArrayList<>(catchNodes.size());
 385         for (final CatchNode catchNode : catchNodes) {
 386             catchTrees.add(new CatchTreeImpl(catchNode,
 387                     translateExpr(catchNode.getException()),
 388                     (BlockTree) translateBlock(catchNode.getBody()),
 389                     translateExpr(catchNode.getExceptionCondition())));
 390         }
 391 
 392         curStat = new TryTreeImpl(tryNode,
 393                 (BlockTree) translateBlock(tryNode.getBody()),
 394                 catchTrees,
 395                 (BlockTree) translateBlock(tryNode.getFinallyBody()));
 396 
 397         return false;
 398     }
 399 
 400     @Override
 401     public boolean enterUnaryNode(final UnaryNode unaryNode) {
 402         if (unaryNode.isTokenType(TokenType.NEW)) {
 403             curExpr = new NewTreeImpl(unaryNode,
 404                     translateExpr(unaryNode.getExpression()));
 405         } else if (unaryNode.isTokenType(TokenType.YIELD) ||
 406                 unaryNode.isTokenType(TokenType.YIELD_STAR)) {
 407             curExpr = new YieldTreeImpl(unaryNode,


< prev index next >