callFunction method

JsEvalResult callFunction(
  1. Pointer<NativeType> function,
  2. Pointer<NativeType> argument
)
override

Implementation

JsEvalResult callFunction(
  Pointer function,
  Pointer argument,
) {
  Pointer result = calloc<JSValueConst>();
  Pointer<Pointer<Utf8NullTerminated>> stringResult =
      calloc<Pointer<Utf8NullTerminated>>();
  int operationResult = _callJsFunction1Arg(
      _context,
      function as Pointer<JSValueConst>,
      argument as Pointer<JSValueConst>,
      result as Pointer<JSValueConst>,
      stringResult);
  String resultStr = Utf8NullTerminated.fromUtf8(stringResult.value);
  return JsEvalResult(
    resultStr,
    result,
    isError: operationResult == 0,
    isPromise: resultStr == '[object Promise]',
  );
}