Generate Dart/Flutter bindings

This commit is contained in:
Erdem Yerebasmaz
2024-05-03 13:43:07 +03:00
parent efe3492be0
commit fc85f4f488
8 changed files with 1364 additions and 327 deletions

View File

@@ -54,6 +54,20 @@ impl CstDecode<String> for *mut wire_cst_list_prim_u_8_strict {
String::from_utf8(vec).unwrap()
}
}
impl CstDecode<crate::model::ConnectRequest> for *mut wire_cst_connect_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::ConnectRequest {
let wrap = unsafe { flutter_rust_bridge::for_generated::box_from_leak_ptr(self) };
CstDecode::<crate::model::ConnectRequest>::cst_decode(*wrap).into()
}
}
impl CstDecode<crate::model::GetInfoRequest> for *mut wire_cst_get_info_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::GetInfoRequest {
let wrap = unsafe { flutter_rust_bridge::for_generated::box_from_leak_ptr(self) };
CstDecode::<crate::model::GetInfoRequest>::cst_decode(*wrap).into()
}
}
impl CstDecode<crate::model::PrepareReceiveRequest> for *mut wire_cst_prepare_receive_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::PrepareReceiveRequest {
@@ -68,6 +82,13 @@ impl CstDecode<crate::model::PrepareReceiveResponse> for *mut wire_cst_prepare_r
CstDecode::<crate::model::PrepareReceiveResponse>::cst_decode(*wrap).into()
}
}
impl CstDecode<crate::model::PrepareSendRequest> for *mut wire_cst_prepare_send_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::PrepareSendRequest {
let wrap = unsafe { flutter_rust_bridge::for_generated::box_from_leak_ptr(self) };
CstDecode::<crate::model::PrepareSendRequest>::cst_decode(*wrap).into()
}
}
impl CstDecode<crate::model::PrepareSendResponse> for *mut wire_cst_prepare_send_response {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::PrepareSendResponse {
@@ -75,6 +96,13 @@ impl CstDecode<crate::model::PrepareSendResponse> for *mut wire_cst_prepare_send
CstDecode::<crate::model::PrepareSendResponse>::cst_decode(*wrap).into()
}
}
impl CstDecode<crate::model::RestoreRequest> for *mut wire_cst_restore_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::RestoreRequest {
let wrap = unsafe { flutter_rust_bridge::for_generated::box_from_leak_ptr(self) };
CstDecode::<crate::model::RestoreRequest>::cst_decode(*wrap).into()
}
}
impl CstDecode<u32> for *mut u32 {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> u32 {
@@ -87,6 +115,33 @@ impl CstDecode<u64> for *mut u64 {
unsafe { *flutter_rust_bridge::for_generated::box_from_leak_ptr(self) }
}
}
impl CstDecode<crate::model::ConnectRequest> for wire_cst_connect_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::ConnectRequest {
crate::model::ConnectRequest {
mnemonic: self.mnemonic.cst_decode(),
data_dir: self.data_dir.cst_decode(),
network: self.network.cst_decode(),
}
}
}
impl CstDecode<crate::model::GetInfoRequest> for wire_cst_get_info_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::GetInfoRequest {
crate::model::GetInfoRequest {
with_scan: self.with_scan.cst_decode(),
}
}
}
impl CstDecode<crate::model::GetInfoResponse> for wire_cst_get_info_response {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::GetInfoResponse {
crate::model::GetInfoResponse {
balance_sat: self.balance_sat.cst_decode(),
pubkey: self.pubkey.cst_decode(),
}
}
}
impl CstDecode<Vec<crate::model::Payment>> for *mut wire_cst_list_payment {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> Vec<crate::model::Payment> {
@@ -162,7 +217,6 @@ impl CstDecode<crate::model::PrepareReceiveRequest> for wire_cst_prepare_receive
fn cst_decode(self) -> crate::model::PrepareReceiveRequest {
crate::model::PrepareReceiveRequest {
payer_amount_sat: self.payer_amount_sat.cst_decode(),
receiver_amount_sat: self.receiver_amount_sat.cst_decode(),
}
}
}
@@ -176,6 +230,14 @@ impl CstDecode<crate::model::PrepareReceiveResponse> for wire_cst_prepare_receiv
}
}
}
impl CstDecode<crate::model::PrepareSendRequest> for wire_cst_prepare_send_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::PrepareSendRequest {
crate::model::PrepareSendRequest {
invoice: self.invoice.cst_decode(),
}
}
}
impl CstDecode<crate::model::PrepareSendResponse> for wire_cst_prepare_send_response {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::PrepareSendResponse {
@@ -198,6 +260,14 @@ impl CstDecode<crate::model::ReceivePaymentResponse> for wire_cst_receive_paymen
}
}
}
impl CstDecode<crate::model::RestoreRequest> for wire_cst_restore_request {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::RestoreRequest {
crate::model::RestoreRequest {
backup_path: self.backup_path.cst_decode(),
}
}
}
impl CstDecode<crate::model::SendPaymentResponse> for wire_cst_send_payment_response {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::SendPaymentResponse {
@@ -206,15 +276,45 @@ impl CstDecode<crate::model::SendPaymentResponse> for wire_cst_send_payment_resp
}
}
}
impl CstDecode<crate::model::WalletInfo> for wire_cst_wallet_info {
// Codec=Cst (C-struct based), see doc to use other codecs
fn cst_decode(self) -> crate::model::WalletInfo {
crate::model::WalletInfo {
balance_sat: self.balance_sat.cst_decode(),
pubkey: self.pubkey.cst_decode(),
impl NewWithNullPtr for wire_cst_connect_request {
fn new_with_null_ptr() -> Self {
Self {
mnemonic: core::ptr::null_mut(),
data_dir: core::ptr::null_mut(),
network: Default::default(),
}
}
}
impl Default for wire_cst_connect_request {
fn default() -> Self {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_get_info_request {
fn new_with_null_ptr() -> Self {
Self {
with_scan: Default::default(),
}
}
}
impl Default for wire_cst_get_info_request {
fn default() -> Self {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_get_info_response {
fn new_with_null_ptr() -> Self {
Self {
balance_sat: Default::default(),
pubkey: core::ptr::null_mut(),
}
}
}
impl Default for wire_cst_get_info_response {
fn default() -> Self {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_payment {
fn new_with_null_ptr() -> Self {
Self {
@@ -248,8 +348,7 @@ impl Default for wire_cst_payment_error {
impl NewWithNullPtr for wire_cst_prepare_receive_request {
fn new_with_null_ptr() -> Self {
Self {
payer_amount_sat: core::ptr::null_mut(),
receiver_amount_sat: core::ptr::null_mut(),
payer_amount_sat: Default::default(),
}
}
}
@@ -272,6 +371,18 @@ impl Default for wire_cst_prepare_receive_response {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_prepare_send_request {
fn new_with_null_ptr() -> Self {
Self {
invoice: core::ptr::null_mut(),
}
}
}
impl Default for wire_cst_prepare_send_request {
fn default() -> Self {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_prepare_send_response {
fn new_with_null_ptr() -> Self {
Self {
@@ -302,6 +413,18 @@ impl Default for wire_cst_receive_payment_response {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_restore_request {
fn new_with_null_ptr() -> Self {
Self {
backup_path: core::ptr::null_mut(),
}
}
}
impl Default for wire_cst_restore_request {
fn default() -> Self {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_send_payment_response {
fn new_with_null_ptr() -> Self {
Self {
@@ -314,19 +437,6 @@ impl Default for wire_cst_send_payment_response {
Self::new_with_null_ptr()
}
}
impl NewWithNullPtr for wire_cst_wallet_info {
fn new_with_null_ptr() -> Self {
Self {
balance_sat: Default::default(),
pubkey: core::ptr::null_mut(),
}
}
}
impl Default for wire_cst_wallet_info {
fn default() -> Self {
Self::new_with_null_ptr()
}
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_wire_backup(port_: i64) {
@@ -334,13 +444,8 @@ pub extern "C" fn frbgen_breez_liquid_wire_backup(port_: i64) {
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_wire_connect(
port_: i64,
mnemonic: *mut wire_cst_list_prim_u_8_strict,
data_dir: *mut wire_cst_list_prim_u_8_strict,
network: i32,
) {
wire_connect_impl(port_, mnemonic, data_dir, network)
pub extern "C" fn frbgen_breez_liquid_wire_connect(port_: i64, req: *mut wire_cst_connect_request) {
wire_connect_impl(port_, req)
}
#[no_mangle]
@@ -349,8 +454,11 @@ pub extern "C" fn frbgen_breez_liquid_wire_empty_wallet_cache(port_: i64) {
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_wire_get_info(port_: i64, with_scan: bool) {
wire_get_info_impl(port_, with_scan)
pub extern "C" fn frbgen_breez_liquid_wire_get_info(
port_: i64,
req: *mut wire_cst_get_info_request,
) {
wire_get_info_impl(port_, req)
}
#[no_mangle]
@@ -373,9 +481,9 @@ pub extern "C" fn frbgen_breez_liquid_wire_prepare_receive_payment(
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_wire_prepare_send_payment(
port_: i64,
invoice: *mut wire_cst_list_prim_u_8_strict,
req: *mut wire_cst_prepare_send_request,
) {
wire_prepare_send_payment_impl(port_, invoice)
wire_prepare_send_payment_impl(port_, req)
}
#[no_mangle]
@@ -392,11 +500,8 @@ pub extern "C" fn frbgen_breez_liquid_wire_recover_funds(port_: i64, recovery: u
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_wire_restore(
port_: i64,
backup_path: *mut wire_cst_list_prim_u_8_strict,
) {
wire_restore_impl(port_, backup_path)
pub extern "C" fn frbgen_breez_liquid_wire_restore(port_: i64, req: *mut wire_cst_restore_request) {
wire_restore_impl(port_, req)
}
#[no_mangle]
@@ -425,6 +530,22 @@ pub extern "C" fn frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque
}
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_connect_request(
) -> *mut wire_cst_connect_request {
flutter_rust_bridge::for_generated::new_leak_box_ptr(
wire_cst_connect_request::new_with_null_ptr(),
)
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_get_info_request(
) -> *mut wire_cst_get_info_request {
flutter_rust_bridge::for_generated::new_leak_box_ptr(
wire_cst_get_info_request::new_with_null_ptr(),
)
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_request(
) -> *mut wire_cst_prepare_receive_request {
@@ -441,6 +562,14 @@ pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_respon
)
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request(
) -> *mut wire_cst_prepare_send_request {
flutter_rust_bridge::for_generated::new_leak_box_ptr(
wire_cst_prepare_send_request::new_with_null_ptr(),
)
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_response(
) -> *mut wire_cst_prepare_send_response {
@@ -449,6 +578,14 @@ pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_response(
)
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_restore_request(
) -> *mut wire_cst_restore_request {
flutter_rust_bridge::for_generated::new_leak_box_ptr(
wire_cst_restore_request::new_with_null_ptr(),
)
}
#[no_mangle]
pub extern "C" fn frbgen_breez_liquid_cst_new_box_autoadd_u_32(value: u32) -> *mut u32 {
flutter_rust_bridge::for_generated::new_leak_box_ptr(value)
@@ -482,6 +619,24 @@ pub extern "C" fn frbgen_breez_liquid_cst_new_list_prim_u_8_strict(
flutter_rust_bridge::for_generated::new_leak_box_ptr(ans)
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_connect_request {
mnemonic: *mut wire_cst_list_prim_u_8_strict,
data_dir: *mut wire_cst_list_prim_u_8_strict,
network: i32,
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_get_info_request {
with_scan: bool,
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_get_info_response {
balance_sat: u64,
pubkey: *mut wire_cst_list_prim_u_8_strict,
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_list_payment {
@@ -542,8 +697,7 @@ pub struct wire_cst_PaymentError_SignerError {
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_prepare_receive_request {
payer_amount_sat: *mut u64,
receiver_amount_sat: *mut u64,
payer_amount_sat: u64,
}
#[repr(C)]
#[derive(Clone, Copy)]
@@ -554,6 +708,11 @@ pub struct wire_cst_prepare_receive_response {
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_prepare_send_request {
invoice: *mut wire_cst_list_prim_u_8_strict,
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_prepare_send_response {
id: *mut wire_cst_list_prim_u_8_strict,
payer_amount_sat: u64,
@@ -570,12 +729,11 @@ pub struct wire_cst_receive_payment_response {
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_send_payment_response {
txid: *mut wire_cst_list_prim_u_8_strict,
pub struct wire_cst_restore_request {
backup_path: *mut wire_cst_list_prim_u_8_strict,
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct wire_cst_wallet_info {
balance_sat: u64,
pubkey: *mut wire_cst_list_prim_u_8_strict,
pub struct wire_cst_send_payment_response {
txid: *mut wire_cst_list_prim_u_8_strict,
}

View File

@@ -52,9 +52,7 @@ fn wire_backup_impl(port_: flutter_rust_bridge::for_generated::MessagePort) {
}
fn wire_connect_impl(
port_: flutter_rust_bridge::for_generated::MessagePort,
mnemonic: impl CstDecode<String>,
data_dir: impl CstDecode<Option<String>>,
network: impl CstDecode<crate::model::Network>,
req: impl CstDecode<crate::model::ConnectRequest>,
) {
FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::DcoCodec, _, _>(
flutter_rust_bridge::for_generated::TaskInfo {
@@ -63,14 +61,8 @@ fn wire_connect_impl(
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
},
move || {
let api_mnemonic = mnemonic.cst_decode();
let api_data_dir = data_dir.cst_decode();
let api_network = network.cst_decode();
move |context| {
transform_result_dco((move || {
crate::bindings::connect(api_mnemonic, api_data_dir, api_network)
})())
}
let api_req = req.cst_decode();
move |context| transform_result_dco((move || crate::bindings::connect(api_req))())
},
)
}
@@ -88,13 +80,19 @@ fn wire_empty_wallet_cache_impl(port_: flutter_rust_bridge::for_generated::Messa
}
fn wire_get_info_impl(
port_: flutter_rust_bridge::for_generated::MessagePort,
with_scan: impl CstDecode<bool>,
req: impl CstDecode<crate::model::GetInfoRequest>,
) {
FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::DcoCodec,_,_>(flutter_rust_bridge::for_generated::TaskInfo{ debug_name: "get_info", port: Some(port_), mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal }, move || { let api_with_scan = with_scan.cst_decode(); move |context| {
transform_result_dco((move || {
crate::bindings::get_info(api_with_scan)
})())
} })
FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::DcoCodec, _, _>(
flutter_rust_bridge::for_generated::TaskInfo {
debug_name: "get_info",
port: Some(port_),
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
},
move || {
let api_req = req.cst_decode();
move |context| transform_result_dco((move || crate::bindings::get_info(api_req))())
},
)
}
fn wire_list_payments_impl(
port_: flutter_rust_bridge::for_generated::MessagePort,
@@ -138,7 +136,7 @@ fn wire_prepare_receive_payment_impl(
}
fn wire_prepare_send_payment_impl(
port_: flutter_rust_bridge::for_generated::MessagePort,
invoice: impl CstDecode<String>,
req: impl CstDecode<crate::model::PrepareSendRequest>,
) {
FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::DcoCodec, _, _>(
flutter_rust_bridge::for_generated::TaskInfo {
@@ -147,9 +145,9 @@ fn wire_prepare_send_payment_impl(
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
},
move || {
let api_invoice = invoice.cst_decode();
let api_req = req.cst_decode();
move |context| {
transform_result_dco((move || crate::bindings::prepare_send_payment(api_invoice))())
transform_result_dco((move || crate::bindings::prepare_send_payment(api_req))())
}
},
)
@@ -192,7 +190,7 @@ fn wire_recover_funds_impl(
}
fn wire_restore_impl(
port_: flutter_rust_bridge::for_generated::MessagePort,
backup_path: impl CstDecode<Option<String>>,
req: impl CstDecode<crate::model::RestoreRequest>,
) {
FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::DcoCodec, _, _>(
flutter_rust_bridge::for_generated::TaskInfo {
@@ -201,10 +199,8 @@ fn wire_restore_impl(
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
},
move || {
let api_backup_path = backup_path.cst_decode();
move |context| {
transform_result_dco((move || crate::bindings::restore(api_backup_path))())
}
let api_req = req.cst_decode();
move |context| transform_result_dco((move || crate::bindings::restore(api_req))())
},
)
}
@@ -327,6 +323,42 @@ impl SseDecode for bool {
}
}
impl SseDecode for crate::model::ConnectRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_mnemonic = <String>::sse_decode(deserializer);
let mut var_dataDir = <Option<String>>::sse_decode(deserializer);
let mut var_network = <crate::model::Network>::sse_decode(deserializer);
return crate::model::ConnectRequest {
mnemonic: var_mnemonic,
data_dir: var_dataDir,
network: var_network,
};
}
}
impl SseDecode for crate::model::GetInfoRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_withScan = <bool>::sse_decode(deserializer);
return crate::model::GetInfoRequest {
with_scan: var_withScan,
};
}
}
impl SseDecode for crate::model::GetInfoResponse {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_balanceSat = <u64>::sse_decode(deserializer);
let mut var_pubkey = <String>::sse_decode(deserializer);
return crate::model::GetInfoResponse {
balance_sat: var_balanceSat,
pubkey: var_pubkey,
};
}
}
impl SseDecode for i32 {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
@@ -486,11 +518,9 @@ impl SseDecode for crate::model::PaymentType {
impl SseDecode for crate::model::PrepareReceiveRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_payerAmountSat = <Option<u64>>::sse_decode(deserializer);
let mut var_receiverAmountSat = <Option<u64>>::sse_decode(deserializer);
let mut var_payerAmountSat = <u64>::sse_decode(deserializer);
return crate::model::PrepareReceiveRequest {
payer_amount_sat: var_payerAmountSat,
receiver_amount_sat: var_receiverAmountSat,
};
}
}
@@ -509,6 +539,16 @@ impl SseDecode for crate::model::PrepareReceiveResponse {
}
}
impl SseDecode for crate::model::PrepareSendRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_invoice = <String>::sse_decode(deserializer);
return crate::model::PrepareSendRequest {
invoice: var_invoice,
};
}
}
impl SseDecode for crate::model::PrepareSendResponse {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
@@ -541,6 +581,16 @@ impl SseDecode for crate::model::ReceivePaymentResponse {
}
}
impl SseDecode for crate::model::RestoreRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_backupPath = <Option<String>>::sse_decode(deserializer);
return crate::model::RestoreRequest {
backup_path: var_backupPath,
};
}
}
impl SseDecode for crate::model::SendPaymentResponse {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
@@ -582,18 +632,6 @@ impl SseDecode for usize {
}
}
impl SseDecode for crate::model::WalletInfo {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
let mut var_balanceSat = <u64>::sse_decode(deserializer);
let mut var_pubkey = <String>::sse_decode(deserializer);
return crate::model::WalletInfo {
balance_sat: var_balanceSat,
pubkey: var_pubkey,
};
}
}
fn pde_ffi_dispatcher_primary_impl(
func_id: i32,
port: flutter_rust_bridge::for_generated::MessagePort,
@@ -639,6 +677,57 @@ impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<LBtcReverseRecovery>> for LBtc
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::ConnectRequest {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[
self.mnemonic.into_into_dart().into_dart(),
self.data_dir.into_into_dart().into_dart(),
self.network.into_into_dart().into_dart(),
]
.into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::model::ConnectRequest {}
impl flutter_rust_bridge::IntoIntoDart<crate::model::ConnectRequest>
for crate::model::ConnectRequest
{
fn into_into_dart(self) -> crate::model::ConnectRequest {
self
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::GetInfoRequest {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[self.with_scan.into_into_dart().into_dart()].into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::model::GetInfoRequest {}
impl flutter_rust_bridge::IntoIntoDart<crate::model::GetInfoRequest>
for crate::model::GetInfoRequest
{
fn into_into_dart(self) -> crate::model::GetInfoRequest {
self
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::GetInfoResponse {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[
self.balance_sat.into_into_dart().into_dart(),
self.pubkey.into_into_dart().into_dart(),
]
.into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::model::GetInfoResponse {}
impl flutter_rust_bridge::IntoIntoDart<crate::model::GetInfoResponse>
for crate::model::GetInfoResponse
{
fn into_into_dart(self) -> crate::model::GetInfoResponse {
self
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::Network {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
@@ -725,11 +814,7 @@ impl flutter_rust_bridge::IntoIntoDart<crate::model::PaymentType> for crate::mod
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::PrepareReceiveRequest {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[
self.payer_amount_sat.into_into_dart().into_dart(),
self.receiver_amount_sat.into_into_dart().into_dart(),
]
.into_dart()
[self.payer_amount_sat.into_into_dart().into_dart()].into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
@@ -766,6 +851,23 @@ impl flutter_rust_bridge::IntoIntoDart<crate::model::PrepareReceiveResponse>
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::PrepareSendRequest {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[self.invoice.into_into_dart().into_dart()].into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
for crate::model::PrepareSendRequest
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::model::PrepareSendRequest>
for crate::model::PrepareSendRequest
{
fn into_into_dart(self) -> crate::model::PrepareSendRequest {
self
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::PrepareSendResponse {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[
@@ -812,6 +914,20 @@ impl flutter_rust_bridge::IntoIntoDart<crate::model::ReceivePaymentResponse>
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::RestoreRequest {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[self.backup_path.into_into_dart().into_dart()].into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::model::RestoreRequest {}
impl flutter_rust_bridge::IntoIntoDart<crate::model::RestoreRequest>
for crate::model::RestoreRequest
{
fn into_into_dart(self) -> crate::model::RestoreRequest {
self
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::SendPaymentResponse {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[self.txid.into_into_dart().into_dart()].into_dart()
@@ -828,22 +944,6 @@ impl flutter_rust_bridge::IntoIntoDart<crate::model::SendPaymentResponse>
self
}
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::model::WalletInfo {
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
[
self.balance_sat.into_into_dart().into_dart(),
self.pubkey.into_into_dart().into_dart(),
]
.into_dart()
}
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::model::WalletInfo {}
impl flutter_rust_bridge::IntoIntoDart<crate::model::WalletInfo> for crate::model::WalletInfo {
fn into_into_dart(self) -> crate::model::WalletInfo {
self
}
}
impl SseEncode for flutter_rust_bridge::for_generated::anyhow::Error {
// Codec=Sse (Serialization based), see doc to use other codecs
@@ -884,6 +984,30 @@ impl SseEncode for bool {
}
}
impl SseEncode for crate::model::ConnectRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<String>::sse_encode(self.mnemonic, serializer);
<Option<String>>::sse_encode(self.data_dir, serializer);
<crate::model::Network>::sse_encode(self.network, serializer);
}
}
impl SseEncode for crate::model::GetInfoRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<bool>::sse_encode(self.with_scan, serializer);
}
}
impl SseEncode for crate::model::GetInfoResponse {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<u64>::sse_encode(self.balance_sat, serializer);
<String>::sse_encode(self.pubkey, serializer);
}
}
impl SseEncode for i32 {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
@@ -1032,8 +1156,7 @@ impl SseEncode for crate::model::PaymentType {
impl SseEncode for crate::model::PrepareReceiveRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<Option<u64>>::sse_encode(self.payer_amount_sat, serializer);
<Option<u64>>::sse_encode(self.receiver_amount_sat, serializer);
<u64>::sse_encode(self.payer_amount_sat, serializer);
}
}
@@ -1046,6 +1169,13 @@ impl SseEncode for crate::model::PrepareReceiveResponse {
}
}
impl SseEncode for crate::model::PrepareSendRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<String>::sse_encode(self.invoice, serializer);
}
}
impl SseEncode for crate::model::PrepareSendResponse {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
@@ -1066,6 +1196,13 @@ impl SseEncode for crate::model::ReceivePaymentResponse {
}
}
impl SseEncode for crate::model::RestoreRequest {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<Option<String>>::sse_encode(self.backup_path, serializer);
}
}
impl SseEncode for crate::model::SendPaymentResponse {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
@@ -1109,14 +1246,6 @@ impl SseEncode for usize {
}
}
impl SseEncode for crate::model::WalletInfo {
// Codec=Sse (Serialization based), see doc to use other codecs
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
<u64>::sse_encode(self.balance_sat, serializer);
<String>::sse_encode(self.pubkey, serializer);
}
}
#[cfg(not(target_family = "wasm"))]
#[path = "bridge.io.rs"]
mod io;

View File

@@ -0,0 +1,200 @@
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
// EXTRA BEGIN
typedef struct DartCObject *WireSyncRust2DartDco;
typedef struct WireSyncRust2DartSse {
uint8_t *ptr;
int32_t len;
} WireSyncRust2DartSse;
typedef int64_t DartPort;
typedef bool (*DartPostCObjectFnType)(DartPort port_id, void *message);
void store_dart_post_cobject(DartPostCObjectFnType ptr);
// EXTRA END
typedef struct _Dart_Handle* Dart_Handle;
/**
* Claim tx feerate for Receive, in sats per vbyte.
* Since the Liquid blocks are consistently empty for now, we hardcode the minimum feerate.
*/
#define LIQUID_CLAIM_TX_FEERATE 0.1
typedef struct wire_cst_list_prim_u_8_strict {
uint8_t *ptr;
int32_t len;
} wire_cst_list_prim_u_8_strict;
typedef struct wire_cst_connect_request {
struct wire_cst_list_prim_u_8_strict *mnemonic;
struct wire_cst_list_prim_u_8_strict *data_dir;
int32_t network;
} wire_cst_connect_request;
typedef struct wire_cst_get_info_request {
bool with_scan;
} wire_cst_get_info_request;
typedef struct wire_cst_prepare_receive_request {
uint64_t payer_amount_sat;
} wire_cst_prepare_receive_request;
typedef struct wire_cst_prepare_send_request {
struct wire_cst_list_prim_u_8_strict *invoice;
} wire_cst_prepare_send_request;
typedef struct wire_cst_prepare_receive_response {
struct wire_cst_list_prim_u_8_strict *pair_hash;
uint64_t payer_amount_sat;
uint64_t fees_sat;
} wire_cst_prepare_receive_response;
typedef struct wire_cst_restore_request {
struct wire_cst_list_prim_u_8_strict *backup_path;
} wire_cst_restore_request;
typedef struct wire_cst_prepare_send_response {
struct wire_cst_list_prim_u_8_strict *id;
uint64_t payer_amount_sat;
uint64_t receiver_amount_sat;
uint64_t total_fees;
struct wire_cst_list_prim_u_8_strict *funding_address;
struct wire_cst_list_prim_u_8_strict *invoice;
} wire_cst_prepare_send_response;
typedef struct wire_cst_payment {
struct wire_cst_list_prim_u_8_strict *id;
uint32_t *timestamp;
uint64_t amount_sat;
uint64_t *fees_sat;
int32_t payment_type;
struct wire_cst_list_prim_u_8_strict *invoice;
} wire_cst_payment;
typedef struct wire_cst_list_payment {
struct wire_cst_payment *ptr;
int32_t len;
} wire_cst_list_payment;
typedef struct wire_cst_get_info_response {
uint64_t balance_sat;
struct wire_cst_list_prim_u_8_strict *pubkey;
} wire_cst_get_info_response;
typedef struct wire_cst_PaymentError_Generic {
struct wire_cst_list_prim_u_8_strict *err;
} wire_cst_PaymentError_Generic;
typedef struct wire_cst_PaymentError_LwkError {
struct wire_cst_list_prim_u_8_strict *err;
} wire_cst_PaymentError_LwkError;
typedef struct wire_cst_PaymentError_SendError {
struct wire_cst_list_prim_u_8_strict *err;
} wire_cst_PaymentError_SendError;
typedef struct wire_cst_PaymentError_SignerError {
struct wire_cst_list_prim_u_8_strict *err;
} wire_cst_PaymentError_SignerError;
typedef union PaymentErrorKind {
struct wire_cst_PaymentError_Generic Generic;
struct wire_cst_PaymentError_LwkError LwkError;
struct wire_cst_PaymentError_SendError SendError;
struct wire_cst_PaymentError_SignerError SignerError;
} PaymentErrorKind;
typedef struct wire_cst_payment_error {
int32_t tag;
union PaymentErrorKind kind;
} wire_cst_payment_error;
typedef struct wire_cst_receive_payment_response {
struct wire_cst_list_prim_u_8_strict *id;
struct wire_cst_list_prim_u_8_strict *invoice;
} wire_cst_receive_payment_response;
typedef struct wire_cst_send_payment_response {
struct wire_cst_list_prim_u_8_strict *txid;
} wire_cst_send_payment_response;
void frbgen_breez_liquid_wire_backup(int64_t port_);
void frbgen_breez_liquid_wire_connect(int64_t port_, struct wire_cst_connect_request *req);
void frbgen_breez_liquid_wire_empty_wallet_cache(int64_t port_);
void frbgen_breez_liquid_wire_get_info(int64_t port_, struct wire_cst_get_info_request *req);
void frbgen_breez_liquid_wire_list_payments(int64_t port_, bool with_scan, bool include_pending);
void frbgen_breez_liquid_wire_prepare_receive_payment(int64_t port_,
struct wire_cst_prepare_receive_request *req);
void frbgen_breez_liquid_wire_prepare_send_payment(int64_t port_,
struct wire_cst_prepare_send_request *req);
void frbgen_breez_liquid_wire_receive_payment(int64_t port_,
struct wire_cst_prepare_receive_response *req);
void frbgen_breez_liquid_wire_recover_funds(int64_t port_, uintptr_t recovery);
void frbgen_breez_liquid_wire_restore(int64_t port_, struct wire_cst_restore_request *req);
void frbgen_breez_liquid_wire_send_payment(int64_t port_,
struct wire_cst_prepare_send_response *req);
void frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecovery(const void *ptr);
void frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecovery(const void *ptr);
struct wire_cst_connect_request *frbgen_breez_liquid_cst_new_box_autoadd_connect_request(void);
struct wire_cst_get_info_request *frbgen_breez_liquid_cst_new_box_autoadd_get_info_request(void);
struct wire_cst_prepare_receive_request *frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_request(void);
struct wire_cst_prepare_receive_response *frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_response(void);
struct wire_cst_prepare_send_request *frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request(void);
struct wire_cst_prepare_send_response *frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_response(void);
struct wire_cst_restore_request *frbgen_breez_liquid_cst_new_box_autoadd_restore_request(void);
uint32_t *frbgen_breez_liquid_cst_new_box_autoadd_u_32(uint32_t value);
uint64_t *frbgen_breez_liquid_cst_new_box_autoadd_u_64(uint64_t value);
struct wire_cst_list_payment *frbgen_breez_liquid_cst_new_list_payment(int32_t len);
struct wire_cst_list_prim_u_8_strict *frbgen_breez_liquid_cst_new_list_prim_u_8_strict(int32_t len);
static int64_t dummy_method_to_enforce_bundling(void) {
int64_t dummy_var = 0;
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_connect_request);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_get_info_request);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_request);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_response);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_response);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_restore_request);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_u_32);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_box_autoadd_u_64);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_payment);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_cst_new_list_prim_u_8_strict);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecovery);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecovery);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_backup);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_connect);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_empty_wallet_cache);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_get_info);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_list_payments);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_prepare_receive_payment);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_prepare_send_payment);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_receive_payment);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_recover_funds);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_restore);
dummy_var ^= ((int64_t) (void*) frbgen_breez_liquid_wire_send_payment);
dummy_var ^= ((int64_t) (void*) store_dart_post_cobject);
return dummy_var;
}

View File

@@ -8,20 +8,15 @@ import 'frb_generated.dart';
import 'model.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
Future<void> connect(
{required String mnemonic,
String? dataDir,
required Network network,
dynamic hint}) =>
RustLib.instance.api.connect(
mnemonic: mnemonic, dataDir: dataDir, network: network, hint: hint);
Future<void> connect({required ConnectRequest req, dynamic hint}) =>
RustLib.instance.api.connect(req: req, hint: hint);
Future<WalletInfo> getInfo({required bool withScan, dynamic hint}) =>
RustLib.instance.api.getInfo(withScan: withScan, hint: hint);
Future<GetInfoResponse> getInfo({required GetInfoRequest req, dynamic hint}) =>
RustLib.instance.api.getInfo(req: req, hint: hint);
Future<PrepareSendResponse> prepareSendPayment(
{required String invoice, dynamic hint}) =>
RustLib.instance.api.prepareSendPayment(invoice: invoice, hint: hint);
{required PrepareSendRequest req, dynamic hint}) =>
RustLib.instance.api.prepareSendPayment(req: req, hint: hint);
Future<SendPaymentResponse> sendPayment(
{required PrepareSendResponse req, dynamic hint}) =>
@@ -49,8 +44,8 @@ Future<void> emptyWalletCache({dynamic hint}) =>
Future<void> backup({dynamic hint}) => RustLib.instance.api.backup(hint: hint);
Future<void> restore({String? backupPath, dynamic hint}) =>
RustLib.instance.api.restore(backupPath: backupPath, hint: hint);
Future<void> restore({required RestoreRequest req, dynamic hint}) =>
RustLib.instance.api.restore(req: req, hint: hint);
// Rust type: RustOpaqueNom<flutter_rust_bridge::for_generated::rust_async::RwLock<LBtcReverseRecovery>>
@sealed

View File

@@ -69,15 +69,11 @@ class RustLib extends BaseEntrypoint<RustLibApi, RustLibApiImpl, RustLibWire> {
abstract class RustLibApi extends BaseApi {
Future<void> backup({dynamic hint});
Future<void> connect(
{required String mnemonic,
String? dataDir,
required Network network,
dynamic hint});
Future<void> connect({required ConnectRequest req, dynamic hint});
Future<void> emptyWalletCache({dynamic hint});
Future<WalletInfo> getInfo({required bool withScan, dynamic hint});
Future<GetInfoResponse> getInfo({required GetInfoRequest req, dynamic hint});
Future<List<Payment>> listPayments(
{required bool withScan, required bool includePending, dynamic hint});
@@ -86,7 +82,7 @@ abstract class RustLibApi extends BaseApi {
{required PrepareReceiveRequest req, dynamic hint});
Future<PrepareSendResponse> prepareSendPayment(
{required String invoice, dynamic hint});
{required PrepareSendRequest req, dynamic hint});
Future<ReceivePaymentResponse> receivePayment(
{required PrepareReceiveResponse req, dynamic hint});
@@ -94,7 +90,7 @@ abstract class RustLibApi extends BaseApi {
Future<String> recoverFunds(
{required LBtcReverseRecovery recovery, dynamic hint});
Future<void> restore({String? backupPath, dynamic hint});
Future<void> restore({required RestoreRequest req, dynamic hint});
Future<SendPaymentResponse> sendPayment(
{required PrepareSendResponse req, dynamic hint});
@@ -140,24 +136,18 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
);
@override
Future<void> connect(
{required String mnemonic,
String? dataDir,
required Network network,
dynamic hint}) {
Future<void> connect({required ConnectRequest req, dynamic hint}) {
return handler.executeNormal(NormalTask(
callFfi: (port_) {
var arg0 = cst_encode_String(mnemonic);
var arg1 = cst_encode_opt_String(dataDir);
var arg2 = cst_encode_network(network);
return wire.wire_connect(port_, arg0, arg1, arg2);
var arg0 = cst_encode_box_autoadd_connect_request(req);
return wire.wire_connect(port_, arg0);
},
codec: DcoCodec(
decodeSuccessData: dco_decode_unit,
decodeErrorData: dco_decode_AnyhowException,
),
constMeta: kConnectConstMeta,
argValues: [mnemonic, dataDir, network],
argValues: [req],
apiImpl: this,
hint: hint,
));
@@ -165,7 +155,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
TaskConstMeta get kConnectConstMeta => const TaskConstMeta(
debugName: "connect",
argNames: ["mnemonic", "dataDir", "network"],
argNames: ["req"],
);
@override
@@ -191,18 +181,18 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
);
@override
Future<WalletInfo> getInfo({required bool withScan, dynamic hint}) {
Future<GetInfoResponse> getInfo({required GetInfoRequest req, dynamic hint}) {
return handler.executeNormal(NormalTask(
callFfi: (port_) {
var arg0 = cst_encode_bool(withScan);
var arg0 = cst_encode_box_autoadd_get_info_request(req);
return wire.wire_get_info(port_, arg0);
},
codec: DcoCodec(
decodeSuccessData: dco_decode_wallet_info,
decodeSuccessData: dco_decode_get_info_response,
decodeErrorData: dco_decode_AnyhowException,
),
constMeta: kGetInfoConstMeta,
argValues: [withScan],
argValues: [req],
apiImpl: this,
hint: hint,
));
@@ -210,7 +200,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
TaskConstMeta get kGetInfoConstMeta => const TaskConstMeta(
debugName: "get_info",
argNames: ["withScan"],
argNames: ["req"],
);
@override
@@ -264,10 +254,10 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
@override
Future<PrepareSendResponse> prepareSendPayment(
{required String invoice, dynamic hint}) {
{required PrepareSendRequest req, dynamic hint}) {
return handler.executeNormal(NormalTask(
callFfi: (port_) {
var arg0 = cst_encode_String(invoice);
var arg0 = cst_encode_box_autoadd_prepare_send_request(req);
return wire.wire_prepare_send_payment(port_, arg0);
},
codec: DcoCodec(
@@ -275,7 +265,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
decodeErrorData: dco_decode_payment_error,
),
constMeta: kPrepareSendPaymentConstMeta,
argValues: [invoice],
argValues: [req],
apiImpl: this,
hint: hint,
));
@@ -283,7 +273,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
TaskConstMeta get kPrepareSendPaymentConstMeta => const TaskConstMeta(
debugName: "prepare_send_payment",
argNames: ["invoice"],
argNames: ["req"],
);
@override
@@ -337,10 +327,10 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
);
@override
Future<void> restore({String? backupPath, dynamic hint}) {
Future<void> restore({required RestoreRequest req, dynamic hint}) {
return handler.executeNormal(NormalTask(
callFfi: (port_) {
var arg0 = cst_encode_opt_String(backupPath);
var arg0 = cst_encode_box_autoadd_restore_request(req);
return wire.wire_restore(port_, arg0);
},
codec: DcoCodec(
@@ -348,7 +338,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
decodeErrorData: dco_decode_AnyhowException,
),
constMeta: kRestoreConstMeta,
argValues: [backupPath],
argValues: [req],
apiImpl: this,
hint: hint,
));
@@ -356,7 +346,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
TaskConstMeta get kRestoreConstMeta => const TaskConstMeta(
debugName: "restore",
argNames: ["backupPath"],
argNames: ["req"],
);
@override
@@ -425,6 +415,18 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return raw as bool;
}
@protected
ConnectRequest dco_decode_box_autoadd_connect_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
return dco_decode_connect_request(raw);
}
@protected
GetInfoRequest dco_decode_box_autoadd_get_info_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
return dco_decode_get_info_request(raw);
}
@protected
PrepareReceiveRequest dco_decode_box_autoadd_prepare_receive_request(
dynamic raw) {
@@ -439,6 +441,12 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return dco_decode_prepare_receive_response(raw);
}
@protected
PrepareSendRequest dco_decode_box_autoadd_prepare_send_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
return dco_decode_prepare_send_request(raw);
}
@protected
PrepareSendResponse dco_decode_box_autoadd_prepare_send_response(
dynamic raw) {
@@ -446,6 +454,12 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return dco_decode_prepare_send_response(raw);
}
@protected
RestoreRequest dco_decode_box_autoadd_restore_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
return dco_decode_restore_request(raw);
}
@protected
int dco_decode_box_autoadd_u_32(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
@@ -458,6 +472,42 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return dco_decode_u_64(raw);
}
@protected
ConnectRequest dco_decode_connect_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 3)
throw Exception('unexpected arr length: expect 3 but see ${arr.length}');
return ConnectRequest(
mnemonic: dco_decode_String(arr[0]),
dataDir: dco_decode_opt_String(arr[1]),
network: dco_decode_network(arr[2]),
);
}
@protected
GetInfoRequest dco_decode_get_info_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 1)
throw Exception('unexpected arr length: expect 1 but see ${arr.length}');
return GetInfoRequest(
withScan: dco_decode_bool(arr[0]),
);
}
@protected
GetInfoResponse dco_decode_get_info_response(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 2)
throw Exception('unexpected arr length: expect 2 but see ${arr.length}');
return GetInfoResponse(
balanceSat: dco_decode_u_64(arr[0]),
pubkey: dco_decode_String(arr[1]),
);
}
@protected
int dco_decode_i_32(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
@@ -563,11 +613,10 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
PrepareReceiveRequest dco_decode_prepare_receive_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 2)
throw Exception('unexpected arr length: expect 2 but see ${arr.length}');
if (arr.length != 1)
throw Exception('unexpected arr length: expect 1 but see ${arr.length}');
return PrepareReceiveRequest(
payerAmountSat: dco_decode_opt_box_autoadd_u_64(arr[0]),
receiverAmountSat: dco_decode_opt_box_autoadd_u_64(arr[1]),
payerAmountSat: dco_decode_u_64(arr[0]),
);
}
@@ -584,6 +633,17 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
);
}
@protected
PrepareSendRequest dco_decode_prepare_send_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 1)
throw Exception('unexpected arr length: expect 1 but see ${arr.length}');
return PrepareSendRequest(
invoice: dco_decode_String(arr[0]),
);
}
@protected
PrepareSendResponse dco_decode_prepare_send_response(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
@@ -612,6 +672,17 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
);
}
@protected
RestoreRequest dco_decode_restore_request(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 1)
throw Exception('unexpected arr length: expect 1 but see ${arr.length}');
return RestoreRequest(
backupPath: dco_decode_opt_String(arr[0]),
);
}
@protected
SendPaymentResponse dco_decode_send_payment_response(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
@@ -653,18 +724,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return dcoDecodeI64OrU64(raw);
}
@protected
WalletInfo dco_decode_wallet_info(dynamic raw) {
// Codec=Dco (DartCObject based), see doc to use other codecs
final arr = raw as List<dynamic>;
if (arr.length != 2)
throw Exception('unexpected arr length: expect 2 but see ${arr.length}');
return WalletInfo(
balanceSat: dco_decode_u_64(arr[0]),
pubkey: dco_decode_String(arr[1]),
);
}
@protected
AnyhowException sse_decode_AnyhowException(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
@@ -703,6 +762,20 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return deserializer.buffer.getUint8() != 0;
}
@protected
ConnectRequest sse_decode_box_autoadd_connect_request(
SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
return (sse_decode_connect_request(deserializer));
}
@protected
GetInfoRequest sse_decode_box_autoadd_get_info_request(
SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
return (sse_decode_get_info_request(deserializer));
}
@protected
PrepareReceiveRequest sse_decode_box_autoadd_prepare_receive_request(
SseDeserializer deserializer) {
@@ -717,6 +790,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return (sse_decode_prepare_receive_response(deserializer));
}
@protected
PrepareSendRequest sse_decode_box_autoadd_prepare_send_request(
SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
return (sse_decode_prepare_send_request(deserializer));
}
@protected
PrepareSendResponse sse_decode_box_autoadd_prepare_send_response(
SseDeserializer deserializer) {
@@ -724,6 +804,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return (sse_decode_prepare_send_response(deserializer));
}
@protected
RestoreRequest sse_decode_box_autoadd_restore_request(
SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
return (sse_decode_restore_request(deserializer));
}
@protected
int sse_decode_box_autoadd_u_32(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
@@ -736,6 +823,31 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return (sse_decode_u_64(deserializer));
}
@protected
ConnectRequest sse_decode_connect_request(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_mnemonic = sse_decode_String(deserializer);
var var_dataDir = sse_decode_opt_String(deserializer);
var var_network = sse_decode_network(deserializer);
return ConnectRequest(
mnemonic: var_mnemonic, dataDir: var_dataDir, network: var_network);
}
@protected
GetInfoRequest sse_decode_get_info_request(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_withScan = sse_decode_bool(deserializer);
return GetInfoRequest(withScan: var_withScan);
}
@protected
GetInfoResponse sse_decode_get_info_response(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_balanceSat = sse_decode_u_64(deserializer);
var var_pubkey = sse_decode_String(deserializer);
return GetInfoResponse(balanceSat: var_balanceSat, pubkey: var_pubkey);
}
@protected
int sse_decode_i_32(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
@@ -865,11 +977,8 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
PrepareReceiveRequest sse_decode_prepare_receive_request(
SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_payerAmountSat = sse_decode_opt_box_autoadd_u_64(deserializer);
var var_receiverAmountSat = sse_decode_opt_box_autoadd_u_64(deserializer);
return PrepareReceiveRequest(
payerAmountSat: var_payerAmountSat,
receiverAmountSat: var_receiverAmountSat);
var var_payerAmountSat = sse_decode_u_64(deserializer);
return PrepareReceiveRequest(payerAmountSat: var_payerAmountSat);
}
@protected
@@ -885,6 +994,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
feesSat: var_feesSat);
}
@protected
PrepareSendRequest sse_decode_prepare_send_request(
SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_invoice = sse_decode_String(deserializer);
return PrepareSendRequest(invoice: var_invoice);
}
@protected
PrepareSendResponse sse_decode_prepare_send_response(
SseDeserializer deserializer) {
@@ -913,6 +1030,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return ReceivePaymentResponse(id: var_id, invoice: var_invoice);
}
@protected
RestoreRequest sse_decode_restore_request(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_backupPath = sse_decode_opt_String(deserializer);
return RestoreRequest(backupPath: var_backupPath);
}
@protected
SendPaymentResponse sse_decode_send_payment_response(
SseDeserializer deserializer) {
@@ -950,14 +1074,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
return deserializer.buffer.getUint64();
}
@protected
WalletInfo sse_decode_wallet_info(SseDeserializer deserializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
var var_balanceSat = sse_decode_u_64(deserializer);
var var_pubkey = sse_decode_String(deserializer);
return WalletInfo(balanceSat: var_balanceSat, pubkey: var_pubkey);
}
@protected
int cst_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecovery(
LBtcReverseRecovery raw) {
@@ -1057,6 +1173,20 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
serializer.buffer.putUint8(self ? 1 : 0);
}
@protected
void sse_encode_box_autoadd_connect_request(
ConnectRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_connect_request(self, serializer);
}
@protected
void sse_encode_box_autoadd_get_info_request(
GetInfoRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_get_info_request(self, serializer);
}
@protected
void sse_encode_box_autoadd_prepare_receive_request(
PrepareReceiveRequest self, SseSerializer serializer) {
@@ -1071,6 +1201,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
sse_encode_prepare_receive_response(self, serializer);
}
@protected
void sse_encode_box_autoadd_prepare_send_request(
PrepareSendRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_prepare_send_request(self, serializer);
}
@protected
void sse_encode_box_autoadd_prepare_send_response(
PrepareSendResponse self, SseSerializer serializer) {
@@ -1078,6 +1215,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
sse_encode_prepare_send_response(self, serializer);
}
@protected
void sse_encode_box_autoadd_restore_request(
RestoreRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_restore_request(self, serializer);
}
@protected
void sse_encode_box_autoadd_u_32(int self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
@@ -1090,6 +1234,30 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
sse_encode_u_64(self, serializer);
}
@protected
void sse_encode_connect_request(
ConnectRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_String(self.mnemonic, serializer);
sse_encode_opt_String(self.dataDir, serializer);
sse_encode_network(self.network, serializer);
}
@protected
void sse_encode_get_info_request(
GetInfoRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_bool(self.withScan, serializer);
}
@protected
void sse_encode_get_info_response(
GetInfoResponse self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_u_64(self.balanceSat, serializer);
sse_encode_String(self.pubkey, serializer);
}
@protected
void sse_encode_i_32(int self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
@@ -1201,8 +1369,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
void sse_encode_prepare_receive_request(
PrepareReceiveRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_opt_box_autoadd_u_64(self.payerAmountSat, serializer);
sse_encode_opt_box_autoadd_u_64(self.receiverAmountSat, serializer);
sse_encode_u_64(self.payerAmountSat, serializer);
}
@protected
@@ -1214,6 +1381,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
sse_encode_u_64(self.feesSat, serializer);
}
@protected
void sse_encode_prepare_send_request(
PrepareSendRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_String(self.invoice, serializer);
}
@protected
void sse_encode_prepare_send_response(
PrepareSendResponse self, SseSerializer serializer) {
@@ -1234,6 +1408,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
sse_encode_String(self.invoice, serializer);
}
@protected
void sse_encode_restore_request(
RestoreRequest self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_opt_String(self.backupPath, serializer);
}
@protected
void sse_encode_send_payment_response(
SendPaymentResponse self, SseSerializer serializer) {
@@ -1269,11 +1450,4 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
// Codec=Sse (Serialization based), see doc to use other codecs
serializer.buffer.putUint64(self);
}
@protected
void sse_encode_wallet_info(WalletInfo self, SseSerializer serializer) {
// Codec=Sse (Serialization based), see doc to use other codecs
sse_encode_u_64(self.balanceSat, serializer);
sse_encode_String(self.pubkey, serializer);
}
}

View File

@@ -43,6 +43,12 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
bool dco_decode_bool(dynamic raw);
@protected
ConnectRequest dco_decode_box_autoadd_connect_request(dynamic raw);
@protected
GetInfoRequest dco_decode_box_autoadd_get_info_request(dynamic raw);
@protected
PrepareReceiveRequest dco_decode_box_autoadd_prepare_receive_request(
dynamic raw);
@@ -51,15 +57,30 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
PrepareReceiveResponse dco_decode_box_autoadd_prepare_receive_response(
dynamic raw);
@protected
PrepareSendRequest dco_decode_box_autoadd_prepare_send_request(dynamic raw);
@protected
PrepareSendResponse dco_decode_box_autoadd_prepare_send_response(dynamic raw);
@protected
RestoreRequest dco_decode_box_autoadd_restore_request(dynamic raw);
@protected
int dco_decode_box_autoadd_u_32(dynamic raw);
@protected
int dco_decode_box_autoadd_u_64(dynamic raw);
@protected
ConnectRequest dco_decode_connect_request(dynamic raw);
@protected
GetInfoRequest dco_decode_get_info_request(dynamic raw);
@protected
GetInfoResponse dco_decode_get_info_response(dynamic raw);
@protected
int dco_decode_i_32(dynamic raw);
@@ -96,12 +117,18 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
PrepareReceiveResponse dco_decode_prepare_receive_response(dynamic raw);
@protected
PrepareSendRequest dco_decode_prepare_send_request(dynamic raw);
@protected
PrepareSendResponse dco_decode_prepare_send_response(dynamic raw);
@protected
ReceivePaymentResponse dco_decode_receive_payment_response(dynamic raw);
@protected
RestoreRequest dco_decode_restore_request(dynamic raw);
@protected
SendPaymentResponse dco_decode_send_payment_response(dynamic raw);
@@ -120,9 +147,6 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
int dco_decode_usize(dynamic raw);
@protected
WalletInfo dco_decode_wallet_info(dynamic raw);
@protected
AnyhowException sse_decode_AnyhowException(SseDeserializer deserializer);
@@ -142,6 +166,14 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
bool sse_decode_bool(SseDeserializer deserializer);
@protected
ConnectRequest sse_decode_box_autoadd_connect_request(
SseDeserializer deserializer);
@protected
GetInfoRequest sse_decode_box_autoadd_get_info_request(
SseDeserializer deserializer);
@protected
PrepareReceiveRequest sse_decode_box_autoadd_prepare_receive_request(
SseDeserializer deserializer);
@@ -150,16 +182,33 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
PrepareReceiveResponse sse_decode_box_autoadd_prepare_receive_response(
SseDeserializer deserializer);
@protected
PrepareSendRequest sse_decode_box_autoadd_prepare_send_request(
SseDeserializer deserializer);
@protected
PrepareSendResponse sse_decode_box_autoadd_prepare_send_response(
SseDeserializer deserializer);
@protected
RestoreRequest sse_decode_box_autoadd_restore_request(
SseDeserializer deserializer);
@protected
int sse_decode_box_autoadd_u_32(SseDeserializer deserializer);
@protected
int sse_decode_box_autoadd_u_64(SseDeserializer deserializer);
@protected
ConnectRequest sse_decode_connect_request(SseDeserializer deserializer);
@protected
GetInfoRequest sse_decode_get_info_request(SseDeserializer deserializer);
@protected
GetInfoResponse sse_decode_get_info_response(SseDeserializer deserializer);
@protected
int sse_decode_i_32(SseDeserializer deserializer);
@@ -198,6 +247,10 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
PrepareReceiveResponse sse_decode_prepare_receive_response(
SseDeserializer deserializer);
@protected
PrepareSendRequest sse_decode_prepare_send_request(
SseDeserializer deserializer);
@protected
PrepareSendResponse sse_decode_prepare_send_response(
SseDeserializer deserializer);
@@ -206,6 +259,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
ReceivePaymentResponse sse_decode_receive_payment_response(
SseDeserializer deserializer);
@protected
RestoreRequest sse_decode_restore_request(SseDeserializer deserializer);
@protected
SendPaymentResponse sse_decode_send_payment_response(
SseDeserializer deserializer);
@@ -225,9 +281,6 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
int sse_decode_usize(SseDeserializer deserializer);
@protected
WalletInfo sse_decode_wallet_info(SseDeserializer deserializer);
@protected
ffi.Pointer<wire_cst_list_prim_u_8_strict> cst_encode_AnyhowException(
AnyhowException raw) {
@@ -241,6 +294,24 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
return cst_encode_list_prim_u_8_strict(utf8.encoder.convert(raw));
}
@protected
ffi.Pointer<wire_cst_connect_request> cst_encode_box_autoadd_connect_request(
ConnectRequest raw) {
// Codec=Cst (C-struct based), see doc to use other codecs
final ptr = wire.cst_new_box_autoadd_connect_request();
cst_api_fill_to_wire_connect_request(raw, ptr.ref);
return ptr;
}
@protected
ffi.Pointer<wire_cst_get_info_request>
cst_encode_box_autoadd_get_info_request(GetInfoRequest raw) {
// Codec=Cst (C-struct based), see doc to use other codecs
final ptr = wire.cst_new_box_autoadd_get_info_request();
cst_api_fill_to_wire_get_info_request(raw, ptr.ref);
return ptr;
}
@protected
ffi.Pointer<wire_cst_prepare_receive_request>
cst_encode_box_autoadd_prepare_receive_request(
@@ -261,6 +332,15 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
return ptr;
}
@protected
ffi.Pointer<wire_cst_prepare_send_request>
cst_encode_box_autoadd_prepare_send_request(PrepareSendRequest raw) {
// Codec=Cst (C-struct based), see doc to use other codecs
final ptr = wire.cst_new_box_autoadd_prepare_send_request();
cst_api_fill_to_wire_prepare_send_request(raw, ptr.ref);
return ptr;
}
@protected
ffi.Pointer<wire_cst_prepare_send_response>
cst_encode_box_autoadd_prepare_send_response(PrepareSendResponse raw) {
@@ -270,6 +350,15 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
return ptr;
}
@protected
ffi.Pointer<wire_cst_restore_request> cst_encode_box_autoadd_restore_request(
RestoreRequest raw) {
// Codec=Cst (C-struct based), see doc to use other codecs
final ptr = wire.cst_new_box_autoadd_restore_request();
cst_api_fill_to_wire_restore_request(raw, ptr.ref);
return ptr;
}
@protected
ffi.Pointer<ffi.Uint32> cst_encode_box_autoadd_u_32(int raw) {
// Codec=Cst (C-struct based), see doc to use other codecs
@@ -327,6 +416,18 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
return raw.toInt();
}
@protected
void cst_api_fill_to_wire_box_autoadd_connect_request(
ConnectRequest apiObj, ffi.Pointer<wire_cst_connect_request> wireObj) {
cst_api_fill_to_wire_connect_request(apiObj, wireObj.ref);
}
@protected
void cst_api_fill_to_wire_box_autoadd_get_info_request(
GetInfoRequest apiObj, ffi.Pointer<wire_cst_get_info_request> wireObj) {
cst_api_fill_to_wire_get_info_request(apiObj, wireObj.ref);
}
@protected
void cst_api_fill_to_wire_box_autoadd_prepare_receive_request(
PrepareReceiveRequest apiObj,
@@ -341,6 +442,13 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
cst_api_fill_to_wire_prepare_receive_response(apiObj, wireObj.ref);
}
@protected
void cst_api_fill_to_wire_box_autoadd_prepare_send_request(
PrepareSendRequest apiObj,
ffi.Pointer<wire_cst_prepare_send_request> wireObj) {
cst_api_fill_to_wire_prepare_send_request(apiObj, wireObj.ref);
}
@protected
void cst_api_fill_to_wire_box_autoadd_prepare_send_response(
PrepareSendResponse apiObj,
@@ -348,6 +456,33 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
cst_api_fill_to_wire_prepare_send_response(apiObj, wireObj.ref);
}
@protected
void cst_api_fill_to_wire_box_autoadd_restore_request(
RestoreRequest apiObj, ffi.Pointer<wire_cst_restore_request> wireObj) {
cst_api_fill_to_wire_restore_request(apiObj, wireObj.ref);
}
@protected
void cst_api_fill_to_wire_connect_request(
ConnectRequest apiObj, wire_cst_connect_request wireObj) {
wireObj.mnemonic = cst_encode_String(apiObj.mnemonic);
wireObj.data_dir = cst_encode_opt_String(apiObj.dataDir);
wireObj.network = cst_encode_network(apiObj.network);
}
@protected
void cst_api_fill_to_wire_get_info_request(
GetInfoRequest apiObj, wire_cst_get_info_request wireObj) {
wireObj.with_scan = cst_encode_bool(apiObj.withScan);
}
@protected
void cst_api_fill_to_wire_get_info_response(
GetInfoResponse apiObj, wire_cst_get_info_response wireObj) {
wireObj.balance_sat = cst_encode_u_64(apiObj.balanceSat);
wireObj.pubkey = cst_encode_String(apiObj.pubkey);
}
@protected
void cst_api_fill_to_wire_payment(Payment apiObj, wire_cst_payment wireObj) {
wireObj.id = cst_encode_opt_String(apiObj.id);
@@ -414,10 +549,7 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
void cst_api_fill_to_wire_prepare_receive_request(
PrepareReceiveRequest apiObj, wire_cst_prepare_receive_request wireObj) {
wireObj.payer_amount_sat =
cst_encode_opt_box_autoadd_u_64(apiObj.payerAmountSat);
wireObj.receiver_amount_sat =
cst_encode_opt_box_autoadd_u_64(apiObj.receiverAmountSat);
wireObj.payer_amount_sat = cst_encode_u_64(apiObj.payerAmountSat);
}
@protected
@@ -429,6 +561,12 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
wireObj.fees_sat = cst_encode_u_64(apiObj.feesSat);
}
@protected
void cst_api_fill_to_wire_prepare_send_request(
PrepareSendRequest apiObj, wire_cst_prepare_send_request wireObj) {
wireObj.invoice = cst_encode_String(apiObj.invoice);
}
@protected
void cst_api_fill_to_wire_prepare_send_response(
PrepareSendResponse apiObj, wire_cst_prepare_send_response wireObj) {
@@ -449,16 +587,15 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
}
@protected
void cst_api_fill_to_wire_send_payment_response(
SendPaymentResponse apiObj, wire_cst_send_payment_response wireObj) {
wireObj.txid = cst_encode_String(apiObj.txid);
void cst_api_fill_to_wire_restore_request(
RestoreRequest apiObj, wire_cst_restore_request wireObj) {
wireObj.backup_path = cst_encode_opt_String(apiObj.backupPath);
}
@protected
void cst_api_fill_to_wire_wallet_info(
WalletInfo apiObj, wire_cst_wallet_info wireObj) {
wireObj.balance_sat = cst_encode_u_64(apiObj.balanceSat);
wireObj.pubkey = cst_encode_String(apiObj.pubkey);
void cst_api_fill_to_wire_send_payment_response(
SendPaymentResponse apiObj, wire_cst_send_payment_response wireObj) {
wireObj.txid = cst_encode_String(apiObj.txid);
}
@protected
@@ -513,6 +650,14 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
void sse_encode_bool(bool self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_connect_request(
ConnectRequest self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_get_info_request(
GetInfoRequest self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_prepare_receive_request(
PrepareReceiveRequest self, SseSerializer serializer);
@@ -521,16 +666,36 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
void sse_encode_box_autoadd_prepare_receive_response(
PrepareReceiveResponse self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_prepare_send_request(
PrepareSendRequest self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_prepare_send_response(
PrepareSendResponse self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_restore_request(
RestoreRequest self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_u_32(int self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_u_64(int self, SseSerializer serializer);
@protected
void sse_encode_connect_request(
ConnectRequest self, SseSerializer serializer);
@protected
void sse_encode_get_info_request(
GetInfoRequest self, SseSerializer serializer);
@protected
void sse_encode_get_info_response(
GetInfoResponse self, SseSerializer serializer);
@protected
void sse_encode_i_32(int self, SseSerializer serializer);
@@ -570,6 +735,10 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
void sse_encode_prepare_receive_response(
PrepareReceiveResponse self, SseSerializer serializer);
@protected
void sse_encode_prepare_send_request(
PrepareSendRequest self, SseSerializer serializer);
@protected
void sse_encode_prepare_send_response(
PrepareSendResponse self, SseSerializer serializer);
@@ -578,6 +747,10 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
void sse_encode_receive_payment_response(
ReceivePaymentResponse self, SseSerializer serializer);
@protected
void sse_encode_restore_request(
RestoreRequest self, SseSerializer serializer);
@protected
void sse_encode_send_payment_response(
SendPaymentResponse self, SseSerializer serializer);
@@ -596,9 +769,6 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
@protected
void sse_encode_usize(int self, SseSerializer serializer);
@protected
void sse_encode_wallet_info(WalletInfo self, SseSerializer serializer);
}
// Section: wire_class
@@ -657,28 +827,21 @@ class RustLibWire implements BaseWire {
void wire_connect(
int port_,
ffi.Pointer<wire_cst_list_prim_u_8_strict> mnemonic,
ffi.Pointer<wire_cst_list_prim_u_8_strict> data_dir,
int network,
ffi.Pointer<wire_cst_connect_request> req,
) {
return _wire_connect(
port_,
mnemonic,
data_dir,
network,
req,
);
}
late final _wire_connectPtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64,
ffi.Pointer<wire_cst_list_prim_u_8_strict>,
ffi.Pointer<wire_cst_list_prim_u_8_strict>,
ffi.Int32)>>('frbgen_breez_liquid_wire_connect');
late final _wire_connect = _wire_connectPtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>,
ffi.Pointer<wire_cst_list_prim_u_8_strict>, int)>();
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_connect_request>)>>(
'frbgen_breez_liquid_wire_connect');
late final _wire_connect = _wire_connectPtr
.asFunction<void Function(int, ffi.Pointer<wire_cst_connect_request>)>();
void wire_empty_wallet_cache(
int port_,
@@ -696,19 +859,21 @@ class RustLibWire implements BaseWire {
void wire_get_info(
int port_,
bool with_scan,
ffi.Pointer<wire_cst_get_info_request> req,
) {
return _wire_get_info(
port_,
with_scan,
req,
);
}
late final _wire_get_infoPtr =
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Int64, ffi.Bool)>>(
'frbgen_breez_liquid_wire_get_info');
late final _wire_get_info =
_wire_get_infoPtr.asFunction<void Function(int, bool)>();
late final _wire_get_infoPtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_get_info_request>)>>(
'frbgen_breez_liquid_wire_get_info');
late final _wire_get_info = _wire_get_infoPtr
.asFunction<void Function(int, ffi.Pointer<wire_cst_get_info_request>)>();
void wire_list_payments(
int port_,
@@ -749,22 +914,22 @@ class RustLibWire implements BaseWire {
void wire_prepare_send_payment(
int port_,
ffi.Pointer<wire_cst_list_prim_u_8_strict> invoice,
ffi.Pointer<wire_cst_prepare_send_request> req,
) {
return _wire_prepare_send_payment(
port_,
invoice,
req,
);
}
late final _wire_prepare_send_paymentPtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
ffi.Int64, ffi.Pointer<wire_cst_prepare_send_request>)>>(
'frbgen_breez_liquid_wire_prepare_send_payment');
late final _wire_prepare_send_payment =
_wire_prepare_send_paymentPtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
void Function(int, ffi.Pointer<wire_cst_prepare_send_request>)>();
void wire_receive_payment(
int port_,
@@ -802,21 +967,21 @@ class RustLibWire implements BaseWire {
void wire_restore(
int port_,
ffi.Pointer<wire_cst_list_prim_u_8_strict> backup_path,
ffi.Pointer<wire_cst_restore_request> req,
) {
return _wire_restore(
port_,
backup_path,
req,
);
}
late final _wire_restorePtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
ffi.Int64, ffi.Pointer<wire_cst_restore_request>)>>(
'frbgen_breez_liquid_wire_restore');
late final _wire_restore = _wire_restorePtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
late final _wire_restore = _wire_restorePtr
.asFunction<void Function(int, ffi.Pointer<wire_cst_restore_request>)>();
void wire_send_payment(
int port_,
@@ -868,6 +1033,30 @@ class RustLibWire implements BaseWire {
_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecoveryPtr
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
ffi.Pointer<wire_cst_connect_request> cst_new_box_autoadd_connect_request() {
return _cst_new_box_autoadd_connect_request();
}
late final _cst_new_box_autoadd_connect_requestPtr = _lookup<
ffi.NativeFunction<ffi.Pointer<wire_cst_connect_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_connect_request');
late final _cst_new_box_autoadd_connect_request =
_cst_new_box_autoadd_connect_requestPtr
.asFunction<ffi.Pointer<wire_cst_connect_request> Function()>();
ffi.Pointer<wire_cst_get_info_request>
cst_new_box_autoadd_get_info_request() {
return _cst_new_box_autoadd_get_info_request();
}
late final _cst_new_box_autoadd_get_info_requestPtr = _lookup<
ffi
.NativeFunction<ffi.Pointer<wire_cst_get_info_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_get_info_request');
late final _cst_new_box_autoadd_get_info_request =
_cst_new_box_autoadd_get_info_requestPtr
.asFunction<ffi.Pointer<wire_cst_get_info_request> Function()>();
ffi.Pointer<wire_cst_prepare_receive_request>
cst_new_box_autoadd_prepare_receive_request() {
return _cst_new_box_autoadd_prepare_receive_request();
@@ -894,6 +1083,19 @@ class RustLibWire implements BaseWire {
_cst_new_box_autoadd_prepare_receive_responsePtr.asFunction<
ffi.Pointer<wire_cst_prepare_receive_response> Function()>();
ffi.Pointer<wire_cst_prepare_send_request>
cst_new_box_autoadd_prepare_send_request() {
return _cst_new_box_autoadd_prepare_send_request();
}
late final _cst_new_box_autoadd_prepare_send_requestPtr = _lookup<
ffi.NativeFunction<
ffi.Pointer<wire_cst_prepare_send_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request');
late final _cst_new_box_autoadd_prepare_send_request =
_cst_new_box_autoadd_prepare_send_requestPtr
.asFunction<ffi.Pointer<wire_cst_prepare_send_request> Function()>();
ffi.Pointer<wire_cst_prepare_send_response>
cst_new_box_autoadd_prepare_send_response() {
return _cst_new_box_autoadd_prepare_send_response();
@@ -907,6 +1109,17 @@ class RustLibWire implements BaseWire {
_cst_new_box_autoadd_prepare_send_responsePtr
.asFunction<ffi.Pointer<wire_cst_prepare_send_response> Function()>();
ffi.Pointer<wire_cst_restore_request> cst_new_box_autoadd_restore_request() {
return _cst_new_box_autoadd_restore_request();
}
late final _cst_new_box_autoadd_restore_requestPtr = _lookup<
ffi.NativeFunction<ffi.Pointer<wire_cst_restore_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_restore_request');
late final _cst_new_box_autoadd_restore_request =
_cst_new_box_autoadd_restore_requestPtr
.asFunction<ffi.Pointer<wire_cst_restore_request> Function()>();
ffi.Pointer<ffi.Uint32> cst_new_box_autoadd_u_32(
int value,
) {
@@ -988,10 +1201,27 @@ final class wire_cst_list_prim_u_8_strict extends ffi.Struct {
external int len;
}
final class wire_cst_prepare_receive_request extends ffi.Struct {
external ffi.Pointer<ffi.Uint64> payer_amount_sat;
final class wire_cst_connect_request extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> mnemonic;
external ffi.Pointer<ffi.Uint64> receiver_amount_sat;
external ffi.Pointer<wire_cst_list_prim_u_8_strict> data_dir;
@ffi.Int32()
external int network;
}
final class wire_cst_get_info_request extends ffi.Struct {
@ffi.Bool()
external bool with_scan;
}
final class wire_cst_prepare_receive_request extends ffi.Struct {
@ffi.Uint64()
external int payer_amount_sat;
}
final class wire_cst_prepare_send_request extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> invoice;
}
final class wire_cst_prepare_receive_response extends ffi.Struct {
@@ -1004,6 +1234,10 @@ final class wire_cst_prepare_receive_response extends ffi.Struct {
external int fees_sat;
}
final class wire_cst_restore_request extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> backup_path;
}
final class wire_cst_prepare_send_response extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> id;
@@ -1044,6 +1278,13 @@ final class wire_cst_list_payment extends ffi.Struct {
external int len;
}
final class wire_cst_get_info_response extends ffi.Struct {
@ffi.Uint64()
external int balance_sat;
external ffi.Pointer<wire_cst_list_prim_u_8_strict> pubkey;
}
final class wire_cst_PaymentError_Generic extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> err;
}
@@ -1087,11 +1328,4 @@ final class wire_cst_send_payment_response extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> txid;
}
final class wire_cst_wallet_info extends ffi.Struct {
@ffi.Uint64()
external int balance_sat;
external ffi.Pointer<wire_cst_list_prim_u_8_strict> pubkey;
}
const double LIQUID_CLAIM_TX_FEERATE = 0.1;

View File

@@ -6,6 +6,69 @@
import 'frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
class ConnectRequest {
final String mnemonic;
final String? dataDir;
final Network network;
const ConnectRequest({
required this.mnemonic,
this.dataDir,
required this.network,
});
@override
int get hashCode => mnemonic.hashCode ^ dataDir.hashCode ^ network.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is ConnectRequest &&
runtimeType == other.runtimeType &&
mnemonic == other.mnemonic &&
dataDir == other.dataDir &&
network == other.network;
}
class GetInfoRequest {
final bool withScan;
const GetInfoRequest({
required this.withScan,
});
@override
int get hashCode => withScan.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is GetInfoRequest &&
runtimeType == other.runtimeType &&
withScan == other.withScan;
}
class GetInfoResponse {
final int balanceSat;
final String pubkey;
const GetInfoResponse({
required this.balanceSat,
required this.pubkey,
});
@override
int get hashCode => balanceSat.hashCode ^ pubkey.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is GetInfoResponse &&
runtimeType == other.runtimeType &&
balanceSat == other.balanceSat &&
pubkey == other.pubkey;
}
enum Network {
liquid,
liquidTestnet,
@@ -62,24 +125,21 @@ enum PaymentType {
}
class PrepareReceiveRequest {
final int? payerAmountSat;
final int? receiverAmountSat;
final int payerAmountSat;
const PrepareReceiveRequest({
this.payerAmountSat,
this.receiverAmountSat,
required this.payerAmountSat,
});
@override
int get hashCode => payerAmountSat.hashCode ^ receiverAmountSat.hashCode;
int get hashCode => payerAmountSat.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is PrepareReceiveRequest &&
runtimeType == other.runtimeType &&
payerAmountSat == other.payerAmountSat &&
receiverAmountSat == other.receiverAmountSat;
payerAmountSat == other.payerAmountSat;
}
class PrepareReceiveResponse {
@@ -107,6 +167,24 @@ class PrepareReceiveResponse {
feesSat == other.feesSat;
}
class PrepareSendRequest {
final String invoice;
const PrepareSendRequest({
required this.invoice,
});
@override
int get hashCode => invoice.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is PrepareSendRequest &&
runtimeType == other.runtimeType &&
invoice == other.invoice;
}
class PrepareSendResponse {
final String id;
final int payerAmountSat;
@@ -167,6 +245,24 @@ class ReceivePaymentResponse {
invoice == other.invoice;
}
class RestoreRequest {
final String? backupPath;
const RestoreRequest({
this.backupPath,
});
@override
int get hashCode => backupPath.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is RestoreRequest &&
runtimeType == other.runtimeType &&
backupPath == other.backupPath;
}
class SendPaymentResponse {
final String txid;
@@ -184,24 +280,3 @@ class SendPaymentResponse {
runtimeType == other.runtimeType &&
txid == other.txid;
}
class WalletInfo {
final int balanceSat;
final String pubkey;
const WalletInfo({
required this.balanceSat,
required this.pubkey,
});
@override
int get hashCode => balanceSat.hashCode ^ pubkey.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is WalletInfo &&
runtimeType == other.runtimeType &&
balanceSat == other.balanceSat &&
pubkey == other.pubkey;
}

View File

@@ -57,29 +57,22 @@ class FlutterBreezLiquidBindings {
void frbgen_breez_liquid_wire_connect(
int port_,
ffi.Pointer<wire_cst_list_prim_u_8_strict> mnemonic,
ffi.Pointer<wire_cst_list_prim_u_8_strict> data_dir,
int network,
ffi.Pointer<wire_cst_connect_request> req,
) {
return _frbgen_breez_liquid_wire_connect(
port_,
mnemonic,
data_dir,
network,
req,
);
}
late final _frbgen_breez_liquid_wire_connectPtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64,
ffi.Pointer<wire_cst_list_prim_u_8_strict>,
ffi.Pointer<wire_cst_list_prim_u_8_strict>,
ffi.Int32)>>('frbgen_breez_liquid_wire_connect');
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_connect_request>)>>(
'frbgen_breez_liquid_wire_connect');
late final _frbgen_breez_liquid_wire_connect =
_frbgen_breez_liquid_wire_connectPtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>,
ffi.Pointer<wire_cst_list_prim_u_8_strict>, int)>();
void Function(int, ffi.Pointer<wire_cst_connect_request>)>();
void frbgen_breez_liquid_wire_empty_wallet_cache(
int port_,
@@ -98,20 +91,22 @@ class FlutterBreezLiquidBindings {
void frbgen_breez_liquid_wire_get_info(
int port_,
bool with_scan,
ffi.Pointer<wire_cst_get_info_request> req,
) {
return _frbgen_breez_liquid_wire_get_info(
port_,
with_scan,
req,
);
}
late final _frbgen_breez_liquid_wire_get_infoPtr =
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Int64, ffi.Bool)>>(
'frbgen_breez_liquid_wire_get_info');
late final _frbgen_breez_liquid_wire_get_infoPtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_get_info_request>)>>(
'frbgen_breez_liquid_wire_get_info');
late final _frbgen_breez_liquid_wire_get_info =
_frbgen_breez_liquid_wire_get_infoPtr
.asFunction<void Function(int, bool)>();
_frbgen_breez_liquid_wire_get_infoPtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_get_info_request>)>();
void frbgen_breez_liquid_wire_list_payments(
int port_,
@@ -153,22 +148,22 @@ class FlutterBreezLiquidBindings {
void frbgen_breez_liquid_wire_prepare_send_payment(
int port_,
ffi.Pointer<wire_cst_list_prim_u_8_strict> invoice,
ffi.Pointer<wire_cst_prepare_send_request> req,
) {
return _frbgen_breez_liquid_wire_prepare_send_payment(
port_,
invoice,
req,
);
}
late final _frbgen_breez_liquid_wire_prepare_send_paymentPtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
ffi.Int64, ffi.Pointer<wire_cst_prepare_send_request>)>>(
'frbgen_breez_liquid_wire_prepare_send_payment');
late final _frbgen_breez_liquid_wire_prepare_send_payment =
_frbgen_breez_liquid_wire_prepare_send_paymentPtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
void Function(int, ffi.Pointer<wire_cst_prepare_send_request>)>();
void frbgen_breez_liquid_wire_receive_payment(
int port_,
@@ -208,22 +203,22 @@ class FlutterBreezLiquidBindings {
void frbgen_breez_liquid_wire_restore(
int port_,
ffi.Pointer<wire_cst_list_prim_u_8_strict> backup_path,
ffi.Pointer<wire_cst_restore_request> req,
) {
return _frbgen_breez_liquid_wire_restore(
port_,
backup_path,
req,
);
}
late final _frbgen_breez_liquid_wire_restorePtr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Int64, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>>(
ffi.Int64, ffi.Pointer<wire_cst_restore_request>)>>(
'frbgen_breez_liquid_wire_restore');
late final _frbgen_breez_liquid_wire_restore =
_frbgen_breez_liquid_wire_restorePtr.asFunction<
void Function(int, ffi.Pointer<wire_cst_list_prim_u_8_strict>)>();
void Function(int, ffi.Pointer<wire_cst_restore_request>)>();
void frbgen_breez_liquid_wire_send_payment(
int port_,
@@ -276,6 +271,34 @@ class FlutterBreezLiquidBindings {
_frbgen_breez_liquid_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedrust_asyncRwLockLBtcReverseRecoveryPtr
.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
ffi.Pointer<wire_cst_connect_request>
frbgen_breez_liquid_cst_new_box_autoadd_connect_request() {
return _frbgen_breez_liquid_cst_new_box_autoadd_connect_request();
}
late final _frbgen_breez_liquid_cst_new_box_autoadd_connect_requestPtr =
_lookup<
ffi.NativeFunction<
ffi.Pointer<wire_cst_connect_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_connect_request');
late final _frbgen_breez_liquid_cst_new_box_autoadd_connect_request =
_frbgen_breez_liquid_cst_new_box_autoadd_connect_requestPtr
.asFunction<ffi.Pointer<wire_cst_connect_request> Function()>();
ffi.Pointer<wire_cst_get_info_request>
frbgen_breez_liquid_cst_new_box_autoadd_get_info_request() {
return _frbgen_breez_liquid_cst_new_box_autoadd_get_info_request();
}
late final _frbgen_breez_liquid_cst_new_box_autoadd_get_info_requestPtr =
_lookup<
ffi.NativeFunction<
ffi.Pointer<wire_cst_get_info_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_get_info_request');
late final _frbgen_breez_liquid_cst_new_box_autoadd_get_info_request =
_frbgen_breez_liquid_cst_new_box_autoadd_get_info_requestPtr
.asFunction<ffi.Pointer<wire_cst_get_info_request> Function()>();
ffi.Pointer<wire_cst_prepare_receive_request>
frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_request() {
return _frbgen_breez_liquid_cst_new_box_autoadd_prepare_receive_request();
@@ -306,6 +329,20 @@ class FlutterBreezLiquidBindings {
.asFunction<
ffi.Pointer<wire_cst_prepare_receive_response> Function()>();
ffi.Pointer<wire_cst_prepare_send_request>
frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request() {
return _frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request();
}
late final _frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_requestPtr =
_lookup<
ffi.NativeFunction<
ffi.Pointer<wire_cst_prepare_send_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request');
late final _frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_request =
_frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_requestPtr
.asFunction<ffi.Pointer<wire_cst_prepare_send_request> Function()>();
ffi.Pointer<wire_cst_prepare_send_response>
frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_response() {
return _frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_response();
@@ -320,6 +357,20 @@ class FlutterBreezLiquidBindings {
_frbgen_breez_liquid_cst_new_box_autoadd_prepare_send_responsePtr
.asFunction<ffi.Pointer<wire_cst_prepare_send_response> Function()>();
ffi.Pointer<wire_cst_restore_request>
frbgen_breez_liquid_cst_new_box_autoadd_restore_request() {
return _frbgen_breez_liquid_cst_new_box_autoadd_restore_request();
}
late final _frbgen_breez_liquid_cst_new_box_autoadd_restore_requestPtr =
_lookup<
ffi.NativeFunction<
ffi.Pointer<wire_cst_restore_request> Function()>>(
'frbgen_breez_liquid_cst_new_box_autoadd_restore_request');
late final _frbgen_breez_liquid_cst_new_box_autoadd_restore_request =
_frbgen_breez_liquid_cst_new_box_autoadd_restore_requestPtr
.asFunction<ffi.Pointer<wire_cst_restore_request> Function()>();
ffi.Pointer<ffi.Uint32> frbgen_breez_liquid_cst_new_box_autoadd_u_32(
int value,
) {
@@ -421,10 +472,27 @@ final class wire_cst_list_prim_u_8_strict extends ffi.Struct {
external int len;
}
final class wire_cst_prepare_receive_request extends ffi.Struct {
external ffi.Pointer<ffi.Uint64> payer_amount_sat;
final class wire_cst_connect_request extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> mnemonic;
external ffi.Pointer<ffi.Uint64> receiver_amount_sat;
external ffi.Pointer<wire_cst_list_prim_u_8_strict> data_dir;
@ffi.Int32()
external int network;
}
final class wire_cst_get_info_request extends ffi.Struct {
@ffi.Bool()
external bool with_scan;
}
final class wire_cst_prepare_receive_request extends ffi.Struct {
@ffi.Uint64()
external int payer_amount_sat;
}
final class wire_cst_prepare_send_request extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> invoice;
}
final class wire_cst_prepare_receive_response extends ffi.Struct {
@@ -437,6 +505,10 @@ final class wire_cst_prepare_receive_response extends ffi.Struct {
external int fees_sat;
}
final class wire_cst_restore_request extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> backup_path;
}
final class wire_cst_prepare_send_response extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> id;
@@ -477,6 +549,13 @@ final class wire_cst_list_payment extends ffi.Struct {
external int len;
}
final class wire_cst_get_info_response extends ffi.Struct {
@ffi.Uint64()
external int balance_sat;
external ffi.Pointer<wire_cst_list_prim_u_8_strict> pubkey;
}
final class wire_cst_PaymentError_Generic extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> err;
}
@@ -520,11 +599,4 @@ final class wire_cst_send_payment_response extends ffi.Struct {
external ffi.Pointer<wire_cst_list_prim_u_8_strict> txid;
}
final class wire_cst_wallet_info extends ffi.Struct {
@ffi.Uint64()
external int balance_sat;
external ffi.Pointer<wire_cst_list_prim_u_8_strict> pubkey;
}
const double LIQUID_CLAIM_TX_FEERATE = 0.1;