quickjs/ffi
library
Properties
-
compileFn
→ Pointer<Uint8> Function(Pointer<JSContext>, Pointer<Char>, Pointer<Char>, Pointer<IntPtr>)
-
latefinal
-
evaluateBytecodeFn
→ Pointer<JSValue> Function(Pointer<JSContext>, int, Pointer<Uint8>)
-
latefinal
-
jsAllocBuffer
→ Pointer<Uint8> Function(int len)
-
uint8_t *jsAllocBuffer(size_t len)
final
-
jsAtomToValue
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, int val)
-
JSValue *jsAtomToValue(JSContext *ctx, JSAtom val)
final
-
jsBridgeStatsAllocBytes
→ int Function()
-
final
-
jsBridgeStatsAllocCalls
→ int Function()
-
final
-
jsBridgeStatsCopyBytes
→ int Function()
-
final
-
jsBridgeStatsCopyCalls
→ int Function()
-
final
-
jsBridgeStatsFreeCalls
→ int Function()
-
final
-
jsBridgeStatsMemcpyBytes
→ int Function()
-
final
-
jsBridgeStatsMemcpyCalls
→ int Function()
-
final
-
jsBridgeStatsOwnedTypedArrayCalls
→ int Function()
-
final
-
jsBridgeStatsRecordCopy
→ void Function(int)
-
final
-
jsBridgeStatsReset
→ void Function()
-
Native bridge operation counters used by diagnostic tests and profiling.
final
-
jsBridgeStatsTypedArrayDataCalls
→ int Function()
-
final
-
jsDefinePropertyValue
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> thisObj, int prop, Pointer<JSValue> val, int flag)
-
int jsDefinePropertyValue(JSContext *ctx, JSValueConst *this_obj,
JSAtom prop, JSValue *val, int flags)
final
-
jsDefinePropertyValueUint32
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> thisObj, int prop, Pointer<JSValue> val, int flag)
-
int jsDefinePropertyValueUint32(JSContext *ctx, JSValueConst *this_obj,
uint32_t idx, JSValue *val, int flags)
final
-
jsDupValue
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
JSValue *jsDupValue(JSContext *ctx, JSValueConst *v)
final
-
jsDupValueRT
→ Pointer<JSValue> Function(Pointer<JSRuntime> rt, Pointer<JSValue> val)
-
JSValue *jsDupValueRT(JSRuntime *rt, JSValue *v)
final
-
jsEXCEPTION
→ Pointer<JSValue> Function()
-
JSValue *jsEXCEPTION()
final
-
jsExecutePendingJob
→ int Function(Pointer<JSRuntime> ctx)
-
int jsExecutePendingJob(JSRuntime *rt)
final
-
jsFree
→ void Function(Pointer<JSContext> ctx, Pointer<JSPropertyEnum> ptab)
-
void jsFree(JSContext *ctx, void *ptab)
final
-
jsFreeAtom
→ void Function(Pointer<JSContext> ctx, int v)
-
void jsFreeAtom(JSContext *ctx, JSAtom v)
final
-
jsFreeContext
→ void Function(Pointer<JSContext>)
-
void jsFreeContext(JSContext *ctx)
final
-
jsFreeCString
→ void Function(Pointer<JSContext> ctx, Pointer<Utf8> val)
-
void jsFreeCString(JSContext *ctx, const char *ptr)
final
-
jsGetArrayBuffer
→ Pointer<Uint8> Function(Pointer<JSContext> ctx, Pointer<IntPtr> psize, Pointer<JSValue> val)
-
uint8_t *jsGetArrayBuffer(JSContext *ctx, size_t *psize, JSValueConst *obj)
final
-
jsGetException
→ Pointer<JSValue> Function(Pointer<JSContext> ctx)
-
JSValue *jsGetException(JSContext *ctx)
final
-
jsGetObjectOpaque
→ int Function(Pointer<JSValue> obj, int classid)
-
DLLEXPORT void *jsGetObjectOpaque(JSValue *obj, uint32_t classid)
final
-
jsGetOwnPropertyNames
→ int Function(Pointer<JSContext> ctx, Pointer<Pointer<JSPropertyEnum>> ptab, Pointer<Uint32> plen, Pointer<JSValue> obj, int flags)
-
int jsGetOwnPropertyNames(JSContext *ctx, JSPropertyEnum **ptab,
uint32_t *plen, JSValueConst *obj, int flags)
final
-
jsGetProperty
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<JSValue> thisObj, int prop)
-
JSValue *jsGetProperty(JSContext *ctx, JSValueConst *this_obj,
JSAtom prop)
final
-
jsGetPropertyUint32
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<JSValue> thisObj, int prop)
-
JSValue *jsGetPropertyUint32(JSContext *ctx, JSValueConst *this_obj, uint32_t idx)
final
-
jsGetRuntime
→ Pointer<JSRuntime> Function(Pointer<JSContext>)
-
JSRuntime *jsGetRuntime(JSContext *ctx)
final
-
jsGetTypedArrayData
→ Pointer<Uint8> Function(Pointer<JSContext> ctx, Pointer<JSValue> val, Pointer<IntPtr> plength, Pointer<Int32> ptype)
-
uint8_t *jsGetTypedArrayData(JSContext *ctx, JSValueConst *val, size_t *plength, int32_t *ptype)
final
-
jsIsArray
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
int32_t jsIsArray(JSContext *ctx, JSValueConst *val)
final
-
jsIsError
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
DLLEXPORT int32_t jsIsError(JSContext *ctx, JSValueConst *val);
final
-
jsIsException
→ int Function(Pointer<JSValue> val)
-
int jsIsException(JSValueConst *val)
final
-
jsIsFunction
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
int32_t jsIsFunction(JSContext *ctx, JSValueConst *val)
final
-
jsIsJobPending
→ int Function(Pointer<JSRuntime> ctx)
-
DLLEXPORT int32_t jsIsJobPending(JSRuntime *rt)
final
-
jsIsPromise
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
int32_t jsIsPromise(JSContext *ctx, JSValueConst *val)
final
-
jsMemcpy
→ void Function(Pointer<Uint8>, Pointer<Uint8>, int)
-
void jsMemcpy(uint8_t *dst, const uint8_t *src, size_t len)
final
-
jsNewArray
→ Pointer<JSValue> Function(Pointer<JSContext> ctx)
-
JSValue *jsNewArray(JSContext *ctx)
final
-
jsNewArrayBufferCopy
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<Uint8> buf, int len)
-
JSValue *jsNewArrayBufferCopy(JSContext *ctx, const uint8_t *buf, size_t len)
final
-
jsNewArrayBufferOwned
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<Uint8> buf, int len)
-
JSValue *jsNewArrayBufferOwned(JSContext *ctx, uint8_t *buf, size_t len)
final
-
jsNewBigInt64
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, int val)
-
JSValue *jsNewBigInt64(JSContext *ctx, int64_t v)
final
-
jsNewBool
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, int val)
-
JSValue *jsNewBool(JSContext *ctx, int val)
final
-
jsNewCFunction
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
JSValue *jsNewCFunction(JSContext *ctx, JSValue *funcData)
final
-
jsNewError
→ Pointer<JSValue> Function(Pointer<JSContext> ctx)
-
DLLEXPORT JSValue *jsNewError(JSContext *ctx);
final
-
jsNewFloat64
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, double val)
-
JSValue *jsNewFloat64(JSContext *ctx, double val)
final
-
jsNewInt64
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, int val)
-
JSValue *jsNewInt64(JSContext *ctx, int64_t val)
final
-
jsNewObject
→ Pointer<JSValue> Function(Pointer<JSContext> ctx)
-
JSValue *jsNewObject(JSContext *ctx)
final
-
jsNewObjectClass
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, int classId, int opaque)
-
DLLEXPORT JSValue *jsNewObjectClass(JSContext *ctx, uint32_t QJSClassId, void *opaque)
final
-
jsNewPromiseCapability
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
JSValue *jsNewPromiseCapability(JSContext *ctx, JSValue *resolving_funcs)
final
-
jsNewTypedArray
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<Uint8> buf, int len, int type)
-
JSValue *jsNewTypedArray(JSContext *ctx, const uint8_t *buf, size_t len, int32_t type)
final
-
jsNewTypedArrayOwned
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<Uint8> buf, int len, int type)
-
JSValue *jsNewTypedArrayOwned(JSContext *ctx, uint8_t *buf, size_t len, int32_t type)
final
-
jsPropertyEnumGetAtom
→ int Function(Pointer<JSPropertyEnum> ptab, int i)
-
JSAtom jsPropertyEnumGetAtom(JSPropertyEnum *ptab, int i)
final
-
jsRunGC
→ void Function(Pointer<JSRuntime>)
-
DLLEXPORT void jsRunGC(JSRuntime *rt)
final
-
jsSetMaxStackSize
→ void Function(Pointer<JSRuntime>, int)
-
DLLEXPORT void jsSetMaxStackSize(JSRuntime *rt, size_t stack_size)
final
-
jsSetMemoryLimit
→ void Function(Pointer<JSRuntime>, int)
-
DLLEXPORT void jsSetMemoryLimit(JSRuntime *rt, size_t limit);
final
-
jsTagIsFloat64
→ int Function(int val)
-
DLLEXPORT bool jsTagIsFloat64(int32_t tag)
final
-
jsThrow
→ Pointer<JSValue> Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
DLLEXPORT JSValue *jsThrow(JSContext *ctx, JSValue *obj)
final
-
jsToBool
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
int32_t jsToBool(JSContext *ctx, JSValueConst *val)
final
-
jsToFloat64
→ double Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
double jsToFloat64(JSContext *ctx, JSValueConst *val)
final
-
jsToInt64
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
int64_t jsToFloat64(JSContext *ctx, JSValueConst *val)
final
-
jsUNDEFINED
→ Pointer<JSValue> Function()
-
JSValue *jsUNDEFINED()
final
-
jsValueGetPtr
→ int Function(Pointer<JSValue> val)
-
void *jsValueGetPtr(JSValue *val)
final
-
jsValueGetTag
→ int Function(Pointer<JSValue> val)
-
DLLEXPORT int32_t jsValueGetTag(JSValue *val)
final
-
jsValueToAtom
→ int Function(Pointer<JSContext> ctx, Pointer<JSValue> val)
-
JSAtom jsValueToAtom(JSContext *ctx, JSValueConst *val)
final
-
runtimeOpaques
→ Map<Pointer<JSRuntime>, _RuntimeOpaque>
-
final
-
setJSValueList
→ void Function(Pointer<JSValue> list, int i, Pointer<JSValue> val)
-
void setJSValueList(JSValue *list, int i, JSValue *val)
final
-
sizeOfJSValue
→ int
-
final
Functions
-
channelDispacher(Pointer<JSContext> ctx, int type, Pointer<JSValue> argv)
→ Pointer<JSValue>
-
-
jsCall(Pointer<JSContext> ctx, Pointer<JSValue> funcObj, Pointer<JSValue> thisObj, List<Pointer<JSValue>> argv)
→ Pointer<JSValue>
-
-
jsComputeMemoryUsage(Pointer<JSRuntime> rt)
→ JsMemoryUsage
-
-
jsEval(Pointer<JSContext> ctx, String input, String filename, int evalFlags)
→ Pointer<JSValue>
-
-
jsFreeRuntime(Pointer<JSRuntime> rt)
→ void
-
-
jsFreeValue(Pointer<JSContext> ctx, Pointer<JSValue> val, {bool free = true})
→ void
-
-
jsFreeValueRT(Pointer<JSRuntime> rt, Pointer<JSValue> val, {bool free = true})
→ void
-
-
jsNewClass(Pointer<JSContext> ctx, String name)
→ int
-
-
jsNewContext(Pointer<JSRuntime> rt)
→ Pointer<JSContext>
-
-
jsNewRuntime(_JSChannel callback, int timeout, ReceivePort port, {int? memoryLimit})
→ Pointer<JSRuntime>
-
-
jsNewString(Pointer<JSContext> ctx, String str)
→ Pointer<JSValue>
-
-
jsReleaseRuntimeRefs(Pointer<JSRuntime> rt, Pointer<JSContext> ctx)
→ String?
-
Release Dart-side references while
ctx is still valid.
-
jsRuntimeReferenceCount(Pointer<JSRuntime> rt)
→ int
-
-
jsToCString(Pointer<JSContext> ctx, Pointer<JSValue> val)
→ String
-
-
readBridgeStats()
→ Map<String, int>
-