25 lines
429 B
JavaScript
25 lines
429 B
JavaScript
let __mainContext;
|
|
|
|
class CodeRunner {
|
|
constructor(options) {
|
|
this.plugins = options.plugins;
|
|
this.logger = options.logger;
|
|
this.events = options.events;
|
|
}
|
|
|
|
registerVar(varName, code) {
|
|
__mainContext[varName] = code;
|
|
}
|
|
|
|
doEval(code) {
|
|
try {
|
|
// TODO: add trace log here
|
|
return eval(code);
|
|
} catch(e) {
|
|
throw new Error(e + "\n" + code);
|
|
}
|
|
}
|
|
}
|
|
|
|
module.exports = CodeRunner;
|