Skip to content

Commit d1ede7c

Browse files
committed
- bindings updates
1 parent 9630d52 commit d1ede7c

File tree

6 files changed

+114
-0
lines changed

6 files changed

+114
-0
lines changed

lightning-c-bindings/include/lightning.h

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2615,6 +2615,28 @@ typedef struct MUST_USE_STRUCT LDKDataLossProtect {
26152615
bool is_owned;
26162616
} LDKDataLossProtect;
26172617

2618+
typedef union LDKCResultPtr_NetAddress__u8 {
2619+
struct LDKNetAddress *result;
2620+
uint8_t *err;
2621+
} LDKCResultPtr_NetAddress__u8;
2622+
2623+
typedef struct LDKCResultTempl_NetAddress__u8 {
2624+
union LDKCResultPtr_NetAddress__u8 contents;
2625+
bool result_ok;
2626+
} LDKCResultTempl_NetAddress__u8;
2627+
2628+
typedef union LDKCResultPtr_CResultTempl_NetAddress__u8_____DecodeError {
2629+
struct LDKCResultTempl_NetAddress__u8 *result;
2630+
struct LDKDecodeError *err;
2631+
} LDKCResultPtr_CResultTempl_NetAddress__u8_____DecodeError;
2632+
2633+
typedef struct LDKCResultTempl_CResultTempl_NetAddress__u8_____DecodeError {
2634+
union LDKCResultPtr_CResultTempl_NetAddress__u8_____DecodeError contents;
2635+
bool result_ok;
2636+
} LDKCResultTempl_CResultTempl_NetAddress__u8_____DecodeError;
2637+
2638+
typedef struct LDKCResultTempl_CResultTempl_NetAddress__u8_____DecodeError LDKCResult_CResult_NetAddressu8ZDecodeErrorZ;
2639+
26182640

26192641

26202642
/**
@@ -3453,6 +3475,8 @@ typedef struct LDKCResultTempl_NetworkGraph__DecodeError {
34533475

34543476
typedef struct LDKCResultTempl_NetworkGraph__DecodeError LDKCResult_NetworkGraphDecodeErrorZ;
34553477

3478+
typedef struct LDKCResultTempl_NetAddress__u8 LDKCResult_NetAddressu8Z;
3479+
34563480
typedef struct LDKCVecTempl_RouteHop LDKCVec_RouteHopZ;
34573481

34583482
extern const void (*CVec_SpendableOutputDescriptorZ_free)(LDKCVec_SpendableOutputDescriptorZ);
@@ -3567,6 +3591,18 @@ extern const LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ (*CResult_C
35673591

35683592
extern const LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ (*CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err)(struct LDKDecodeError);
35693593

3594+
extern const void (*CResult_NetAddressu8Z_free)(LDKCResult_NetAddressu8Z);
3595+
3596+
extern const LDKCResult_NetAddressu8Z (*CResult_NetAddressu8Z_ok)(struct LDKNetAddress);
3597+
3598+
extern const LDKCResult_NetAddressu8Z (*CResult_NetAddressu8Z_err)(uint8_t);
3599+
3600+
extern const void (*CResult_CResult_NetAddressu8ZDecodeErrorZ_free)(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ);
3601+
3602+
extern const LDKCResult_CResult_NetAddressu8ZDecodeErrorZ (*CResult_CResult_NetAddressu8ZDecodeErrorZ_ok)(LDKCResult_NetAddressu8Z);
3603+
3604+
extern const LDKCResult_CResult_NetAddressu8ZDecodeErrorZ (*CResult_CResult_NetAddressu8ZDecodeErrorZ_err)(struct LDKDecodeError);
3605+
35703606
extern const void (*CVec_u64Z_free)(LDKCVec_u64Z);
35713607

35723608
extern const void (*CVec_UpdateAddHTLCZ_free)(LDKCVec_UpdateAddHTLCZ);
@@ -4379,6 +4415,8 @@ struct LDKHTLCUpdate HTLCUpdate_read(struct LDKu8slice ser);
43794415

43804416
void ChannelMonitor_free(struct LDKChannelMonitor this_ptr);
43814417

4418+
LDKCVec_u8Z ChannelMonitor_write(const struct LDKChannelMonitor *obj);
4419+
43824420
/**
43834421
* Updates a ChannelMonitor on the basis of some new information provided by the Channel
43844422
* itself.
@@ -4996,6 +5034,8 @@ void ChannelManager_block_disconnected(const struct LDKChannelManager *this_arg,
49965034

49975035
struct LDKChannelMessageHandler ChannelManager_as_ChannelMessageHandler(const struct LDKChannelManager *this_arg);
49985036

5037+
LDKCVec_u8Z ChannelManager_write(const struct LDKChannelManager *obj);
5038+
49995039
void ChannelManagerReadArgs_free(struct LDKChannelManagerReadArgs this_ptr);
50005040

50015041
/**
@@ -6020,6 +6060,8 @@ struct LDKNetAddress NetAddress_clone(const struct LDKNetAddress *orig);
60206060

60216061
LDKCVec_u8Z NetAddress_write(const struct LDKNetAddress *obj);
60226062

6063+
LDKCResult_CResult_NetAddressu8ZDecodeErrorZ Result_read(struct LDKu8slice ser);
6064+
60236065
void UnsignedNodeAnnouncement_free(struct LDKUnsignedNodeAnnouncement this_ptr);
60246066

60256067
struct LDKUnsignedNodeAnnouncement UnsignedNodeAnnouncement_clone(const struct LDKUnsignedNodeAnnouncement *orig);

lightning-c-bindings/include/lightningpp.hpp

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1984,6 +1984,20 @@ class CResult_SpendableOutputDescriptorDecodeErrorZ {
19841984
const LDKCResult_SpendableOutputDescriptorDecodeErrorZ* operator &() const { return &self; }
19851985
const LDKCResult_SpendableOutputDescriptorDecodeErrorZ* operator ->() const { return &self; }
19861986
};
1987+
class CResult_NetAddressu8Z {
1988+
private:
1989+
LDKCResult_NetAddressu8Z self;
1990+
public:
1991+
CResult_NetAddressu8Z(const CResult_NetAddressu8Z&) = delete;
1992+
~CResult_NetAddressu8Z() { CResult_NetAddressu8Z_free(self); }
1993+
CResult_NetAddressu8Z(CResult_NetAddressu8Z&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NetAddressu8Z)); }
1994+
CResult_NetAddressu8Z(LDKCResult_NetAddressu8Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NetAddressu8Z)); }
1995+
operator LDKCResult_NetAddressu8Z() { LDKCResult_NetAddressu8Z res = self; memset(&self, 0, sizeof(LDKCResult_NetAddressu8Z)); return res; }
1996+
LDKCResult_NetAddressu8Z* operator &() { return &self; }
1997+
LDKCResult_NetAddressu8Z* operator ->() { return &self; }
1998+
const LDKCResult_NetAddressu8Z* operator &() const { return &self; }
1999+
const LDKCResult_NetAddressu8Z* operator ->() const { return &self; }
2000+
};
19872001
class CVec_UpdateFailMalformedHTLCZ {
19882002
private:
19892003
LDKCVec_UpdateFailMalformedHTLCZ self;
@@ -2306,6 +2320,20 @@ class CResult_ReplyShortChannelIdsEndDecodeErrorZ {
23062320
const LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* operator &() const { return &self; }
23072321
const LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* operator ->() const { return &self; }
23082322
};
2323+
class CResult_CResult_NetAddressu8ZDecodeErrorZ {
2324+
private:
2325+
LDKCResult_CResult_NetAddressu8ZDecodeErrorZ self;
2326+
public:
2327+
CResult_CResult_NetAddressu8ZDecodeErrorZ(const CResult_CResult_NetAddressu8ZDecodeErrorZ&) = delete;
2328+
~CResult_CResult_NetAddressu8ZDecodeErrorZ() { CResult_CResult_NetAddressu8ZDecodeErrorZ_free(self); }
2329+
CResult_CResult_NetAddressu8ZDecodeErrorZ(CResult_CResult_NetAddressu8ZDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CResult_NetAddressu8ZDecodeErrorZ)); }
2330+
CResult_CResult_NetAddressu8ZDecodeErrorZ(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ)); }
2331+
operator LDKCResult_CResult_NetAddressu8ZDecodeErrorZ() { LDKCResult_CResult_NetAddressu8ZDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ)); return res; }
2332+
LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator &() { return &self; }
2333+
LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator ->() { return &self; }
2334+
const LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator &() const { return &self; }
2335+
const LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator ->() const { return &self; }
2336+
};
23092337
class CVec_ChannelDetailsZ {
23102338
private:
23112339
LDKCVec_ChannelDetailsZ self;

lightning-c-bindings/src/c_types/derived.rs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,28 @@ pub static CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_ok: extern "C" f
275275
pub static CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_err: extern "C" fn (crate::ln::msgs::DecodeError) -> CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ =
276276
crate::c_types::CResultTempl::<crate::c_types::C2TupleTempl<crate::c_types::ThirtyTwoBytes, crate::ln::channelmanager::ChannelManager>, crate::ln::msgs::DecodeError>::err;
277277

278+
pub type CResult_NetAddressu8Z = crate::c_types::CResultTempl<crate::ln::msgs::NetAddress, u8>;
279+
#[no_mangle]
280+
pub static CResult_NetAddressu8Z_free: extern "C" fn(CResult_NetAddressu8Z) = crate::c_types::CResultTempl_free::<crate::ln::msgs::NetAddress, u8>;
281+
#[no_mangle]
282+
pub static CResult_NetAddressu8Z_ok: extern "C" fn (crate::ln::msgs::NetAddress) -> CResult_NetAddressu8Z =
283+
crate::c_types::CResultTempl::<crate::ln::msgs::NetAddress, u8>::ok;
284+
285+
#[no_mangle]
286+
pub static CResult_NetAddressu8Z_err: extern "C" fn (u8) -> CResult_NetAddressu8Z =
287+
crate::c_types::CResultTempl::<crate::ln::msgs::NetAddress, u8>::err;
288+
289+
pub type CResult_CResult_NetAddressu8ZDecodeErrorZ = crate::c_types::CResultTempl<crate::c_types::CResultTempl<crate::ln::msgs::NetAddress, u8>, crate::ln::msgs::DecodeError>;
290+
#[no_mangle]
291+
pub static CResult_CResult_NetAddressu8ZDecodeErrorZ_free: extern "C" fn(CResult_CResult_NetAddressu8ZDecodeErrorZ) = crate::c_types::CResultTempl_free::<crate::c_types::CResultTempl<crate::ln::msgs::NetAddress, u8>, crate::ln::msgs::DecodeError>;
292+
#[no_mangle]
293+
pub static CResult_CResult_NetAddressu8ZDecodeErrorZ_ok: extern "C" fn (CResult_NetAddressu8Z) -> CResult_CResult_NetAddressu8ZDecodeErrorZ =
294+
crate::c_types::CResultTempl::<crate::c_types::CResultTempl<crate::ln::msgs::NetAddress, u8>, crate::ln::msgs::DecodeError>::ok;
295+
296+
#[no_mangle]
297+
pub static CResult_CResult_NetAddressu8ZDecodeErrorZ_err: extern "C" fn (crate::ln::msgs::DecodeError) -> CResult_CResult_NetAddressu8ZDecodeErrorZ =
298+
crate::c_types::CResultTempl::<crate::c_types::CResultTempl<crate::ln::msgs::NetAddress, u8>, crate::ln::msgs::DecodeError>::err;
299+
278300
pub type CVec_u64Z = crate::c_types::CVecTempl<u64>;
279301
#[no_mangle]
280302
pub static CVec_u64Z_free: extern "C" fn(CVec_u64Z) = crate::c_types::CVecTempl_free::<u64>;

lightning-c-bindings/src/chain/channelmonitor.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,14 @@ impl ChannelMonitor {
447447
ret
448448
}
449449
}
450+
#[no_mangle]
451+
pub extern "C" fn ChannelMonitor_write(obj: *const ChannelMonitor) -> crate::c_types::derived::CVec_u8Z {
452+
crate::c_types::serialize_obj(unsafe { &*unsafe { &*obj }.inner })
453+
}
454+
#[no_mangle]
455+
pub(crate) extern "C" fn ChannelMonitor_write_void(obj: *const c_void) -> crate::c_types::derived::CVec_u8Z {
456+
crate::c_types::serialize_obj(unsafe { &*(obj as *const nativeChannelMonitor) })
457+
}
450458
/// Updates a ChannelMonitor on the basis of some new information provided by the Channel
451459
/// itself.
452460
///

lightning-c-bindings/src/ln/channelmanager.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -731,6 +731,14 @@ extern "C" fn ChannelManager_ChannelMessageHandler_get_and_clear_pending_msg_eve
731731
local_ret.into()
732732
}
733733

734+
#[no_mangle]
735+
pub extern "C" fn ChannelManager_write(obj: *const ChannelManager) -> crate::c_types::derived::CVec_u8Z {
736+
crate::c_types::serialize_obj(unsafe { &*unsafe { &*obj }.inner })
737+
}
738+
#[no_mangle]
739+
pub(crate) extern "C" fn ChannelManager_write_void(obj: *const c_void) -> crate::c_types::derived::CVec_u8Z {
740+
crate::c_types::serialize_obj(unsafe { &*(obj as *const nativeChannelManager) })
741+
}
734742

735743
use lightning::ln::channelmanager::ChannelManagerReadArgs as nativeChannelManagerReadArgsImport;
736744
type nativeChannelManagerReadArgs = nativeChannelManagerReadArgsImport<'static, crate::chain::keysinterface::ChannelKeys, crate::chain::Watch, crate::chain::chaininterface::BroadcasterInterface, crate::chain::keysinterface::KeysInterface, crate::chain::chaininterface::FeeEstimator, crate::util::logger::Logger>;

lightning-c-bindings/src/ln/msgs.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2411,6 +2411,12 @@ pub extern "C" fn NetAddress_clone(orig: &NetAddress) -> NetAddress {
24112411
pub extern "C" fn NetAddress_write(obj: *const NetAddress) -> crate::c_types::derived::CVec_u8Z {
24122412
crate::c_types::serialize_obj(&unsafe { &*obj }.to_native())
24132413
}
2414+
#[no_mangle]
2415+
pub extern "C" fn Result_read(ser: crate::c_types::u8slice) -> crate::c_types::derived::CResult_CResult_NetAddressu8ZDecodeErrorZ {
2416+
let res = crate::c_types::deserialize_obj(ser);
2417+
let mut local_res = match res { Ok(mut o) => crate::c_types::CResultTempl::ok( { let mut local_res_0 = match o { Ok(mut o) => crate::c_types::CResultTempl::ok( { crate::ln::msgs::NetAddress::native_into(o) }), Err(mut e) => crate::c_types::CResultTempl::err( { e }) }; local_res_0 }), Err(mut e) => crate::c_types::CResultTempl::err( { crate::ln::msgs::DecodeError { inner: Box::into_raw(Box::new(e)), is_owned: true } }) };
2418+
local_res
2419+
}
24142420

24152421
use lightning::ln::msgs::UnsignedNodeAnnouncement as nativeUnsignedNodeAnnouncementImport;
24162422
type nativeUnsignedNodeAnnouncement = nativeUnsignedNodeAnnouncementImport;

0 commit comments

Comments
 (0)