src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/codegen/Lower.java

Print this page

        

*** 43,52 **** --- 43,53 ---- import jdk.nashorn.internal.ir.BlockStatement; import jdk.nashorn.internal.ir.BreakNode; import jdk.nashorn.internal.ir.CallNode; import jdk.nashorn.internal.ir.CaseNode; import jdk.nashorn.internal.ir.CatchNode; + import jdk.nashorn.internal.ir.DebuggerNode; import jdk.nashorn.internal.ir.ContinueNode; import jdk.nashorn.internal.ir.EmptyNode; import jdk.nashorn.internal.ir.Expression; import jdk.nashorn.internal.ir.ExpressionStatement; import jdk.nashorn.internal.ir.ForNode;
*** 183,192 **** --- 184,202 ---- addStatement(continueNode); return false; } @Override + public boolean enterDebuggerNode(final DebuggerNode debuggerNode) { + final int line = debuggerNode.getLineNumber(); + final long token = debuggerNode.getToken(); + final int finish = debuggerNode.getFinish(); + addStatement(new ExpressionStatement(line, token, finish, new RuntimeNode(token, finish, RuntimeNode.Request.DEBUGGER, new ArrayList<Expression>()))); + return false; + } + + @Override public boolean enterJumpToInlinedFinally(final JumpToInlinedFinally jumpToInlinedFinally) { addStatement(jumpToInlinedFinally); return false; }