var g = newGlobal({newCompartment: true}); var dbg = new Debugger; var gw = dbg.addDebuggee(g);
g.eval(` // 1 var line0 = Error().lineNumber; // 2 function f() { // 3 for (var x of [0]) { // 4 if (true == false) // 5 returnfalse; // 6, aka line0 + 4
} // 7 returntrue; // 8
} // 9
`); // 10
if (g.dis)
g.dis(g.f);
var script = gw.getOwnPropertyDescriptor("f").value.script;
print("Debugger's view:");
print("----------------"); for (var i = script.startLine; i <= script.startLine + script.lineCount; i++) {
print("Line " + i + ": " + JSON.stringify(script.getLineOffsets(i)));
}
var hits = 0; var handler = {hit: function () { hits++; }}; var offs = script.getLineOffsets(g.line0 + 4); for (var i = 0; i < offs.length; i++)
script.setBreakpoint(offs[i], handler);
assertEq(g.f(), true);
assertEq(hits, 0);
Messung V0.5
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.