bridge library

Properties

bindingCallMethodDispatchTable List<BindingCallFunc>
getter/setter pair
dartContext DartContext
getter/setter pair
isEnabledLog bool
final

Functions

allocateNewBindingObject() Pointer<NativeBindingObject>
allocateNewMercuryIsolate(int targetContextId) → void
clearIsolateCommand(int contextId) → void
createScreen(double width, double height) Pointer<Void>
dispatchIsolateTask(int contextId, Pointer<Void> context, Pointer<Void> callback) → void
disposeMercuryIsolate(int contextId) → void
doubleToInt64(double value) int
doubleToUint64(double value) int
emitModuleEvent(int contextId, String moduleName, Event? event, dynamic extra) → dynamic
evaluateQuickjsByteCode(int contextId, Uint8List bytes) bool
evaluateScripts(int contextId, String code, {String? url, int line = 0}) Future<bool>
flushIsolateCommand(MercuryContextController context) → void
flushIsolateCommandWithContextId(int contextId) → void
freeNativeString(Pointer<NativeString> pointer) → void
fromNativeValue(MercuryContextController view, Pointer<NativeValue> nativeValue) → dynamic
getAllocatedMercuryIsolate(int contextId) Pointer<Void>?
getMercuryInfo() MercuryInfo
initBridge(MercuryContextController view) int
Init bridge
initDartDynamicLinking() → void
initDartIsolateContext(List<int> dartMethods) Pointer<Void>
invokeModule(Pointer<Void> callbackContext, MercuryController controller, String moduleName, String method, dynamic params, DartAsyncModuleCallback callback) → dynamic
invokeModuleEvent(int contextId, String moduleName, Event? event, dynamic extra) → dynamic
makeDartMethodsData() List<int>
makeNativeValueArguments(BindingObject ownerBindingObject, List args) Pointer<NativeValue>
nativeStringToString(Pointer<NativeString> pointer) String
newMercuryIsolateId() int
parseHTML(int contextId, String code) → void
readNativeIsolateCommandToDart(Pointer<Uint64> nativeCommandItems, int commandLength, int contextId) List<IsolateCommand>
registerDartContextFinalizer(DartContext dartContext) → void
registerPluginByteCode(Uint8List bytecode, String name) → void
stringToNativeString(String string) Pointer<NativeString>
toNativeValue(Pointer<NativeValue> target, dynamic value, [BindingObject? ownerBindingObject]) → void
uint16ToString(Pointer<Uint16> pointer, int length) String
uInt64ToDouble(int value) double

Typedefs

AnonymousNativeFunction = dynamic Function(List args)
AsyncAnonymousNativeFunction = Future Function(List args)
BindingCallFunc = dynamic Function(BindingObject bindingObject, List args)
DartAllocateNewMercuryIsolate = Pointer<Void> Function(Pointer<Void>, int)
DartAsyncAnonymousFunctionCallback = void Function(Pointer<Void> callbackContext, Pointer<NativeValue> nativeValue, int contextId, Pointer<Utf8> errmsg)
DartAsyncCallback = void Function(Pointer<Void> callbackContext, int contextId, Pointer<Utf8> errmsg)
DartAsyncModuleCallback = Pointer<NativeValue> Function(Pointer<Void> callbackContext, int contextId, Pointer<Utf8> errmsg, Pointer<NativeValue> ptr)
DartClearIsolateCommandItems = void Function(Pointer<Void>)
DartCreateBindingObject = void Function(int contextId, Pointer<NativeBindingObject> nativeBindingObject, int type, Pointer<NativeValue> args, int argc)
DartCreateScreen = Pointer<Void> Function(double, double)
DartDispatchEvent = int Function(int contextId, Pointer<NativeBindingObject> nativeBindingObject, Pointer<NativeString> eventType, Pointer<Void> nativeEvent, int isCustomEvent)
DartDispatchIsolateTask = void Function(int contextId, Pointer<Void> context, Pointer<Void> callback)
DartDisposeMercuryIsolate = void Function(Pointer<Void>, Pointer<Void> mercuryIsolate)
DartEvaluateQuickjsByteCode = int Function(Pointer<Void>, Pointer<Uint8> bytes, int byteLen)
DartEvaluateScripts = int Function(Pointer<Void>, Pointer<NativeString> code, Pointer<Pointer<Uint8>> parsedBytecodes, Pointer<Uint64> bytecodeLen, Pointer<Utf8> url, int startLine)
DartFlushIsolateCommand = void Function(int contextId)
DartGetIsolateCommandItems = Pointer<Uint64> Function(Pointer<Void>)
DartGetIsolateCommandItemSize = int Function(Pointer<Void>)
DartGetMercuryInfo = Pointer<NativeMercuryInfo> Function()
DartInitDartDynamicLinking = void Function(Pointer<Void> data)
DartInitDartIsolateContext = Pointer<Void> Function(Pointer<Uint64> dartMethods, int methodsLength)
DartInvokeBindingMethodsFromDart = void Function(Pointer<NativeBindingObject> binding_object, Pointer<NativeValue> return_value, Pointer<NativeValue> method, int argc, Pointer<NativeValue> argv, Object bindingDartObject)
DartInvokeEventListener = Pointer<NativeValue> Function(Pointer<Void>, Pointer<NativeString>, Pointer<Utf8> eventType, Pointer<Void> nativeEvent, Pointer<NativeValue>)
DartNewMercuryIsolateId = int Function()
DartParseHTML = void Function(Pointer<Void>, Pointer<Utf8> code, int length)
DartRAFAsyncCallback = void Function(Pointer<Void>, int contextId, double data, Pointer<Utf8> errmsg)
DartRegisterDartContextFinalizer = void Function(Object object, Pointer<Void> dart_context)
DartRegisterPluginByteCode = void Function(Pointer<Uint8> bytes, int length, Pointer<Utf8> pluginName)
InvokeBindingMethodsFromDart = Void Function(Pointer<NativeBindingObject> binding_object, Pointer<NativeValue> return_value, Pointer<NativeValue> method, Int32 argc, Pointer<NativeValue> argv, Handle bindingDartObject)
InvokeBindingsMethodsFromNative = Void Function(Int32 contextId, Pointer<NativeBindingObject> binding_object, Pointer<NativeValue> return_value, Pointer<NativeValue> method, Int32 argc, Pointer<NativeValue> argv)
NativeAllocateNewMercuryIsolate = Pointer<Void> Function(Pointer<Void>, Int32)
NativeAsyncAnonymousFunctionCallback = Void Function(Pointer<Void> callbackContext, Pointer<NativeValue> nativeValue, Int32 contextId, Pointer<Utf8> errmsg)
NativeAsyncCallback = Void Function(Pointer<Void> callbackContext, Int32 contextId, Pointer<Utf8> errmsg)
NativeAsyncModuleCallback = Pointer<NativeValue> Function(Pointer<Void> callbackContext, Int32 contextId, Pointer<Utf8> errmsg, Pointer<NativeValue> ptr)
NativeClearIsolateCommandItems = Void Function(Pointer<Void>)
NativeClearTimeout = Void Function(Int32 contextId, Int32)
NativeCreateBindingObject = Void Function(Int32 contextId, Pointer<NativeBindingObject> nativeBindingObject, Int32 type, Pointer<NativeValue> args, Int32 argc)
NativeCreateScreen = Pointer<Void> Function(Double, Double)
NativeDispatchIsolateTask = Void Function(Int32 contextId, Pointer<Void> context, Pointer<Void> callback)
NativeDisposeMercuryIsolate = Void Function(Pointer<Void>, Pointer<Void> mercuryIsolate)
NativeEvaluateQuickjsByteCode = Int8 Function(Pointer<Void>, Pointer<Uint8> bytes, Int32 byteLen)
NativeEvaluateScripts = Int8 Function(Pointer<Void>, Pointer<NativeString> code, Pointer<Pointer<Uint8>> parsedBytecodes, Pointer<Uint64> bytecodeLen, Pointer<Utf8> url, Int32 startLine)
NativeFlushIsolateCommand = Void Function(Int32 contextId)
NativeGetIsolateCommandItems = Pointer<Uint64> Function(Pointer<Void>)
NativeGetIsolateCommandItemSize = Int64 Function(Pointer<Void>)
NativeGetMercuryInfo = Pointer<NativeMercuryInfo> Function()
NativeInitDartDynamicLinking = Void Function(Pointer<Void> data)
NativeInitDartIsolateContext = Pointer<Void> Function(Pointer<Uint64> dartMethods, Int32 methodsLength)
NativeInvokeEventListener = Pointer<NativeValue> Function(Pointer<Void>, Pointer<NativeString>, Pointer<Utf8> eventType, Pointer<Void> nativeEvent, Pointer<NativeValue>)
NativeInvokeModule = Pointer<NativeValue> Function(Pointer<Void> callbackContext, Int32 contextId, Pointer<NativeString> module, Pointer<NativeString> method, Pointer<NativeValue> params, Pointer<NativeFunction<NativeAsyncModuleCallback>>)
NativeJSError = Void Function(Int32 contextId, Pointer<Utf8>)
NativeJSLog = Void Function(Int32 contextId, Int32 level, Pointer<Utf8>)
NativeNewMercuryIsolateId = Int64 Function()
NativeParseHTML = Void Function(Pointer<Void>, Pointer<Utf8> code, Int32 length)
NativeRAFAsyncCallback = Void Function(Pointer<Void> callbackContext, Int32 contextId, Double data, Pointer<Utf8> errmsg)
NativeRegisterDartContextFinalizer = Void Function(Handle object, Pointer<Void> dart_context)
NativeRegisterPluginByteCode = Void Function(Pointer<Uint8> bytes, Int32 length, Pointer<Utf8> pluginName)
NativeReloadApp = Void Function(Int32 contextId)
NativeSetInterval = Int32 Function(Pointer<Void> callbackContext, Int32 contextId, Pointer<NativeFunction<NativeAsyncCallback>>, Int32)
NativeSetTimeout = Int32 Function(Pointer<Void> callbackContext, Int32 contextId, Pointer<NativeFunction<NativeAsyncCallback>>, Int32)