src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/codegen/Lower.java
Print this page
@@ -43,10 +43,11 @@
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,10 +184,19 @@
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;
}