X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning-c-bindings%2Fsrc%2Flightning%2Fchain%2Fmod.rs;h=961897a7746b76eb6031b6e4eed96cc2c25d9acd;hb=4eb8bb460e025c3d79a47b25cfff6baf068679bb;hp=21a6b8ad78ba92654663f021c909342e670815eb;hpb=033f4f3b2750dcd5afc8b158d7474242b29b24f3;p=ldk-c-bindings diff --git a/lightning-c-bindings/src/lightning/chain/mod.rs b/lightning-c-bindings/src/lightning/chain/mod.rs index 21a6b8a..961897a 100644 --- a/lightning-c-bindings/src/lightning/chain/mod.rs +++ b/lightning-c-bindings/src/lightning/chain/mod.rs @@ -197,6 +197,14 @@ pub struct Access { } unsafe impl Send for Access {} unsafe impl Sync for Access {} +#[no_mangle] +pub(crate) extern "C" fn Access_clone_fields(orig: &Access) -> Access { + Access { + this_arg: orig.this_arg, + get_utxo: Clone::clone(&orig.get_utxo), + free: Clone::clone(&orig.free), + } +} use lightning::chain::Access as rustAccess; impl rustAccess for Access { @@ -247,6 +255,15 @@ pub struct Listen { } unsafe impl Send for Listen {} unsafe impl Sync for Listen {} +#[no_mangle] +pub(crate) extern "C" fn Listen_clone_fields(orig: &Listen) -> Listen { + Listen { + this_arg: orig.this_arg, + block_connected: Clone::clone(&orig.block_connected), + block_disconnected: Clone::clone(&orig.block_disconnected), + free: Clone::clone(&orig.free), + } +} use lightning::chain::Listen as rustListen; impl rustListen for Listen { @@ -364,6 +381,17 @@ pub struct Confirm { } unsafe impl Send for Confirm {} unsafe impl Sync for Confirm {} +#[no_mangle] +pub(crate) extern "C" fn Confirm_clone_fields(orig: &Confirm) -> Confirm { + Confirm { + this_arg: orig.this_arg, + transactions_confirmed: Clone::clone(&orig.transactions_confirmed), + transaction_unconfirmed: Clone::clone(&orig.transaction_unconfirmed), + best_block_updated: Clone::clone(&orig.best_block_updated), + get_relevant_txids: Clone::clone(&orig.get_relevant_txids), + free: Clone::clone(&orig.free), + } +} use lightning::chain::Confirm as rustConfirm; impl rustConfirm for Confirm { @@ -460,6 +488,16 @@ pub struct Watch { } unsafe impl Send for Watch {} unsafe impl Sync for Watch {} +#[no_mangle] +pub(crate) extern "C" fn Watch_clone_fields(orig: &Watch) -> Watch { + Watch { + this_arg: orig.this_arg, + watch_channel: Clone::clone(&orig.watch_channel), + update_channel: Clone::clone(&orig.update_channel), + release_pending_monitor_events: Clone::clone(&orig.release_pending_monitor_events), + free: Clone::clone(&orig.free), + } +} use lightning::chain::Watch as rustWatch; impl rustWatch for Watch { @@ -543,6 +581,15 @@ pub struct Filter { } unsafe impl Send for Filter {} unsafe impl Sync for Filter {} +#[no_mangle] +pub(crate) extern "C" fn Filter_clone_fields(orig: &Filter) -> Filter { + Filter { + this_arg: orig.this_arg, + register_tx: Clone::clone(&orig.register_tx), + register_output: Clone::clone(&orig.register_output), + free: Clone::clone(&orig.free), + } +} use lightning::chain::Filter as rustFilter; impl rustFilter for Filter {