flutter_rust_bridge_for_generated library
This is only intended to be used by automatically generated code, instead of developers.
Classes
- BaseApi
- This is only intended to be used by automatically generated code, instead of developers.
-
BaseApiImpl<
W extends BaseWire> - This is only intended to be used by automatically generated code, instead of developers.
-
BaseEntrypoint<
A extends BaseApi, AI extends BaseApiImpl< BaseWire> , W extends BaseWire> -
This is the main entrypoint.
For example, users call
init
on it, and auto-generated code callapi
on it. - BaseHandler
- Generically handles a Dart-Rust call.
-
BaseTask<
S, E extends Object, WireSyncType> - Base class for various kinds of tasks.
- BaseWire
- This is only intended to be used by automatically generated code, instead of developers.
-
Box<
T> - This is only intended to be used by automatically generated code, instead of developers.
- ByteBuffer
- A sequence of bytes underlying a typed data object.
- ByteData
- A fixed-length, random-access sequence of bytes that also provides random and unaligned access to the fixed-width integers and floating point numbers represented by those bytes.
- BytesBuilder
- Builds a list of bytes, allowing bytes and lists of bytes to be added at the end.
-
CstCodec<
S, E extends Object> - This is only intended to be used by automatically generated code, instead of developers.
-
DcoCodec<
S, E extends Object> - This is only intended to be used by automatically generated code, instead of developers.
- Endian
- Endianness of number representation.
- ExternalLibrary
- This is only intended to be used by automatically generated code, instead of developers.
- ExternalLibraryLoaderConfig
-
Arguments of
loadExternalLibary
- Float32List
- A fixed-length list of IEEE 754 single-precision binary floating-point numbers that is viewable as a TypedData.
- Float32x4
- Float32x4 immutable value type and operations.
- Float32x4List
- A fixed-length list of Float32x4 numbers that is viewable as a TypedData.
- Float64List
- A fixed-length list of IEEE 754 double-precision binary floating-point numbers that is viewable as a TypedData.
- Float64x2
- Float64x2 immutable value type and operations.
- Float64x2List
- A fixed-length list of Float64x2 numbers that is viewable as a TypedData.
-
FutureOr<
T> -
A type representing values that are either
Future<T>
orT
. - Int16List
- A fixed-length list of 16-bit signed integers that is viewable as a TypedData.
- Int32List
- A fixed-length list of 32-bit signed integers that is viewable as a TypedData.
- Int32x4
- Int32x4 and operations.
- Int32x4List
- A fixed-length list of Int32x4 numbers that is viewable as a TypedData.
- Int64List
- A strict version of $data.Int64List which always returns a BigInt.
- Int8List
- A fixed-length list of 8-bit signed integers.
-
NormalTask<
S, E extends Object> - A task to call FFI function.
- PlatformInt64Util
- The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
- PlatformPointerUtil
- The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
-
RustArc<
T> -
The Rust
std::sync::Arc
on the Dart side. -
RustArcStaticData<
T> - Should have exactly one instance per type.
- RustOpaque
- An opaque pointer to a native arbitrary Rust type. TODO: link to the doc talking about "dispose"/GC semantics
- RustOpaqueInterface
- This is only intended to be used by automatically generated code, instead of developers.
-
RustStreamSink<
T> -
The Rust
StreamSink<T>
on the Dart side. -
SseCodec<
S, E extends Object> - This is only intended to be used by automatically generated code, instead of developers.
- SseDeserializer
- This is only intended to be used by automatically generated code, instead of developers.
- SseSerializer
- This is only intended to be used by automatically generated code, instead of developers.
-
SyncTask<
S, E extends Object, WireSyncType> - A task to call FFI function, but it is synchronous.
- TaskConstMeta
-
Metadata that does not change across different method calls. Thus it is made
const
to save memory and speed up - TypedData
- A typed view of a sequence of bytes.
-
TypedDataList<
E> - A TypedData fixed-length List-view on the bytes of buffer.
- Uint16List
- A fixed-length list of 16-bit unsigned integers that is viewable as a TypedData.
- Uint32List
- A fixed-length list of 32-bit unsigned integers that is viewable as a TypedData.
- Uint64List
- A strict version of $data.Uint64List which always returns a BigInt.
- Uint8ClampedList
- A fixed-length list of 8-bit unsigned integers.
- Uint8List
- A fixed-length list of 8-bit unsigned integers.
- WireSyncRust2DartSse
Mixins
- SimpleDisposable
- This is only intended to be used by automatically generated code, instead of developers.
Extensions
- ExtReadBuffer on ReadBuffer
- Extensions for ReadBuffer
- ExtWriteBuffer on WriteBuffer
- Extensions for WriteBuffer
Constants
- internal → const _Internal
- Used to annotate a declaration which should only be used from within the package in which it is declared, and which should not be exposed from said package's public API.
- protected → const _Protected
- Used to annotate an instance member in a class or mixin which is meant to be visible only within the declaring library, and to other instance members of the class or mixin, and their subtypes.
- sealed → const _Sealed
- Annotation marking a class as not allowed as a super-type outside of the current package.
Functions
-
dcoDecodeDuration(
int ts) → Duration - This is only intended to be used by automatically generated code, instead of developers.
-
dcoDecodeI64(
int raw) → int - This is only intended to be used by automatically generated code, instead of developers.
-
dcoDecodeInt64List(
Int64List raw) → Int64List - This is only intended to be used by automatically generated code, instead of developers.
-
dcoDecodePanicError(
dynamic raw) → PanicException - This is only intended to be used by automatically generated code, instead of developers.
-
dcoDecodeTimestamp(
{required int ts, required bool isUtc}) → DateTime - This is only intended to be used by automatically generated code, instead of developers.
-
dcoDecodeU64(
int raw) → BigInt - This is only intended to be used by automatically generated code, instead of developers.
-
dcoDecodeUint64List(
Uint64List raw) → Uint64List - This is only intended to be used by automatically generated code, instead of developers.
-
decodeDartOpaque(
dynamic raw, GeneralizedFrbRustBinding generalizedFrbRustBinding) → Object - This is only intended to be used by automatically generated code, instead of developers.
-
decodeDartOpaqueCommon(
dynamic raw, GeneralizedFrbRustBinding generalizedFrbRustBinding) → Object - This is only intended to be used by automatically generated code, instead of developers.
-
encodeDartOpaque(
Object raw, NativePortType dartHandlerPort, GeneralizedFrbRustBinding generalizedFrbRustBinding) → PlatformPointer - This is only intended to be used by automatically generated code, instead of developers.
-
encodeDartOpaqueCommon(
Object raw, NativePortType dartHandlerPort, GeneralizedFrbRustBinding generalizedFrbRustBinding) → PlatformPointer - The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
-
loadExternalLibrary(
ExternalLibraryLoaderConfig config) → FutureOr< ExternalLibrary> - Load the ExternalLibrary, with the following cases in mind:
-
maybeDartify(
Object? object) → Object? - The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
-
pdeCallFfi(
GeneralizedFrbRustBinding generalizedFrbRustBinding, SseSerializer serializer, {required int funcId, NativePortType? port}) → WireSyncRust2DartSse? - This is only intended to be used by automatically generated code, instead of developers.
-
sseDecodePanicError(
SseDeserializer deserializer) → PanicException - This is only intended to be used by automatically generated code, instead of developers.
-
sseEncodeCastedPrimitiveI64(
int raw) → int - This is only intended to be used by automatically generated code, instead of developers.
-
sseEncodeCastedPrimitiveU64(
int raw) → BigInt - This is only intended to be used by automatically generated code, instead of developers.
-
wireSyncRust2DartDcoIntoDart(
WireSyncRust2DartDco syncReturn) → List - Generates the dynamic Dart object from either an FFI struct or a JS value
-
wireSyncRust2DartSseAsUint8ListView(
WireSyncRust2DartSse raw) → Uint8List - The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
Typedefs
-
ApiImplConstructor<
A extends BaseApiImpl< BaseWire> , W extends BaseWire> = A Function({required GeneralizedFrbRustBinding generalizedFrbRustBinding, required BaseHandler handler, required PortManager portManager, required W wire}) - This is only intended to be used by automatically generated code, instead of developers.
-
CrossPlatformFinalizerArg
= Pointer<
NativeFinalizerFunction> - The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
-
DartPostCObject
= Pointer<
NativeFunction< Bool Function(Int64, Pointer< >Void> )> - This is only intended to be used by automatically generated code, instead of developers.
- NativePortType = int
- Abstraction over a Dart SendPort and a JS MessagePort.
- PlatformGeneralizedUint8List = RustVecU8
- The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
-
PlatformGeneralizedUint8ListPtr
= Pointer<
Uint8> - The code is used only internally and is not a public API. The comment exists mainly to satisfy the linter.
- PlatformInt64 = int
- This is only intended to be used by automatically generated code, instead of developers.
-
PlatformPointer
= Pointer<
Void> - This is only intended to be used by automatically generated code, instead of developers.
- RustArcDecrementStrongCountFnType = void Function(PlatformPointer)
-
The type of
RustArcStaticData._rustArcDecrementStrongCount
- RustArcIncrementStrongCountFnType = void Function(PlatformPointer)
-
The type of
RustArcStaticData._rustArcIncrementStrongCount
-
WireConstructor<
W> = W Function(ExternalLibrary externalLibrary) - This is only intended to be used by automatically generated code, instead of developers.
-
WireSyncRust2DartDco
= Pointer<
Dart_CObject>
Exceptions / Errors
- AnyhowException
-
The rust code returns
anyhow::Error
- FrbBacktracedException
- Interface indicating exceptions that have backtrace (stack trace)
- FrbException
- Base class for exceptions in flutter_rust_bridge
- PanicException
- The rust code is panicked
- PlatformMismatchException
- Platform is not matched
- UnmodifiableTypedListException
- Cannot modify a typed list