fix: rethrow SyntaxException from compilation as EngineException
This commit is contained in:
parent
93c246ad97
commit
5359c54694
@ -8,17 +8,22 @@ import me.topchetoeu.jscript.compilation.CompileResult;
|
||||
import me.topchetoeu.jscript.compilation.JavaScript;
|
||||
import me.topchetoeu.jscript.runtime.debug.DebugContext;
|
||||
import me.topchetoeu.jscript.runtime.exceptions.EngineException;
|
||||
import me.topchetoeu.jscript.runtime.exceptions.SyntaxException;
|
||||
import me.topchetoeu.jscript.runtime.values.Value;
|
||||
import me.topchetoeu.jscript.runtime.values.functions.CodeFunction;
|
||||
|
||||
public interface Compiler {
|
||||
public static final Compiler DEFAULT = (env, filename, raw) -> {
|
||||
try {
|
||||
var res = JavaScript.compile(env, filename, raw);
|
||||
var body = res.body();
|
||||
DebugContext.get(env).onSource(filename, raw);
|
||||
registerFunc(env, body, res);
|
||||
|
||||
return body;
|
||||
}
|
||||
catch (SyntaxException e) {
|
||||
throw EngineException.ofSyntax(e.loc + ": " + e.msg);
|
||||
}
|
||||
};
|
||||
|
||||
public Key<Compiler> KEY = Key.of();
|
||||
|
Loading…
Reference in New Issue
Block a user