evaluate method
Evaluate js script.
Implementation
JsEvalResult evaluate(
String command, {
String? name,
int? evalFlags,
String? sourceUrl,
}) {
_ensureEngine();
final ctx = _ctx!;
final jsval = jsEval(
ctx,
command,
name ?? '<eval>',
evalFlags ?? JSEvalFlag.GLOBAL,
);
if (jsIsException(jsval) != 0) {
jsFreeValue(ctx, jsval);
JSError exception = _parseJSException(ctx);
return JsEvalResult(exception.toString(), exception, isError: true);
}
final result = _jsToDart(ctx, jsval);
jsFreeValue(ctx, jsval);
return JsEvalResult(result?.toString() ?? "null", result);
}