Added more tests + benchmark works

This commit is contained in:
NeeEoo
2024-04-23 06:28:28 +02:00
parent b105ac0453
commit 049daf4b0d
8 changed files with 262 additions and 60 deletions
+36
View File
@@ -0,0 +1,36 @@
package;
@:access(hscript.Interp)
@:access(hscript.Parser)
class HScriptRunner {
public var interp:Interp;
public var headerCode:String = "";
public var tailCode:String = "";
public var clearPrevious:Bool = true;
public function new() {}
public function getNewInterp() {
var interp = Util.getInterp();
interp.errorHandler = Util.errorHandler;
return interp;
}
public function setup() {
interp = getNewInterp();
}
public function run() {}
public function teardown() {}
public function execute(script:String):Dynamic {
var interp = clearPrevious ? getNewInterp() : this.interp;
var expr = Util.parse(headerCode + script + tailCode);
if(expr == null)
return "ERROR";
if (clearPrevious)
return interp.execute(expr);
else
return interp.exprReturn(expr);
}
}