Is it possible to get currently executing script line number without resorting to the debugger?
I would like to highlight certain lines whenever they are being executed. For example:
What I have tried so far but without any success:
Are there any other options available for V8ScriptEngine?
I would like to highlight certain lines whenever they are being executed. For example:
public class Test() {
public void method1(string str){};
public void method2(string str){};
}
var engine = new V8ScriptEngine(V8ScriptEngineFlags.EnableDebugging, port);
engine.AddHostObject("test", new Test());
engine.Execute("test_script", script_js);
script_js:....
test.method1('foo');
....
test.method2('bar');
and I would like to retrieve the line number whenever the test.method1 or test.method2 is being executed (from within the host C# code).What I have tried so far but without any success:
-
V8ScriptEngine.getStackTrace() - Doesn't work since it essentially terminates the script execution.
-
Adding
function getStackTrace(){ return new Error().stack; }
to the script and calling it from the host method e.g.var st = (string)engine.Script.getStackTrace();
Doesn't work either. It seems to enter infinite recursive loop and just keeps calling the same host method over and over again.Are there any other options available for V8ScriptEngine?