QuickJsFFI class final

QuickJS FFI 底层绑定类

Constructors

QuickJsFFI(DynamicLibrary _lib)

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

callFunction(Pointer<Void> ctxHandle, Pointer<QjsResult> obj, List args) → dynamic
contextIncref(Pointer<Void> ctxHandle) → void
createContext(Pointer<Void> rtHandle) Pointer<Void>
createRuntime() Pointer<Void>
destroyContext(Pointer<Void> ctxHandle) → void
destroyRuntime(Pointer<Void> h) → void
eval(Pointer<Void> ctxHandle, String code) → dynamic
evalWithBinary(Pointer<Void> ctxHandle, Uint8List bytecode) → dynamic
freeObject(Pointer<Void> ctxHandle, Pointer<QjsResult> obj) → void
freeQjsResult(Pointer<QjsResult> p) → void
freeValue(Pointer<Void> ctxHandle, Pointer<QjsResult> obj) → void
getGlobalObject(Pointer<Void> ctxHandle) Pointer<QjsResult>
getProperty(Pointer<Void> ctxHandle, Pointer<QjsResult> obj, String prop) Pointer<QjsResult>
initDefaultBindings(Pointer<Void> ctxHandle) → void
invokeMethod(Pointer<Void> ctxHandle, Pointer<QjsResult> obj, String name, List args) → dynamic
newFunction(Pointer<Void> ctxHandle, String name, Pointer<NativeFunction<NativeAsyncTypedCallHandler>> cb) Pointer<QjsResult>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
runJobs(Pointer<Void> rtHandle, Pointer<Void> ctxHandle) int
setEnableIterativeFallback(bool enable) → void
setMaxStackSize(Pointer<Void> h, int stackSize) → void
setOnEnqueueJob(Pointer<Void> rt, Pointer<NativeFunction<Void Function(Pointer<Void>)>> func) → void
setProperty(Pointer<Void> ctxHandle, Pointer<QjsResult> obj, String prop, Pointer<QjsResult> val) → void
setUseBinaryProtocol(bool use) → void
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

globalInstance QuickJsFFI?
getter/setter pair

Static Methods

convertQjsResultToDart(QjsResult res) → dynamic
将 FFI 的 QjsResult 转换为 Dart 对象
load() DynamicLibrary
加载动态库 (自动处理平台差异)
writeOut(Pointer<QjsResult> out, Object? v) → void
将 Dart 对象写入 QjsResult (准备传给 C 侧)