NativeSymbols class final

Where the functions of a loaded offline_first_core live.

Why addresses and not a library path: the library that bundles the binary (flutter_local_db, dart_db) resolves it through its own build hook, with @Native bindings; it hands their addresses here (Native.addressOf), so db_dsl never loads a binary itself.

Constructors

NativeSymbols({required Pointer<NativeFunction<OfcOpen>> open, required Pointer<NativeFunction<OfcExecute>> execute, required Pointer<NativeFunction<OfcFreeString>> freeString, required Pointer<NativeFunction<OfcHandleCall>> close, KeyValueSymbols? keyValue})
The query API symbols, plus keyValue when the library also exposes the key-value API.
const

Properties

addresses → List<int>
The addresses as plain integers, the form that crosses to the worker isolate.
no setter
close → Pointer<NativeFunction<OfcHandleCall>>
close_database.
final
execute → Pointer<NativeFunction<OfcExecute>>
ofc_execute.
final
freeString → Pointer<NativeFunction<OfcFreeString>>
ofc_free_string.
final
hashCode → int
The hash code for this object.
no setterinherited
keyValue → KeyValueSymbols?
The key-value API (the 0.5 C ABI kept by offline_first_core).
final
open → Pointer<NativeFunction<OfcOpen>>
ofc_open.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

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