Crate flutter_rust_bridge
source ·Re-exports
pub use handler::FfiCallMode;
pub use handler::Handler;
pub use handler::WrapInfo;
pub use rust2dart::StreamSink;
pub use ffi::*;
Modules
- Wrappers and executors for Rust functions.
- Manages receiving and sending values across the FFI boundary.
Macros
- Macro helper to instantiate an
RustOpaque<dyn Trait>
, as Rust does not support custom DSTs on stable. - Spawn a task using the internal thread pool. Interprets the parameters as a list of captured transferables to send to this thread.
- On WASM, [JsValue][wasm_bindgen::JsValue]s cannot be shared between scopes but instead can be “transferred”. Rust however is not aware of transferables and therefore cannot capture these values. This macro wraps a closure and returns a [TransferClosure][crate::ffi::TransferClosure] on WASM platforms which will capture these special values, or a normal FnOnce on other platforms. Note that the parameter names must match available variables/bindings from the outer scope.
Structs
- Use this struct in return type of your function, in order to tell the code generator the function should return synchronously. Otherwise, it is by default asynchronously.
Traits
- Marker trait for types that are safe to share with Dart and can be dropped safely in case of a panic.
Attribute Macros
- Attribute to guide code generation.