_Static_assert(sizeof(void*) <= 8, "Pointers must fit into 64 bits");
+// Int types across Windows/Linux are different, so make sure we're using the right headers.
+_Static_assert(sizeof(void*) == sizeof(uintptr_t), "stdints must be correct");
+_Static_assert(sizeof(void*) == sizeof(intptr_t), "stdints must be correct");
+_Static_assert(sizeof(uint64_t) == 8, "stdints must be correct");
+_Static_assert(sizeof(int64_t) == 8, "stdints must be correct");
+_Static_assert(sizeof(uint32_t) == 4, "stdints must be correct");
+_Static_assert(sizeof(int32_t) == 4, "stdints must be correct");
+_Static_assert(sizeof(uint16_t) == 2, "stdints must be correct");
+_Static_assert(sizeof(int16_t) == 2, "stdints must be correct");
+_Static_assert(sizeof(uint8_t) == 1, "stdints must be correct");
+_Static_assert(sizeof(int8_t) == 1, "stdints must be correct");
+
#define DECL_ARR_TYPE(ty, name) \
struct name##array { \
uint64_t arr_len; /* uint32_t would suffice but we want to align uint64_ts as well */ \
return 0;
}
+typedef int64_t (*invoker_l_lll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c);
+static invoker_l_lll js_invoke_function_l_lll;
+int CS_LDK_register_l_lll_invoker(invoker_l_lll invoker) {
+ js_invoke_function_l_lll = invoker;
+ return 0;
+}
+
typedef int64_t (*invoker_l_llll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c, int64_t d);
static invoker_l_llll js_invoke_function_l_llll;
int CS_LDK_register_l_llll_invoker(invoker_l_llll invoker) {
return 0;
}
-typedef int64_t (*invoker_l_lll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c);
-static invoker_l_lll js_invoke_function_l_lll;
-int CS_LDK_register_l_lll_invoker(invoker_l_lll invoker) {
- js_invoke_function_l_lll = invoker;
+typedef void (*invoker_void_lll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c);
+static invoker_void_lll js_invoke_function_void_lll;
+int CS_LDK_register_void_lll_invoker(invoker_void_lll invoker) {
+ js_invoke_function_void_lll = invoker;
return 0;
}
}
}
+static inline LDKBlindedFailure LDKBlindedFailure_from_cs(int32_t ord) {
+ switch (ord) {
+ case 0: return LDKBlindedFailure_FromIntroductionNode;
+ case 1: return LDKBlindedFailure_FromBlindedNode;
+ default: abort();
+ }
+}
+static inline int32_t LDKBlindedFailure_to_cs(LDKBlindedFailure val) {
+ switch (val) {
+ case LDKBlindedFailure_FromIntroductionNode: return 0;
+ case LDKBlindedFailure_FromBlindedNode: return 1;
+ default: abort();
+ }
+}
static inline LDKBolt11SemanticError LDKBolt11SemanticError_from_cs(int32_t ord) {
switch (ord) {
case 0: return LDKBolt11SemanticError_NoPaymentHash;
static inline LDKConfirmationTarget LDKConfirmationTarget_from_cs(int32_t ord) {
switch (ord) {
case 0: return LDKConfirmationTarget_OnChainSweep;
- case 1: return LDKConfirmationTarget_MaxAllowedNonAnchorChannelRemoteFee;
- case 2: return LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee;
- case 3: return LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee;
- case 4: return LDKConfirmationTarget_AnchorChannelFee;
- case 5: return LDKConfirmationTarget_NonAnchorChannelFee;
- case 6: return LDKConfirmationTarget_ChannelCloseMinimum;
+ case 1: return LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee;
+ case 2: return LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee;
+ case 3: return LDKConfirmationTarget_AnchorChannelFee;
+ case 4: return LDKConfirmationTarget_NonAnchorChannelFee;
+ case 5: return LDKConfirmationTarget_ChannelCloseMinimum;
default: abort();
}
}
static inline int32_t LDKConfirmationTarget_to_cs(LDKConfirmationTarget val) {
switch (val) {
case LDKConfirmationTarget_OnChainSweep: return 0;
- case LDKConfirmationTarget_MaxAllowedNonAnchorChannelRemoteFee: return 1;
- case LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee: return 2;
- case LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee: return 3;
- case LDKConfirmationTarget_AnchorChannelFee: return 4;
- case LDKConfirmationTarget_NonAnchorChannelFee: return 5;
- case LDKConfirmationTarget_ChannelCloseMinimum: return 6;
+ case LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee: return 1;
+ case LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee: return 2;
+ case LDKConfirmationTarget_AnchorChannelFee: return 3;
+ case LDKConfirmationTarget_NonAnchorChannelFee: return 4;
+ case LDKConfirmationTarget_ChannelCloseMinimum: return 5;
default: abort();
}
}
default: abort();
}
}
+static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) {
+ LDKCVec_u8Z ret = { .data = MALLOC(sizeof(int8_t) * orig->datalen, "LDKCVec_u8Z clone bytes"), .datalen = orig->datalen };
+ memcpy(ret.data, orig->data, sizeof(int8_t) * ret.datalen);
+ return ret;
+}
struct LDKThirtyTwoBytes BigEndianScalar_get_bytes (struct LDKBigEndianScalar* thing) {
LDKThirtyTwoBytes ret = { .data = *thing->big_endian_bytes };
return ret;
int8_t invalid_data_conv = obj->invalid_data;
return invalid_data_conv;
}
-static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) {
- LDKCVec_u8Z ret = { .data = MALLOC(sizeof(int8_t) * orig->datalen, "LDKCVec_u8Z clone bytes"), .datalen = orig->datalen };
- memcpy(ret.data, orig->data, sizeof(int8_t) * ret.datalen);
- return ret;
-}
-struct LDKWitness TxIn_get_witness (struct LDKTxIn* thing) { return Witness_clone(&thing->witness);}int8_tArray CS_LDK_TxIn_get_witness(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- LDKWitness ret_var = TxIn_get_witness(thing_conv);
- int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
- memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
- Witness_free(ret_var);
- return ret_arr;
-}
-
-struct LDKCVec_u8Z TxIn_get_script_sig (struct LDKTxIn* thing) { return CVec_u8Z_clone(&thing->script_sig);}int8_tArray CS_LDK_TxIn_get_script_sig(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- LDKCVec_u8Z ret_var = TxIn_get_script_sig(thing_conv);
- int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
- memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
- CVec_u8Z_free(ret_var);
- return ret_arr;
-}
-
-LDKThirtyTwoBytes TxIn_get_previous_txid (struct LDKTxIn* thing) { return thing->previous_txid;}int8_tArray CS_LDK_TxIn_get_previous_txid(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
- memcpy(ret_arr->elems, TxIn_get_previous_txid(thing_conv).data, 32);
- return ret_arr;
-}
-
-uint32_t TxIn_get_previous_vout (struct LDKTxIn* thing) { return thing->previous_vout;}int32_t CS_LDK_TxIn_get_previous_vout(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- int32_t ret_conv = TxIn_get_previous_vout(thing_conv);
- return ret_conv;
-}
-
-uint32_t TxIn_get_sequence (struct LDKTxIn* thing) { return thing->sequence;}int32_t CS_LDK_TxIn_get_sequence(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- int32_t ret_conv = TxIn_get_sequence(thing_conv);
- return ret_conv;
-}
-
-struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing) { return CVec_u8Z_clone(&thing->script_pubkey);}int8_tArray CS_LDK_TxOut_get_script_pubkey(int64_t thing) {
- LDKTxOut* thing_conv = (LDKTxOut*)untag_ptr(thing);
- LDKCVec_u8Z ret_var = TxOut_get_script_pubkey(thing_conv);
- int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
- memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
- CVec_u8Z_free(ret_var);
- return ret_arr;
-}
-
-uint64_t TxOut_get_value (struct LDKTxOut* thing) { return thing->value;}int64_t CS_LDK_TxOut_get_value(int64_t thing) {
- LDKTxOut* thing_conv = (LDKTxOut*)untag_ptr(thing);
- int64_t ret_conv = TxOut_get_value(thing_conv);
- return ret_conv;
-}
-
uint32_t CS_LDK_LDKCOption_u64Z_ty_from_ptr(int64_t ptr) {
LDKCOption_u64Z *obj = (LDKCOption_u64Z*)untag_ptr(ptr);
switch(obj->tag) {
LDKTxOut* output_ref = &obj->static_output.output;
return tag_ptr(output_ref, false);
}
+int8_tArray CS_LDK_LDKSpendableOutputDescriptor_StaticOutput_get_channel_keys_id(int64_t ptr) {
+ LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKSpendableOutputDescriptor_StaticOutput);
+ int8_tArray channel_keys_id_arr = init_int8_tArray(32, __LINE__);
+ memcpy(channel_keys_id_arr->elems, obj->static_output.channel_keys_id.data, 32);
+ return channel_keys_id_arr;
+}
int64_t CS_LDK_LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(int64_t ptr) {
LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)untag_ptr(ptr);
CHECK(obj->tag == LDKSpendableOutputDescriptor_DelayedPaymentOutput);
int32_t some_conv = obj->some;
return some_conv;
}
-static inline struct LDKCVec_u8Z C2Tuple_CVec_u8ZusizeZ_get_a(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR owner){
+static inline struct LDKCVec_u8Z C2Tuple_CVec_u8Zu64Z_get_a(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR owner){
return CVec_u8Z_clone(&owner->a);
}
-int8_tArray CS_LDK_C2Tuple_CVec_u8ZusizeZ_get_a(int64_t owner) {
- LDKC2Tuple_CVec_u8ZusizeZ* owner_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(owner);
- LDKCVec_u8Z ret_var = C2Tuple_CVec_u8ZusizeZ_get_a(owner_conv);
+int8_tArray CS_LDK_C2Tuple_CVec_u8Zu64Z_get_a(int64_t owner) {
+ LDKC2Tuple_CVec_u8Zu64Z* owner_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(owner);
+ LDKCVec_u8Z ret_var = C2Tuple_CVec_u8Zu64Z_get_a(owner_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
CVec_u8Z_free(ret_var);
return ret_arr;
}
-static inline uintptr_t C2Tuple_CVec_u8ZusizeZ_get_b(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR owner){
+static inline uint64_t C2Tuple_CVec_u8Zu64Z_get_b(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR owner){
return owner->b;
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_get_b(int64_t owner) {
- LDKC2Tuple_CVec_u8ZusizeZ* owner_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(owner);
- int64_t ret_conv = C2Tuple_CVec_u8ZusizeZ_get_b(owner_conv);
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_get_b(int64_t owner) {
+ LDKC2Tuple_CVec_u8Zu64Z* owner_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(owner);
+ int64_t ret_conv = C2Tuple_CVec_u8Zu64Z_get_b(owner_conv);
return ret_conv;
}
-static inline struct LDKC2Tuple_CVec_u8ZusizeZ CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR owner){
+static inline struct LDKC2Tuple_CVec_u8Zu64Z CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return C2Tuple_CVec_u8ZusizeZ_clone(&*owner->contents.result);
+ return C2Tuple_CVec_u8Zu64Z_clone(&*owner->contents.result);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(int64_t owner) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(owner);
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(owner_conv);
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(owner);
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(owner_conv);
return tag_ptr(ret_conv, true);
}
-static inline void CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR owner){
+static inline void CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return *owner->contents.err;
}
-void CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(int64_t owner) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(owner);
- CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(owner_conv);
+void CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(int64_t owner) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(owner);
+ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(owner_conv);
}
static inline struct LDKChannelDerivationParameters CResult_ChannelDerivationParametersDecodeErrorZ_get_ok(LDKCResult_ChannelDerivationParametersDecodeErrorZ *NONNULL_PTR owner){
CResult_NoneNoneZ_get_err(owner_conv);
}
-static inline struct LDKECDSASignature C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
- return owner->a;
-}
-int8_tArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(int64_t owner) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
- int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
- memcpy(ret_arr->elems, C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(owner_conv).compact_form, 64);
- return ret_arr;
-}
-
-static inline struct LDKCVec_ECDSASignatureZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
- return owner->b;
-}
-ptrArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(int64_t owner) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
- LDKCVec_ECDSASignatureZ ret_var = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(owner_conv);
- ptrArray ret_arr = NULL;
- ret_arr = init_ptrArray(ret_var.datalen, __LINE__);
- int8_tArray *ret_arr_ptr = (int8_tArray*)(((uint8_t*)ret_arr) + 8);
- for (size_t i = 0; i < ret_var.datalen; i++) {
- int8_tArray ret_conv_8_arr = init_int8_tArray(64, __LINE__);
- memcpy(ret_conv_8_arr->elems, ret_var.data[i].compact_form, 64);
- ret_arr_ptr[i] = ret_conv_8_arr;
- }
-
- return ret_arr;
-}
-
-static inline struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(&*owner->contents.result);
-}
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(int64_t owner) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(owner_conv);
- return tag_ptr(ret_conv, true);
-}
-
-static inline void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return *owner->contents.err;
-}
-void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(int64_t owner) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
- CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(owner_conv);
-}
-
-static inline struct LDKECDSASignature CResult_ECDSASignatureNoneZ_get_ok(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return *owner->contents.result;
-}
-int8_tArray CS_LDK_CResult_ECDSASignatureNoneZ_get_ok(int64_t owner) {
- LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
- int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
- memcpy(ret_arr->elems, CResult_ECDSASignatureNoneZ_get_ok(owner_conv).compact_form, 64);
- return ret_arr;
-}
-
-static inline void CResult_ECDSASignatureNoneZ_get_err(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return *owner->contents.err;
-}
-void CS_LDK_CResult_ECDSASignatureNoneZ_get_err(int64_t owner) {
- LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
- CResult_ECDSASignatureNoneZ_get_err(owner_conv);
-}
-
static inline struct LDKPublicKey CResult_PublicKeyNoneZ_get_ok(LDKCResult_PublicKeyNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
return *owner->contents.result;
CResult_SchnorrSignatureNoneZ_get_err(owner_conv);
}
+static inline struct LDKECDSASignature CResult_ECDSASignatureNoneZ_get_ok(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return *owner->contents.result;
+}
+int8_tArray CS_LDK_CResult_ECDSASignatureNoneZ_get_ok(int64_t owner) {
+ LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
+ memcpy(ret_arr->elems, CResult_ECDSASignatureNoneZ_get_ok(owner_conv).compact_form, 64);
+ return ret_arr;
+}
+
+static inline void CResult_ECDSASignatureNoneZ_get_err(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_ECDSASignatureNoneZ_get_err(int64_t owner) {
+ LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
+ CResult_ECDSASignatureNoneZ_get_err(owner_conv);
+}
+
+static inline struct LDKECDSASignature C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
+ return owner->a;
+}
+int8_tArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(int64_t owner) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
+ memcpy(ret_arr->elems, C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(owner_conv).compact_form, 64);
+ return ret_arr;
+}
+
+static inline struct LDKCVec_ECDSASignatureZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
+ return owner->b;
+}
+ptrArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(int64_t owner) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
+ LDKCVec_ECDSASignatureZ ret_var = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(owner_conv);
+ ptrArray ret_arr = NULL;
+ ret_arr = init_ptrArray(ret_var.datalen, __LINE__);
+ int8_tArray *ret_arr_ptr = (int8_tArray*)(((uint8_t*)ret_arr) + 8);
+ for (size_t i = 0; i < ret_var.datalen; i++) {
+ int8_tArray ret_conv_8_arr = init_int8_tArray(64, __LINE__);
+ memcpy(ret_conv_8_arr->elems, ret_var.data[i].compact_form, 64);
+ ret_arr_ptr[i] = ret_conv_8_arr;
+ }
+
+ return ret_arr;
+}
+
+static inline struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(&*owner->contents.result);
+}
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(owner_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+static inline void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(int64_t owner) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
+ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(owner_conv);
+}
+
typedef struct LDKChannelSigner_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
return ret_ref;
}
-LDKCResult_NoneNoneZ validate_holder_commitment_LDKChannelSigner_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx, LDKCVec_ThirtyTwoBytesZ preimages) {
+LDKCResult_NoneNoneZ validate_holder_commitment_LDKChannelSigner_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx, LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages) {
LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) this_arg;
LDKHolderCommitmentTransaction holder_tx_var = *holder_tx;
int64_t holder_tx_ref = 0;
holder_tx_var = HolderCommitmentTransaction_clone(&holder_tx_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_var);
holder_tx_ref = tag_ptr(holder_tx_var.inner, holder_tx_var.is_owned);
- LDKCVec_ThirtyTwoBytesZ preimages_var = preimages;
- ptrArray preimages_arr = NULL;
- preimages_arr = init_ptrArray(preimages_var.datalen, __LINE__);
- int8_tArray *preimages_arr_ptr = (int8_tArray*)(((uint8_t*)preimages_arr) + 8);
- for (size_t i = 0; i < preimages_var.datalen; i++) {
- int8_tArray preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
- memcpy(preimages_conv_8_arr->elems, preimages_var.data[i].data, 32);
- preimages_arr_ptr[i] = preimages_conv_8_arr;
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_var = outbound_htlc_preimages;
+ ptrArray outbound_htlc_preimages_arr = NULL;
+ outbound_htlc_preimages_arr = init_ptrArray(outbound_htlc_preimages_var.datalen, __LINE__);
+ int8_tArray *outbound_htlc_preimages_arr_ptr = (int8_tArray*)(((uint8_t*)outbound_htlc_preimages_arr) + 8);
+ for (size_t i = 0; i < outbound_htlc_preimages_var.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
+ memcpy(outbound_htlc_preimages_conv_8_arr->elems, outbound_htlc_preimages_var.data[i].data, 32);
+ outbound_htlc_preimages_arr_ptr[i] = outbound_htlc_preimages_conv_8_arr;
}
- FREE(preimages_var.data);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 2, holder_tx_ref, (int64_t)preimages_arr);
+ FREE(outbound_htlc_preimages_var.data);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 2, holder_tx_ref, (int64_t)outbound_htlc_preimages_arr);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
+LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKChannelSigner_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) {
+ LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) this_arg;
+ int64_t idx_conv = idx;
+ int8_tArray secret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(secret_arr->elems, *secret, 32);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 3, idx_conv, (int64_t)secret_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
}
LDKThirtyTwoBytes channel_keys_id_LDKChannelSigner_jcall(const void* this_arg) {
LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 3);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 4);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
channel_parameters_var = ChannelTransactionParameters_clone(&channel_parameters_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_var);
channel_parameters_ref = tag_ptr(channel_parameters_var.inner, channel_parameters_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 4, channel_parameters_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 5, channel_parameters_ref);
}
static void LDKChannelSigner_JCalls_cloned(LDKChannelSigner* new_obj) {
LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) new_obj->this_arg;
.get_per_commitment_point = get_per_commitment_point_LDKChannelSigner_jcall,
.release_commitment_secret = release_commitment_secret_LDKChannelSigner_jcall,
.validate_holder_commitment = validate_holder_commitment_LDKChannelSigner_jcall,
+ .validate_counterparty_revocation = validate_counterparty_revocation_LDKChannelSigner_jcall,
.channel_keys_id = channel_keys_id_LDKChannelSigner_jcall,
.provide_channel_parameters = provide_channel_parameters_LDKChannelSigner_jcall,
.free = LDKChannelSigner_JCalls_free,
return ret_arr;
}
-int64_t CS_LDK_ChannelSigner_validate_holder_commitment(int64_t this_arg, int64_t holder_tx, ptrArray preimages) {
+int64_t CS_LDK_ChannelSigner_validate_holder_commitment(int64_t this_arg, int64_t holder_tx, ptrArray outbound_htlc_preimages) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKChannelSigner* this_arg_conv = (LDKChannelSigner*)this_arg_ptr;
holder_tx_conv.is_owned = ptr_is_owned(holder_tx);
CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_conv);
holder_tx_conv.is_owned = false;
- LDKCVec_ThirtyTwoBytesZ preimages_constr;
- preimages_constr.datalen = preimages->arr_len;
- if (preimages_constr.datalen > 0)
- preimages_constr.data = MALLOC(preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_constr;
+ outbound_htlc_preimages_constr.datalen = outbound_htlc_preimages->arr_len;
+ if (outbound_htlc_preimages_constr.datalen > 0)
+ outbound_htlc_preimages_constr.data = MALLOC(outbound_htlc_preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
else
- preimages_constr.data = NULL;
- int8_tArray* preimages_vals = (void*) preimages->elems;
- for (size_t i = 0; i < preimages_constr.datalen; i++) {
- int8_tArray preimages_conv_8 = preimages_vals[i];
- LDKThirtyTwoBytes preimages_conv_8_ref;
- CHECK(preimages_conv_8->arr_len == 32);
- memcpy(preimages_conv_8_ref.data, preimages_conv_8->elems, 32); FREE(preimages_conv_8);
- preimages_constr.data[i] = preimages_conv_8_ref;
- }
- FREE(preimages);
+ outbound_htlc_preimages_constr.data = NULL;
+ int8_tArray* outbound_htlc_preimages_vals = (void*) outbound_htlc_preimages->elems;
+ for (size_t i = 0; i < outbound_htlc_preimages_constr.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8 = outbound_htlc_preimages_vals[i];
+ LDKThirtyTwoBytes outbound_htlc_preimages_conv_8_ref;
+ CHECK(outbound_htlc_preimages_conv_8->arr_len == 32);
+ memcpy(outbound_htlc_preimages_conv_8_ref.data, outbound_htlc_preimages_conv_8->elems, 32); FREE(outbound_htlc_preimages_conv_8);
+ outbound_htlc_preimages_constr.data[i] = outbound_htlc_preimages_conv_8_ref;
+ }
+ FREE(outbound_htlc_preimages);
LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ");
- *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv, preimages_constr);
+ *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv, outbound_htlc_preimages_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_ChannelSigner_validate_counterparty_revocation(int64_t this_arg, int64_t idx, int8_tArray secret) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelSigner* this_arg_conv = (LDKChannelSigner*)this_arg_ptr;
+ uint8_t secret_arr[32];
+ CHECK(secret->arr_len == 32);
+ memcpy(secret_arr, secret->elems, 32); FREE(secret);
+ uint8_t (*secret_ref)[32] = &secret_arr;
+ LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ");
+ *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref);
return tag_ptr(ret_conv, true);
}
FREE(j_calls);
}
}
-LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment_LDKEcdsaChannelSigner_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx, LDKCVec_ThirtyTwoBytesZ preimages) {
+LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment_LDKEcdsaChannelSigner_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx, LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages, LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages) {
LDKEcdsaChannelSigner_JCalls *j_calls = (LDKEcdsaChannelSigner_JCalls*) this_arg;
LDKCommitmentTransaction commitment_tx_var = *commitment_tx;
int64_t commitment_tx_ref = 0;
commitment_tx_var = CommitmentTransaction_clone(&commitment_tx_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var);
commitment_tx_ref = tag_ptr(commitment_tx_var.inner, commitment_tx_var.is_owned);
- LDKCVec_ThirtyTwoBytesZ preimages_var = preimages;
- ptrArray preimages_arr = NULL;
- preimages_arr = init_ptrArray(preimages_var.datalen, __LINE__);
- int8_tArray *preimages_arr_ptr = (int8_tArray*)(((uint8_t*)preimages_arr) + 8);
- for (size_t i = 0; i < preimages_var.datalen; i++) {
- int8_tArray preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
- memcpy(preimages_conv_8_arr->elems, preimages_var.data[i].data, 32);
- preimages_arr_ptr[i] = preimages_conv_8_arr;
+ LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages_var = inbound_htlc_preimages;
+ ptrArray inbound_htlc_preimages_arr = NULL;
+ inbound_htlc_preimages_arr = init_ptrArray(inbound_htlc_preimages_var.datalen, __LINE__);
+ int8_tArray *inbound_htlc_preimages_arr_ptr = (int8_tArray*)(((uint8_t*)inbound_htlc_preimages_arr) + 8);
+ for (size_t i = 0; i < inbound_htlc_preimages_var.datalen; i++) {
+ int8_tArray inbound_htlc_preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
+ memcpy(inbound_htlc_preimages_conv_8_arr->elems, inbound_htlc_preimages_var.data[i].data, 32);
+ inbound_htlc_preimages_arr_ptr[i] = inbound_htlc_preimages_conv_8_arr;
+ }
+
+ FREE(inbound_htlc_preimages_var.data);
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_var = outbound_htlc_preimages;
+ ptrArray outbound_htlc_preimages_arr = NULL;
+ outbound_htlc_preimages_arr = init_ptrArray(outbound_htlc_preimages_var.datalen, __LINE__);
+ int8_tArray *outbound_htlc_preimages_arr_ptr = (int8_tArray*)(((uint8_t*)outbound_htlc_preimages_arr) + 8);
+ for (size_t i = 0; i < outbound_htlc_preimages_var.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
+ memcpy(outbound_htlc_preimages_conv_8_arr->elems, outbound_htlc_preimages_var.data[i].data, 32);
+ outbound_htlc_preimages_arr_ptr[i] = outbound_htlc_preimages_conv_8_arr;
}
- FREE(preimages_var.data);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 5, commitment_tx_ref, (int64_t)preimages_arr);
+ FREE(outbound_htlc_preimages_var.data);
+ uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 6, commitment_tx_ref, (int64_t)inbound_htlc_preimages_arr, (int64_t)outbound_htlc_preimages_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKEcdsaChannelSigner_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) {
- LDKEcdsaChannelSigner_JCalls *j_calls = (LDKEcdsaChannelSigner_JCalls*) this_arg;
- int64_t idx_conv = idx;
- int8_tArray secret_arr = init_int8_tArray(32, __LINE__);
- memcpy(secret_arr->elems, *secret, 32);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 6, idx_conv, (int64_t)secret_arr);
- void* ret_ptr = untag_ptr(ret);
- CHECK_ACCESS(ret_ptr);
- LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
- FREE(untag_ptr(ret));
- return ret_conv;
-}
LDKCResult_ECDSASignatureNoneZ sign_holder_commitment_LDKEcdsaChannelSigner_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * commitment_tx) {
LDKEcdsaChannelSigner_JCalls *j_calls = (LDKEcdsaChannelSigner_JCalls*) this_arg;
LDKHolderCommitmentTransaction commitment_tx_var = *commitment_tx;
LDKEcdsaChannelSigner ret = {
.this_arg = (void*) calls,
.sign_counterparty_commitment = sign_counterparty_commitment_LDKEcdsaChannelSigner_jcall,
- .validate_counterparty_revocation = validate_counterparty_revocation_LDKEcdsaChannelSigner_jcall,
.sign_holder_commitment = sign_holder_commitment_LDKEcdsaChannelSigner_jcall,
.sign_justice_revoked_output = sign_justice_revoked_output_LDKEcdsaChannelSigner_jcall,
.sign_justice_revoked_htlc = sign_justice_revoked_htlc_LDKEcdsaChannelSigner_jcall,
*res_ptr = LDKEcdsaChannelSigner_init(o, ChannelSigner, pubkeys);
return tag_ptr(res_ptr, true);
}
-int64_t CS_LDK_EcdsaChannelSigner_sign_counterparty_commitment(int64_t this_arg, int64_t commitment_tx, ptrArray preimages) {
+int64_t CS_LDK_EcdsaChannelSigner_sign_counterparty_commitment(int64_t this_arg, int64_t commitment_tx, ptrArray inbound_htlc_preimages, ptrArray outbound_htlc_preimages) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKEcdsaChannelSigner* this_arg_conv = (LDKEcdsaChannelSigner*)this_arg_ptr;
commitment_tx_conv.is_owned = ptr_is_owned(commitment_tx);
CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv);
commitment_tx_conv.is_owned = false;
- LDKCVec_ThirtyTwoBytesZ preimages_constr;
- preimages_constr.datalen = preimages->arr_len;
- if (preimages_constr.datalen > 0)
- preimages_constr.data = MALLOC(preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
+ LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages_constr;
+ inbound_htlc_preimages_constr.datalen = inbound_htlc_preimages->arr_len;
+ if (inbound_htlc_preimages_constr.datalen > 0)
+ inbound_htlc_preimages_constr.data = MALLOC(inbound_htlc_preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
else
- preimages_constr.data = NULL;
- int8_tArray* preimages_vals = (void*) preimages->elems;
- for (size_t i = 0; i < preimages_constr.datalen; i++) {
- int8_tArray preimages_conv_8 = preimages_vals[i];
- LDKThirtyTwoBytes preimages_conv_8_ref;
- CHECK(preimages_conv_8->arr_len == 32);
- memcpy(preimages_conv_8_ref.data, preimages_conv_8->elems, 32); FREE(preimages_conv_8);
- preimages_constr.data[i] = preimages_conv_8_ref;
- }
- FREE(preimages);
+ inbound_htlc_preimages_constr.data = NULL;
+ int8_tArray* inbound_htlc_preimages_vals = (void*) inbound_htlc_preimages->elems;
+ for (size_t i = 0; i < inbound_htlc_preimages_constr.datalen; i++) {
+ int8_tArray inbound_htlc_preimages_conv_8 = inbound_htlc_preimages_vals[i];
+ LDKThirtyTwoBytes inbound_htlc_preimages_conv_8_ref;
+ CHECK(inbound_htlc_preimages_conv_8->arr_len == 32);
+ memcpy(inbound_htlc_preimages_conv_8_ref.data, inbound_htlc_preimages_conv_8->elems, 32); FREE(inbound_htlc_preimages_conv_8);
+ inbound_htlc_preimages_constr.data[i] = inbound_htlc_preimages_conv_8_ref;
+ }
+ FREE(inbound_htlc_preimages);
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_constr;
+ outbound_htlc_preimages_constr.datalen = outbound_htlc_preimages->arr_len;
+ if (outbound_htlc_preimages_constr.datalen > 0)
+ outbound_htlc_preimages_constr.data = MALLOC(outbound_htlc_preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
+ else
+ outbound_htlc_preimages_constr.data = NULL;
+ int8_tArray* outbound_htlc_preimages_vals = (void*) outbound_htlc_preimages->elems;
+ for (size_t i = 0; i < outbound_htlc_preimages_constr.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8 = outbound_htlc_preimages_vals[i];
+ LDKThirtyTwoBytes outbound_htlc_preimages_conv_8_ref;
+ CHECK(outbound_htlc_preimages_conv_8->arr_len == 32);
+ memcpy(outbound_htlc_preimages_conv_8_ref.data, outbound_htlc_preimages_conv_8->elems, 32); FREE(outbound_htlc_preimages_conv_8);
+ outbound_htlc_preimages_constr.data[i] = outbound_htlc_preimages_conv_8_ref;
+ }
+ FREE(outbound_htlc_preimages);
LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv, preimages_constr);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_EcdsaChannelSigner_validate_counterparty_revocation(int64_t this_arg, int64_t idx, int8_tArray secret) {
- void* this_arg_ptr = untag_ptr(this_arg);
- if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
- LDKEcdsaChannelSigner* this_arg_conv = (LDKEcdsaChannelSigner*)this_arg_ptr;
- uint8_t secret_arr[32];
- CHECK(secret->arr_len == 32);
- memcpy(secret_arr, secret->elems, 32); FREE(secret);
- uint8_t (*secret_ref)[32] = &secret_arr;
- LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ");
- *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref);
+ *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv, inbound_htlc_preimages_constr, outbound_htlc_preimages_constr);
return tag_ptr(ret_conv, true);
}
jboolean some_conv = obj->some;
return some_conv;
}
-static inline LDKCVec_CVec_u8ZZ CVec_CVec_u8ZZ_clone(const LDKCVec_CVec_u8ZZ *orig) {
- LDKCVec_CVec_u8ZZ ret = { .data = MALLOC(sizeof(LDKCVec_u8Z) * orig->datalen, "LDKCVec_CVec_u8ZZ clone bytes"), .datalen = orig->datalen };
- for (size_t i = 0; i < ret.datalen; i++) {
- ret.data[i] = CVec_u8Z_clone(&orig->data[i]);
- }
- return ret;
-}
-static inline struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){
+static inline struct LDKWitness CResult_WitnessNoneZ_get_ok(LDKCResult_WitnessNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return CVec_CVec_u8ZZ_clone(&*owner->contents.result);
+ return Witness_clone(&*owner->contents.result);
}
-ptrArray CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_get_ok(int64_t owner) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(owner);
- LDKCVec_CVec_u8ZZ ret_var = CResult_CVec_CVec_u8ZZNoneZ_get_ok(owner_conv);
- ptrArray ret_arr = NULL;
- ret_arr = init_ptrArray(ret_var.datalen, __LINE__);
- int8_tArray *ret_arr_ptr = (int8_tArray*)(((uint8_t*)ret_arr) + 8);
- for (size_t i = 0; i < ret_var.datalen; i++) {
- LDKCVec_u8Z ret_conv_8_var = ret_var.data[i];
- int8_tArray ret_conv_8_arr = init_int8_tArray(ret_conv_8_var.datalen, __LINE__);
- memcpy(ret_conv_8_arr->elems, ret_conv_8_var.data, ret_conv_8_var.datalen);
- CVec_u8Z_free(ret_conv_8_var);
- ret_arr_ptr[i] = ret_conv_8_arr;
- }
-
- FREE(ret_var.data);
+int8_tArray CS_LDK_CResult_WitnessNoneZ_get_ok(int64_t owner) {
+ LDKCResult_WitnessNoneZ* owner_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(owner);
+ LDKWitness ret_var = CResult_WitnessNoneZ_get_ok(owner_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ Witness_free(ret_var);
return ret_arr;
}
-static inline void CResult_CVec_CVec_u8ZZNoneZ_get_err(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){
+static inline void CResult_WitnessNoneZ_get_err(LDKCResult_WitnessNoneZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return *owner->contents.err;
}
-void CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_get_err(int64_t owner) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(owner);
- CResult_CVec_CVec_u8ZZNoneZ_get_err(owner_conv);
+void CS_LDK_CResult_WitnessNoneZ_get_err(int64_t owner) {
+ LDKCResult_WitnessNoneZ* owner_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(owner);
+ CResult_WitnessNoneZ_get_err(owner_conv);
}
static inline struct LDKInMemorySigner CResult_InMemorySignerDecodeErrorZ_get_ok(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner){
CResult_TransactionNoneZ_get_err(owner_conv);
}
+uint32_t CS_LDK_LDKCandidateRouteHop_ty_from_ptr(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ switch(obj->tag) {
+ case LDKCandidateRouteHop_FirstHop: return 0;
+ case LDKCandidateRouteHop_PublicHop: return 1;
+ case LDKCandidateRouteHop_PrivateHop: return 2;
+ case LDKCandidateRouteHop_Blinded: return 3;
+ case LDKCandidateRouteHop_OneHopBlinded: return 4;
+ default: abort();
+ }
+}
+int64_t CS_LDK_LDKCandidateRouteHop_FirstHop_get_first_hop(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_FirstHop);
+ LDKFirstHopCandidate first_hop_var = obj->first_hop;
+ int64_t first_hop_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hop_var);
+ first_hop_ref = tag_ptr(first_hop_var.inner, false);
+ return first_hop_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_PublicHop_get_public_hop(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_PublicHop);
+ LDKPublicHopCandidate public_hop_var = obj->public_hop;
+ int64_t public_hop_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(public_hop_var);
+ public_hop_ref = tag_ptr(public_hop_var.inner, false);
+ return public_hop_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_PrivateHop_get_private_hop(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_PrivateHop);
+ LDKPrivateHopCandidate private_hop_var = obj->private_hop;
+ int64_t private_hop_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(private_hop_var);
+ private_hop_ref = tag_ptr(private_hop_var.inner, false);
+ return private_hop_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_Blinded_get_blinded(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_Blinded);
+ LDKBlindedPathCandidate blinded_var = obj->blinded;
+ int64_t blinded_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(blinded_var);
+ blinded_ref = tag_ptr(blinded_var.inner, false);
+ return blinded_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_OneHopBlinded_get_one_hop_blinded(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_OneHopBlinded);
+ LDKOneHopBlindedPathCandidate one_hop_blinded_var = obj->one_hop_blinded;
+ int64_t one_hop_blinded_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(one_hop_blinded_var);
+ one_hop_blinded_ref = tag_ptr(one_hop_blinded_var.inner, false);
+ return one_hop_blinded_ref;
+}
typedef struct LDKScoreLookUp_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
FREE(j_calls);
}
}
-uint64_t channel_penalty_msat_LDKScoreLookUp_jcall(const void* this_arg, uint64_t short_channel_id, const LDKNodeId * source, const LDKNodeId * target, LDKChannelUsage usage, const LDKProbabilisticScoringFeeParameters * score_params) {
+uint64_t channel_penalty_msat_LDKScoreLookUp_jcall(const void* this_arg, const LDKCandidateRouteHop * candidate, LDKChannelUsage usage, const LDKProbabilisticScoringFeeParameters * score_params) {
LDKScoreLookUp_JCalls *j_calls = (LDKScoreLookUp_JCalls*) this_arg;
- int64_t short_channel_id_conv = short_channel_id;
- LDKNodeId source_var = *source;
- int64_t source_ref = 0;
- source_var = NodeId_clone(&source_var);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(source_var);
- source_ref = tag_ptr(source_var.inner, source_var.is_owned);
- LDKNodeId target_var = *target;
- int64_t target_ref = 0;
- target_var = NodeId_clone(&target_var);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(target_var);
- target_ref = tag_ptr(target_var.inner, target_var.is_owned);
+ LDKCandidateRouteHop *ret_candidate = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop ret conversion");
+ *ret_candidate = CandidateRouteHop_clone(candidate);
+ int64_t ref_candidate = tag_ptr(ret_candidate, true);
LDKChannelUsage usage_var = usage;
int64_t usage_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(usage_var);
score_params_var = ProbabilisticScoringFeeParameters_clone(&score_params_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(score_params_var);
score_params_ref = tag_ptr(score_params_var.inner, score_params_var.is_owned);
- return js_invoke_function_l_lllll(j_calls->instance_ptr, 16, short_channel_id_conv, source_ref, target_ref, usage_ref, score_params_ref);
+ return js_invoke_function_l_lll(j_calls->instance_ptr, 16, ref_candidate, usage_ref, score_params_ref);
}
static void LDKScoreLookUp_JCalls_cloned(LDKScoreLookUp* new_obj) {
LDKScoreLookUp_JCalls *j_calls = (LDKScoreLookUp_JCalls*) new_obj->this_arg;
*res_ptr = LDKScoreLookUp_init(o);
return tag_ptr(res_ptr, true);
}
-int64_t CS_LDK_ScoreLookUp_channel_penalty_msat(int64_t this_arg, int64_t short_channel_id, int64_t source, int64_t target, int64_t usage, int64_t score_params) {
+int64_t CS_LDK_ScoreLookUp_channel_penalty_msat(int64_t this_arg, int64_t candidate, int64_t usage, int64_t score_params) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreLookUp* this_arg_conv = (LDKScoreLookUp*)this_arg_ptr;
- LDKNodeId source_conv;
- source_conv.inner = untag_ptr(source);
- source_conv.is_owned = ptr_is_owned(source);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(source_conv);
- source_conv.is_owned = false;
- LDKNodeId target_conv;
- target_conv.inner = untag_ptr(target);
- target_conv.is_owned = ptr_is_owned(target);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(target_conv);
- target_conv.is_owned = false;
+ LDKCandidateRouteHop* candidate_conv = (LDKCandidateRouteHop*)untag_ptr(candidate);
LDKChannelUsage usage_conv;
usage_conv.inner = untag_ptr(usage);
usage_conv.is_owned = ptr_is_owned(usage);
score_params_conv.is_owned = ptr_is_owned(score_params);
CHECK_INNER_FIELD_ACCESS_OR_NULL(score_params_conv);
score_params_conv.is_owned = false;
- int64_t ret_conv = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, short_channel_id, &source_conv, &target_conv, usage_conv, &score_params_conv);
+ int64_t ret_conv = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, candidate_conv, usage_conv, &score_params_conv);
return ret_conv;
}
FREE(j_calls);
}
}
-void payment_path_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id) {
+void payment_path_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
int64_t short_channel_id_conv = short_channel_id;
- js_invoke_function_void_ll(j_calls->instance_ptr, 17, path_ref, short_channel_id_conv);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_lll(j_calls->instance_ptr, 17, path_ref, short_channel_id_conv, duration_since_epoch_conv);
}
-void payment_path_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path) {
+void payment_path_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
path_var = Path_clone(&path_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 18, path_ref);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_ll(j_calls->instance_ptr, 18, path_ref, duration_since_epoch_conv);
}
-void probe_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id) {
+void probe_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
int64_t short_channel_id_conv = short_channel_id;
- js_invoke_function_void_ll(j_calls->instance_ptr, 19, path_ref, short_channel_id_conv);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_lll(j_calls->instance_ptr, 19, path_ref, short_channel_id_conv, duration_since_epoch_conv);
}
-void probe_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path) {
+void probe_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
path_var = Path_clone(&path_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 20, path_ref);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_ll(j_calls->instance_ptr, 20, path_ref, duration_since_epoch_conv);
+}
+void time_passed_LDKScoreUpdate_jcall(void* this_arg, uint64_t duration_since_epoch) {
+ LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_l(j_calls->instance_ptr, 21, duration_since_epoch_conv);
}
static void LDKScoreUpdate_JCalls_cloned(LDKScoreUpdate* new_obj) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) new_obj->this_arg;
.payment_path_successful = payment_path_successful_LDKScoreUpdate_jcall,
.probe_failed = probe_failed_LDKScoreUpdate_jcall,
.probe_successful = probe_successful_LDKScoreUpdate_jcall,
+ .time_passed = time_passed_LDKScoreUpdate_jcall,
.free = LDKScoreUpdate_JCalls_free,
};
return ret;
*res_ptr = LDKScoreUpdate_init(o);
return tag_ptr(res_ptr, true);
}
-void CS_LDK_ScoreUpdate_payment_path_failed(int64_t this_arg, int64_t path, int64_t short_channel_id) {
+void CS_LDK_ScoreUpdate_payment_path_failed(int64_t this_arg, int64_t path, int64_t short_channel_id, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id);
+ (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id, duration_since_epoch);
}
-void CS_LDK_ScoreUpdate_payment_path_successful(int64_t this_arg, int64_t path) {
+void CS_LDK_ScoreUpdate_payment_path_successful(int64_t this_arg, int64_t path, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, &path_conv);
+ (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, &path_conv, duration_since_epoch);
}
-void CS_LDK_ScoreUpdate_probe_failed(int64_t this_arg, int64_t path, int64_t short_channel_id) {
+void CS_LDK_ScoreUpdate_probe_failed(int64_t this_arg, int64_t path, int64_t short_channel_id, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->probe_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id);
+ (this_arg_conv->probe_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id, duration_since_epoch);
}
-void CS_LDK_ScoreUpdate_probe_successful(int64_t this_arg, int64_t path) {
+void CS_LDK_ScoreUpdate_probe_successful(int64_t this_arg, int64_t path, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->probe_successful)(this_arg_conv->this_arg, &path_conv);
+ (this_arg_conv->probe_successful)(this_arg_conv->this_arg, &path_conv, duration_since_epoch);
+}
+
+void CS_LDK_ScoreUpdate_time_passed(int64_t this_arg, int64_t duration_since_epoch) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
+ (this_arg_conv->time_passed)(this_arg_conv->this_arg, duration_since_epoch);
}
typedef struct LDKLockableScore_JCalls {
}
LDKScoreLookUp read_lock_LDKLockableScore_jcall(const void* this_arg) {
LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 21);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 22);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKScoreLookUp ret_conv = *(LDKScoreLookUp*)(ret_ptr);
}
LDKScoreUpdate write_lock_LDKLockableScore_jcall(const void* this_arg) {
LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 22);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 23);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKScoreUpdate ret_conv = *(LDKScoreUpdate*)(ret_ptr);
}
LDKCVec_u8Z write_LDKWriteableScore_jcall(const void* this_arg) {
LDKWriteableScore_JCalls *j_calls = (LDKWriteableScore_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 23);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 24);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
return ret_ref;
}
+static inline struct LDKBlindedPayInfo C2Tuple_BlindedPayInfoBlindedPathZ_get_a(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
+ LDKBlindedPayInfo ret = owner->a;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_a(int64_t owner) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
+ LDKBlindedPayInfo ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_a(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKBlindedPath C2Tuple_BlindedPayInfoBlindedPathZ_get_b(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
+ LDKBlindedPath ret = owner->b;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_b(int64_t owner) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
+ LDKBlindedPath ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_b(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_clone(const LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ *orig) {
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ) * orig->datalen, "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ clone bytes"), .datalen = orig->datalen };
+ for (size_t i = 0; i < ret.datalen; i++) {
+ ret.data[i] = C2Tuple_BlindedPayInfoBlindedPathZ_clone(&orig->data[i]);
+ }
+ return ret;
+}
+static inline struct LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_clone(&*owner->contents.result);
+}
+int64_tArray CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* owner_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(owner);
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ ret_var = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(owner_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t l = 0; l < ret_var.datalen; l++) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv_37_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv_37_conv = ret_var.data[l];
+ ret_arr_ptr[l] = tag_ptr(ret_conv_37_conv, true);
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+static inline void CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(int64_t owner) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* owner_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(owner);
+ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(owner_conv);
+}
+
+static inline struct LDKOnionMessagePath CResult_OnionMessagePathNoneZ_get_ok(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
+ LDKOnionMessagePath ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_get_ok(int64_t owner) {
+ LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
+ LDKOnionMessagePath ret_var = CResult_OnionMessagePathNoneZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline void CResult_OnionMessagePathNoneZ_get_err(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_OnionMessagePathNoneZ_get_err(int64_t owner) {
+ LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
+ CResult_OnionMessagePathNoneZ_get_err(owner_conv);
+}
+
+static inline struct LDKCVec_BlindedPathZ CResult_CVec_BlindedPathZNoneZ_get_ok(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return CVec_BlindedPathZ_clone(&*owner->contents.result);
+}
+int64_tArray CS_LDK_CResult_CVec_BlindedPathZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_CVec_BlindedPathZNoneZ* owner_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(owner);
+ LDKCVec_BlindedPathZ ret_var = CResult_CVec_BlindedPathZNoneZ_get_ok(owner_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t n = 0; n < ret_var.datalen; n++) {
+ LDKBlindedPath ret_conv_13_var = ret_var.data[n];
+ int64_t ret_conv_13_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_13_var);
+ ret_conv_13_ref = tag_ptr(ret_conv_13_var.inner, ret_conv_13_var.is_owned);
+ ret_arr_ptr[n] = ret_conv_13_ref;
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+static inline void CResult_CVec_BlindedPathZNoneZ_get_err(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_CVec_BlindedPathZNoneZ_get_err(int64_t owner) {
+ LDKCResult_CVec_BlindedPathZNoneZ* owner_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(owner);
+ CResult_CVec_BlindedPathZNoneZ_get_err(owner_conv);
+}
+
static inline struct LDKInFlightHtlcs CResult_InFlightHtlcsDecodeErrorZ_get_ok(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR owner){
LDKInFlightHtlcs ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
-static inline struct LDKBlindedPayInfo C2Tuple_BlindedPayInfoBlindedPathZ_get_a(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
- LDKBlindedPayInfo ret = owner->a;
- ret.is_owned = false;
- return ret;
-}
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_a(int64_t owner) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
- LDKBlindedPayInfo ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_a(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
-}
-
-static inline struct LDKBlindedPath C2Tuple_BlindedPayInfoBlindedPathZ_get_b(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
- LDKBlindedPath ret = owner->b;
- ret.is_owned = false;
- return ret;
-}
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_b(int64_t owner) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
- LDKBlindedPath ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_b(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
-}
-
-static inline LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_clone(const LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ *orig) {
- LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ) * orig->datalen, "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ clone bytes"), .datalen = orig->datalen };
- for (size_t i = 0; i < ret.datalen; i++) {
- ret.data[i] = C2Tuple_BlindedPayInfoBlindedPathZ_clone(&orig->data[i]);
- }
- return ret;
-}
static inline LDKCVec_RouteHintZ CVec_RouteHintZ_clone(const LDKCVec_RouteHintZ *orig) {
LDKCVec_RouteHintZ ret = { .data = MALLOC(sizeof(LDKRouteHint) * orig->datalen, "LDKCVec_RouteHintZ clone bytes"), .datalen = orig->datalen };
for (size_t i = 0; i < ret.datalen; i++) {
FREE(j_calls);
}
}
-void log_LDKLogger_jcall(const void* this_arg, const LDKRecord * record) {
+void log_LDKLogger_jcall(const void* this_arg, LDKRecord record) {
LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg;
- LDKRecord record_var = *record;
+ LDKRecord record_var = record;
int64_t record_ref = 0;
- record_var = Record_clone(&record_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(record_var);
record_ref = tag_ptr(record_var.inner, record_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 24, record_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 25, record_ref);
}
static void LDKLogger_JCalls_cloned(LDKLogger* new_obj) {
LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) new_obj->this_arg;
}
return ret;
}
-static inline struct LDKThirtyTwoBytes C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
+static inline struct LDKThirtyTwoBytes C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
return ThirtyTwoBytes_clone(&owner->a);
}
-int8_tArray CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(int64_t owner) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* owner_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(owner);
+int8_tArray CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(owner);
int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
- memcpy(ret_arr->elems, C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(owner_conv).data, 32);
+ memcpy(ret_arr->elems, C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(owner_conv).data, 32);
return ret_arr;
}
-static inline struct LDKCOption_ThirtyTwoBytesZ C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
- return COption_ThirtyTwoBytesZ_clone(&owner->b);
+static inline uint32_t C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
+ return owner->b;
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(int64_t owner) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* owner_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(owner);
+int32_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(owner);
+ int32_t ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(owner_conv);
+ return ret_conv;
+}
+
+static inline struct LDKCOption_ThirtyTwoBytesZ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
+ return COption_ThirtyTwoBytesZ_clone(&owner->c);
+}
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(owner);
LDKCOption_ThirtyTwoBytesZ *ret_copy = MALLOC(sizeof(LDKCOption_ThirtyTwoBytesZ), "LDKCOption_ThirtyTwoBytesZ");
- *ret_copy = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(owner_conv);
+ *ret_copy = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(owner_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
-static inline LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_clone(const LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ *orig) {
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ) * orig->datalen, "LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ clone bytes"), .datalen = orig->datalen };
+static inline LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_clone(const LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ *orig) {
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret = { .data = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ) * orig->datalen, "LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ clone bytes"), .datalen = orig->datalen };
for (size_t i = 0; i < ret.datalen; i++) {
- ret.data[i] = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(&orig->data[i]);
+ ret.data[i] = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(&orig->data[i]);
}
return ret;
}
int8_tArray chain_hash_arr = init_int8_tArray(32, __LINE__);
memcpy(chain_hash_arr->elems, *chain_hash, 32);
int64_t short_channel_id_conv = short_channel_id;
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 25, (int64_t)chain_hash_arr, short_channel_id_conv);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 26, (int64_t)chain_hash_arr, short_channel_id_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKUtxoResult ret_conv = *(LDKUtxoResult*)(ret_ptr);
case LDKMessageSendEvent_SendOpenChannelV2: return 3;
case LDKMessageSendEvent_SendFundingCreated: return 4;
case LDKMessageSendEvent_SendFundingSigned: return 5;
- case LDKMessageSendEvent_SendTxAddInput: return 6;
- case LDKMessageSendEvent_SendTxAddOutput: return 7;
- case LDKMessageSendEvent_SendTxRemoveInput: return 8;
- case LDKMessageSendEvent_SendTxRemoveOutput: return 9;
- case LDKMessageSendEvent_SendTxComplete: return 10;
- case LDKMessageSendEvent_SendTxSignatures: return 11;
- case LDKMessageSendEvent_SendTxInitRbf: return 12;
- case LDKMessageSendEvent_SendTxAckRbf: return 13;
- case LDKMessageSendEvent_SendTxAbort: return 14;
- case LDKMessageSendEvent_SendChannelReady: return 15;
- case LDKMessageSendEvent_SendAnnouncementSignatures: return 16;
- case LDKMessageSendEvent_UpdateHTLCs: return 17;
- case LDKMessageSendEvent_SendRevokeAndACK: return 18;
- case LDKMessageSendEvent_SendClosingSigned: return 19;
- case LDKMessageSendEvent_SendShutdown: return 20;
- case LDKMessageSendEvent_SendChannelReestablish: return 21;
- case LDKMessageSendEvent_SendChannelAnnouncement: return 22;
- case LDKMessageSendEvent_BroadcastChannelAnnouncement: return 23;
- case LDKMessageSendEvent_BroadcastChannelUpdate: return 24;
- case LDKMessageSendEvent_BroadcastNodeAnnouncement: return 25;
- case LDKMessageSendEvent_SendChannelUpdate: return 26;
- case LDKMessageSendEvent_HandleError: return 27;
- case LDKMessageSendEvent_SendChannelRangeQuery: return 28;
- case LDKMessageSendEvent_SendShortIdsQuery: return 29;
- case LDKMessageSendEvent_SendReplyChannelRange: return 30;
- case LDKMessageSendEvent_SendGossipTimestampFilter: return 31;
+ case LDKMessageSendEvent_SendStfu: return 6;
+ case LDKMessageSendEvent_SendSplice: return 7;
+ case LDKMessageSendEvent_SendSpliceAck: return 8;
+ case LDKMessageSendEvent_SendSpliceLocked: return 9;
+ case LDKMessageSendEvent_SendTxAddInput: return 10;
+ case LDKMessageSendEvent_SendTxAddOutput: return 11;
+ case LDKMessageSendEvent_SendTxRemoveInput: return 12;
+ case LDKMessageSendEvent_SendTxRemoveOutput: return 13;
+ case LDKMessageSendEvent_SendTxComplete: return 14;
+ case LDKMessageSendEvent_SendTxSignatures: return 15;
+ case LDKMessageSendEvent_SendTxInitRbf: return 16;
+ case LDKMessageSendEvent_SendTxAckRbf: return 17;
+ case LDKMessageSendEvent_SendTxAbort: return 18;
+ case LDKMessageSendEvent_SendChannelReady: return 19;
+ case LDKMessageSendEvent_SendAnnouncementSignatures: return 20;
+ case LDKMessageSendEvent_UpdateHTLCs: return 21;
+ case LDKMessageSendEvent_SendRevokeAndACK: return 22;
+ case LDKMessageSendEvent_SendClosingSigned: return 23;
+ case LDKMessageSendEvent_SendShutdown: return 24;
+ case LDKMessageSendEvent_SendChannelReestablish: return 25;
+ case LDKMessageSendEvent_SendChannelAnnouncement: return 26;
+ case LDKMessageSendEvent_BroadcastChannelAnnouncement: return 27;
+ case LDKMessageSendEvent_BroadcastChannelUpdate: return 28;
+ case LDKMessageSendEvent_BroadcastNodeAnnouncement: return 29;
+ case LDKMessageSendEvent_SendChannelUpdate: return 30;
+ case LDKMessageSendEvent_HandleError: return 31;
+ case LDKMessageSendEvent_SendChannelRangeQuery: return 32;
+ case LDKMessageSendEvent_SendShortIdsQuery: return 33;
+ case LDKMessageSendEvent_SendReplyChannelRange: return 34;
+ case LDKMessageSendEvent_SendGossipTimestampFilter: return 35;
default: abort();
}
}
msg_ref = tag_ptr(msg_var.inner, false);
return msg_ref;
}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendStfu_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendStfu);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_stfu.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendStfu_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendStfu);
+ LDKStfu msg_var = obj->send_stfu.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendSplice_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSplice);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_splice.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendSplice_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSplice);
+ LDKSplice msg_var = obj->send_splice.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendSpliceAck_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceAck);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_splice_ack.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendSpliceAck_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceAck);
+ LDKSpliceAck msg_var = obj->send_splice_ack.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendSpliceLocked_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceLocked);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_splice_locked.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendSpliceLocked_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceLocked);
+ LDKSpliceLocked msg_var = obj->send_splice_locked.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
int8_tArray CS_LDK_LDKMessageSendEvent_SendTxAddInput_get_node_id(int64_t ptr) {
LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
CHECK(obj->tag == LDKMessageSendEvent_SendTxAddInput);
return some_arr;
}
+static inline struct LDKPendingHTLCInfo CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR owner){
+ LDKPendingHTLCInfo ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(int64_t owner) {
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* owner_conv = (LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)untag_ptr(owner);
+ LDKPendingHTLCInfo ret_var = CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKInboundHTLCErr CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR owner){
+ LDKInboundHTLCErr ret = *owner->contents.err;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(int64_t owner) {
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* owner_conv = (LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)untag_ptr(owner);
+ LDKInboundHTLCErr ret_var = CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
static inline LDKCVec_HTLCOutputInCommitmentZ CVec_HTLCOutputInCommitmentZ_clone(const LDKCVec_HTLCOutputInCommitmentZ *orig) {
LDKCVec_HTLCOutputInCommitmentZ ret = { .data = MALLOC(sizeof(LDKHTLCOutputInCommitment) * orig->datalen, "LDKCVec_HTLCOutputInCommitmentZ clone bytes"), .datalen = orig->datalen };
for (size_t i = 0; i < ret.datalen; i++) {
return ret_ref;
}
+static inline struct LDKBlindedForward CResult_BlindedForwardDecodeErrorZ_get_ok(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR owner){
+ LDKBlindedForward ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_BlindedForwardDecodeErrorZ* owner_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(owner);
+ LDKBlindedForward ret_var = CResult_BlindedForwardDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_BlindedForwardDecodeErrorZ_get_err(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_BlindedForwardDecodeErrorZ* owner_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_BlindedForwardDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+uint32_t CS_LDK_LDKPendingHTLCRouting_ty_from_ptr(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ switch(obj->tag) {
+ case LDKPendingHTLCRouting_Forward: return 0;
+ case LDKPendingHTLCRouting_Receive: return 1;
+ case LDKPendingHTLCRouting_ReceiveKeysend: return 2;
+ default: abort();
+ }
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Forward_get_onion_packet(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Forward);
+ LDKOnionPacket onion_packet_var = obj->forward.onion_packet;
+ int64_t onion_packet_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(onion_packet_var);
+ onion_packet_ref = tag_ptr(onion_packet_var.inner, false);
+ return onion_packet_ref;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Forward_get_short_channel_id(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Forward);
+ int64_t short_channel_id_conv = obj->forward.short_channel_id;
+ return short_channel_id_conv;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Forward_get_blinded(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Forward);
+ LDKBlindedForward blinded_var = obj->forward.blinded;
+ int64_t blinded_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(blinded_var);
+ blinded_ref = tag_ptr(blinded_var.inner, false);
+ return blinded_ref;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Receive_get_payment_data(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ LDKFinalOnionHopData payment_data_var = obj->receive.payment_data;
+ int64_t payment_data_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_var);
+ payment_data_ref = tag_ptr(payment_data_var.inner, false);
+ return payment_data_ref;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Receive_get_payment_metadata(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ int64_t payment_metadata_ref = tag_ptr(&obj->receive.payment_metadata, false);
+ return payment_metadata_ref;
+}
+int32_t CS_LDK_LDKPendingHTLCRouting_Receive_get_incoming_cltv_expiry(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ int32_t incoming_cltv_expiry_conv = obj->receive.incoming_cltv_expiry;
+ return incoming_cltv_expiry_conv;
+}
+int8_tArray CS_LDK_LDKPendingHTLCRouting_Receive_get_phantom_shared_secret(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ int8_tArray phantom_shared_secret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(phantom_shared_secret_arr->elems, obj->receive.phantom_shared_secret.data, 32);
+ return phantom_shared_secret_arr;
+}
+int64_tArray CS_LDK_LDKPendingHTLCRouting_Receive_get_custom_tlvs(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_var = obj->receive.custom_tlvs;
+ int64_tArray custom_tlvs_arr = NULL;
+ custom_tlvs_arr = init_int64_tArray(custom_tlvs_var.datalen, __LINE__);
+ int64_t *custom_tlvs_arr_ptr = (int64_t*)(((uint8_t*)custom_tlvs_arr) + 8);
+ for (size_t x = 0; x < custom_tlvs_var.datalen; x++) {
+ LDKC2Tuple_u64CVec_u8ZZ* custom_tlvs_conv_23_conv = MALLOC(sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKC2Tuple_u64CVec_u8ZZ");
+ *custom_tlvs_conv_23_conv = custom_tlvs_var.data[x];
+ *custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone(custom_tlvs_conv_23_conv);
+ custom_tlvs_arr_ptr[x] = tag_ptr(custom_tlvs_conv_23_conv, true);
+ }
+
+ return custom_tlvs_arr;
+}
+jboolean CS_LDK_LDKPendingHTLCRouting_Receive_get_requires_blinded_error(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ jboolean requires_blinded_error_conv = obj->receive.requires_blinded_error;
+ return requires_blinded_error_conv;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_data(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ LDKFinalOnionHopData payment_data_var = obj->receive_keysend.payment_data;
+ int64_t payment_data_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_var);
+ payment_data_ref = tag_ptr(payment_data_var.inner, false);
+ return payment_data_ref;
+}
+int8_tArray CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_preimage(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ int8_tArray payment_preimage_arr = init_int8_tArray(32, __LINE__);
+ memcpy(payment_preimage_arr->elems, obj->receive_keysend.payment_preimage.data, 32);
+ return payment_preimage_arr;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_metadata(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ int64_t payment_metadata_ref = tag_ptr(&obj->receive_keysend.payment_metadata, false);
+ return payment_metadata_ref;
+}
+int32_t CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_incoming_cltv_expiry(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ int32_t incoming_cltv_expiry_conv = obj->receive_keysend.incoming_cltv_expiry;
+ return incoming_cltv_expiry_conv;
+}
+int64_tArray CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_custom_tlvs(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_var = obj->receive_keysend.custom_tlvs;
+ int64_tArray custom_tlvs_arr = NULL;
+ custom_tlvs_arr = init_int64_tArray(custom_tlvs_var.datalen, __LINE__);
+ int64_t *custom_tlvs_arr_ptr = (int64_t*)(((uint8_t*)custom_tlvs_arr) + 8);
+ for (size_t x = 0; x < custom_tlvs_var.datalen; x++) {
+ LDKC2Tuple_u64CVec_u8ZZ* custom_tlvs_conv_23_conv = MALLOC(sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKC2Tuple_u64CVec_u8ZZ");
+ *custom_tlvs_conv_23_conv = custom_tlvs_var.data[x];
+ *custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone(custom_tlvs_conv_23_conv);
+ custom_tlvs_arr_ptr[x] = tag_ptr(custom_tlvs_conv_23_conv, true);
+ }
+
+ return custom_tlvs_arr;
+}
+static inline struct LDKPendingHTLCRouting CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return PendingHTLCRouting_clone(&*owner->contents.result);
+}
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(owner);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_PendingHTLCRoutingDecodeErrorZ_get_err(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_PendingHTLCRoutingDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKPendingHTLCInfo CResult_PendingHTLCInfoDecodeErrorZ_get_ok(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR owner){
+ LDKPendingHTLCInfo ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(owner);
+ LDKPendingHTLCInfo ret_var = CResult_PendingHTLCInfoDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_PendingHTLCInfoDecodeErrorZ_get_err(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_PendingHTLCInfoDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline enum LDKBlindedFailure CResult_BlindedFailureDecodeErrorZ_get_ok(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return BlindedFailure_clone(&*owner->contents.result);
+}
+int32_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_BlindedFailureDecodeErrorZ* owner_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(owner);
+ int32_t ret_conv = LDKBlindedFailure_to_cs(CResult_BlindedFailureDecodeErrorZ_get_ok(owner_conv));
+ return ret_conv;
+}
+
+static inline struct LDKDecodeError CResult_BlindedFailureDecodeErrorZ_get_err(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_BlindedFailureDecodeErrorZ* owner_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_BlindedFailureDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline enum LDKChannelShutdownState CResult_ChannelShutdownStateDecodeErrorZ_get_ok(LDKCResult_ChannelShutdownStateDecodeErrorZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
return ChannelShutdownState_clone(&*owner->contents.result);
int64_t monitor_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_var);
monitor_ref = tag_ptr(monitor_var.inner, monitor_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 26, funding_txo_ref, monitor_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 27, funding_txo_ref, monitor_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ChannelMonitorUpdateStatusNoneZ ret_conv = *(LDKCResult_ChannelMonitorUpdateStatusNoneZ*)(ret_ptr);
update_var = ChannelMonitorUpdate_clone(&update_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var);
update_ref = tag_ptr(update_var.inner, update_var.is_owned);
- uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_ll(j_calls->instance_ptr, 27, funding_txo_ref, update_ref);
+ uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_ll(j_calls->instance_ptr, 28, funding_txo_ref, update_ref);
LDKChannelMonitorUpdateStatus ret_conv = LDKChannelMonitorUpdateStatus_from_cs(ret);
return ret_conv;
}
LDKCVec_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZZ release_pending_monitor_events_LDKWatch_jcall(const void* this_arg) {
LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 28);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 29);
LDKCVec_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
}
FREE(txs_var.data);
- js_invoke_function_void_l(j_calls->instance_ptr, 29, (int64_t)txs_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 30, (int64_t)txs_arr);
}
static void LDKBroadcasterInterface_JCalls_cloned(LDKBroadcasterInterface* new_obj) {
LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) new_obj->this_arg;
}
LDKThirtyTwoBytes get_secure_random_bytes_LDKEntropySource_jcall(const void* this_arg) {
LDKEntropySource_JCalls *j_calls = (LDKEntropySource_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 30);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 31);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
}
LDKThirtyTwoBytes get_inbound_payment_key_material_LDKNodeSigner_jcall(const void* this_arg) {
LDKNodeSigner_JCalls *j_calls = (LDKNodeSigner_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 31);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 32);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
LDKCResult_PublicKeyNoneZ get_node_id_LDKNodeSigner_jcall(const void* this_arg, LDKRecipient recipient) {
LDKNodeSigner_JCalls *j_calls = (LDKNodeSigner_JCalls*) this_arg;
int32_t recipient_conv = LDKRecipient_to_cs(recipient);
- uint64_t ret = js_invoke_function_l_Recipient(j_calls->instance_ptr, 32, recipient_conv);
+ uint64_t ret = js_invoke_function_l_Recipient(j_calls->instance_ptr, 33, recipient_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_PublicKeyNoneZ ret_conv = *(LDKCResult_PublicKeyNoneZ*)(ret_ptr);
LDKCOption_BigEndianScalarZ *tweak_copy = MALLOC(sizeof(LDKCOption_BigEndianScalarZ), "LDKCOption_BigEndianScalarZ");
*tweak_copy = tweak;
int64_t tweak_ref = tag_ptr(tweak_copy, true);
- uint64_t ret = js_invoke_function_l_Recipientll(j_calls->instance_ptr, 33, recipient_conv, (int64_t)other_key_arr, tweak_ref);
+ uint64_t ret = js_invoke_function_l_Recipientll(j_calls->instance_ptr, 34, recipient_conv, (int64_t)other_key_arr, tweak_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ThirtyTwoBytesNoneZ ret_conv = *(LDKCResult_ThirtyTwoBytesNoneZ*)(ret_ptr);
FREE(invoice_data_var.data);
int32_t recipient_conv = LDKRecipient_to_cs(recipient);
- uint64_t ret = js_invoke_function_l_llRecipient(j_calls->instance_ptr, 34, (int64_t)hrp_bytes_arr, (int64_t)invoice_data_arr, recipient_conv);
+ uint64_t ret = js_invoke_function_l_llRecipient(j_calls->instance_ptr, 35, (int64_t)hrp_bytes_arr, (int64_t)invoice_data_arr, recipient_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_RecoverableSignatureNoneZ ret_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKUnsignedInvoiceRequest
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_request_var);
invoice_request_ref = tag_ptr(invoice_request_var.inner, invoice_request_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 35, invoice_request_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 36, invoice_request_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_SchnorrSignatureNoneZ ret_conv = *(LDKCResult_SchnorrSignatureNoneZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKUnsignedBolt12Invoice
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_var);
invoice_ref = tag_ptr(invoice_var.inner, invoice_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 36, invoice_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 37, invoice_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_SchnorrSignatureNoneZ ret_conv = *(LDKCResult_SchnorrSignatureNoneZ*)(ret_ptr);
LDKUnsignedGossipMessage *msg_copy = MALLOC(sizeof(LDKUnsignedGossipMessage), "LDKUnsignedGossipMessage");
*msg_copy = msg;
int64_t msg_ref = tag_ptr(msg_copy, true);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 37, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 38, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ECDSASignatureNoneZ ret_conv = *(LDKCResult_ECDSASignatureNoneZ*)(ret_ptr);
int64_t channel_value_satoshis_conv = channel_value_satoshis;
int8_tArray user_channel_id_arr = init_int8_tArray(16, __LINE__);
memcpy(user_channel_id_arr->elems, user_channel_id.le_bytes, 16);
- int8_tArray ret = (int8_tArray)js_invoke_function_l_bll(j_calls->instance_ptr, 38, inbound_conv, channel_value_satoshis_conv, (int64_t)user_channel_id_arr);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_bll(j_calls->instance_ptr, 39, inbound_conv, channel_value_satoshis_conv, (int64_t)user_channel_id_arr);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
int64_t channel_value_satoshis_conv = channel_value_satoshis;
int8_tArray channel_keys_id_arr = init_int8_tArray(32, __LINE__);
memcpy(channel_keys_id_arr->elems, channel_keys_id.data, 32);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 39, channel_value_satoshis_conv, (int64_t)channel_keys_id_arr);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 40, channel_value_satoshis_conv, (int64_t)channel_keys_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKWriteableEcdsaChannelSigner ret_conv = *(LDKWriteableEcdsaChannelSigner*)(ret_ptr);
LDKu8slice reader_var = reader;
int8_tArray reader_arr = init_int8_tArray(reader_var.datalen, __LINE__);
memcpy(reader_arr->elems, reader_var.data, reader_var.datalen);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 40, (int64_t)reader_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 41, (int64_t)reader_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ ret_conv = *(LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_CVec_u8ZNoneZ get_destination_script_LDKSignerProvider_jcall(const void* this_arg) {
+LDKCResult_CVec_u8ZNoneZ get_destination_script_LDKSignerProvider_jcall(const void* this_arg, LDKThirtyTwoBytes channel_keys_id) {
LDKSignerProvider_JCalls *j_calls = (LDKSignerProvider_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 41);
+ int8_tArray channel_keys_id_arr = init_int8_tArray(32, __LINE__);
+ memcpy(channel_keys_id_arr->elems, channel_keys_id.data, 32);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 42, (int64_t)channel_keys_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_u8ZNoneZ ret_conv = *(LDKCResult_CVec_u8ZNoneZ*)(ret_ptr);
}
LDKCResult_ShutdownScriptNoneZ get_shutdown_scriptpubkey_LDKSignerProvider_jcall(const void* this_arg) {
LDKSignerProvider_JCalls *j_calls = (LDKSignerProvider_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 42);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 43);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ShutdownScriptNoneZ ret_conv = *(LDKCResult_ShutdownScriptNoneZ*)(ret_ptr);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_SignerProvider_get_destination_script(int64_t this_arg) {
+int64_t CS_LDK_SignerProvider_get_destination_script(int64_t this_arg, int8_tArray channel_keys_id) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKSignerProvider* this_arg_conv = (LDKSignerProvider*)this_arg_ptr;
+ LDKThirtyTwoBytes channel_keys_id_ref;
+ CHECK(channel_keys_id->arr_len == 32);
+ memcpy(channel_keys_id_ref.data, channel_keys_id->elems, 32); FREE(channel_keys_id);
LDKCResult_CVec_u8ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZNoneZ), "LDKCResult_CVec_u8ZNoneZ");
- *ret_conv = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg);
+ *ret_conv = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg, channel_keys_id_ref);
return tag_ptr(ret_conv, true);
}
uint32_t get_est_sat_per_1000_weight_LDKFeeEstimator_jcall(const void* this_arg, LDKConfirmationTarget confirmation_target) {
LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg;
int32_t confirmation_target_conv = LDKConfirmationTarget_to_cs(confirmation_target);
- return js_invoke_function_i_ConfirmationTarget(j_calls->instance_ptr, 43, confirmation_target_conv);
+ return js_invoke_function_i_ConfirmationTarget(j_calls->instance_ptr, 44, confirmation_target_conv);
}
static void LDKFeeEstimator_JCalls_cloned(LDKFeeEstimator* new_obj) {
LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) new_obj->this_arg;
return ret_conv;
}
+typedef struct LDKMessageRouter_JCalls {
+ atomic_size_t refcnt;
+ uint32_t instance_ptr;
+} LDKMessageRouter_JCalls;
+static void LDKMessageRouter_JCalls_free(void* this_arg) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
+ if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) {
+ FREE(j_calls);
+ }
+}
+LDKCResult_OnionMessagePathNoneZ find_path_LDKMessageRouter_jcall(const void* this_arg, LDKPublicKey sender, LDKCVec_PublicKeyZ peers, LDKDestination destination) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
+ int8_tArray sender_arr = init_int8_tArray(33, __LINE__);
+ memcpy(sender_arr->elems, sender.compressed_form, 33);
+ LDKCVec_PublicKeyZ peers_var = peers;
+ ptrArray peers_arr = NULL;
+ peers_arr = init_ptrArray(peers_var.datalen, __LINE__);
+ int8_tArray *peers_arr_ptr = (int8_tArray*)(((uint8_t*)peers_arr) + 8);
+ for (size_t i = 0; i < peers_var.datalen; i++) {
+ int8_tArray peers_conv_8_arr = init_int8_tArray(33, __LINE__);
+ memcpy(peers_conv_8_arr->elems, peers_var.data[i].compressed_form, 33);
+ peers_arr_ptr[i] = peers_conv_8_arr;
+ }
+
+ FREE(peers_var.data);
+ LDKDestination *destination_copy = MALLOC(sizeof(LDKDestination), "LDKDestination");
+ *destination_copy = destination;
+ int64_t destination_ref = tag_ptr(destination_copy, true);
+ uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 45, (int64_t)sender_arr, (int64_t)peers_arr, destination_ref);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_OnionMessagePathNoneZ ret_conv = *(LDKCResult_OnionMessagePathNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
+LDKCResult_CVec_BlindedPathZNoneZ create_blinded_paths_LDKMessageRouter_jcall(const void* this_arg, LDKPublicKey recipient, LDKCVec_PublicKeyZ peers) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
+ int8_tArray recipient_arr = init_int8_tArray(33, __LINE__);
+ memcpy(recipient_arr->elems, recipient.compressed_form, 33);
+ LDKCVec_PublicKeyZ peers_var = peers;
+ ptrArray peers_arr = NULL;
+ peers_arr = init_ptrArray(peers_var.datalen, __LINE__);
+ int8_tArray *peers_arr_ptr = (int8_tArray*)(((uint8_t*)peers_arr) + 8);
+ for (size_t i = 0; i < peers_var.datalen; i++) {
+ int8_tArray peers_conv_8_arr = init_int8_tArray(33, __LINE__);
+ memcpy(peers_conv_8_arr->elems, peers_var.data[i].compressed_form, 33);
+ peers_arr_ptr[i] = peers_conv_8_arr;
+ }
+
+ FREE(peers_var.data);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 46, (int64_t)recipient_arr, (int64_t)peers_arr);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_CVec_BlindedPathZNoneZ ret_conv = *(LDKCResult_CVec_BlindedPathZNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
+static void LDKMessageRouter_JCalls_cloned(LDKMessageRouter* new_obj) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) new_obj->this_arg;
+ atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
+}
+static inline LDKMessageRouter LDKMessageRouter_init (int64_t o) {
+ LDKMessageRouter_JCalls *calls = MALLOC(sizeof(LDKMessageRouter_JCalls), "LDKMessageRouter_JCalls");
+ atomic_init(&calls->refcnt, 1);
+ calls->instance_ptr = o;
+
+ LDKMessageRouter ret = {
+ .this_arg = (void*) calls,
+ .find_path = find_path_LDKMessageRouter_jcall,
+ .create_blinded_paths = create_blinded_paths_LDKMessageRouter_jcall,
+ .free = LDKMessageRouter_JCalls_free,
+ };
+ return ret;
+}
+uint64_t CS_LDK_LDKMessageRouter_new(int32_t o) {
+ LDKMessageRouter *res_ptr = MALLOC(sizeof(LDKMessageRouter), "LDKMessageRouter");
+ *res_ptr = LDKMessageRouter_init(o);
+ return tag_ptr(res_ptr, true);
+}
+int64_t CS_LDK_MessageRouter_find_path(int64_t this_arg, int8_tArray sender, ptrArray peers, int64_t destination) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKMessageRouter* this_arg_conv = (LDKMessageRouter*)this_arg_ptr;
+ LDKPublicKey sender_ref;
+ CHECK(sender->arr_len == 33);
+ memcpy(sender_ref.compressed_form, sender->elems, 33); FREE(sender);
+ LDKCVec_PublicKeyZ peers_constr;
+ peers_constr.datalen = peers->arr_len;
+ if (peers_constr.datalen > 0)
+ peers_constr.data = MALLOC(peers_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
+ else
+ peers_constr.data = NULL;
+ int8_tArray* peers_vals = (void*) peers->elems;
+ for (size_t i = 0; i < peers_constr.datalen; i++) {
+ int8_tArray peers_conv_8 = peers_vals[i];
+ LDKPublicKey peers_conv_8_ref;
+ CHECK(peers_conv_8->arr_len == 33);
+ memcpy(peers_conv_8_ref.compressed_form, peers_conv_8->elems, 33); FREE(peers_conv_8);
+ peers_constr.data[i] = peers_conv_8_ref;
+ }
+ FREE(peers);
+ void* destination_ptr = untag_ptr(destination);
+ CHECK_ACCESS(destination_ptr);
+ LDKDestination destination_conv = *(LDKDestination*)(destination_ptr);
+ destination_conv = Destination_clone((LDKDestination*)untag_ptr(destination));
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = (this_arg_conv->find_path)(this_arg_conv->this_arg, sender_ref, peers_constr, destination_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_MessageRouter_create_blinded_paths(int64_t this_arg, int8_tArray recipient, ptrArray peers) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKMessageRouter* this_arg_conv = (LDKMessageRouter*)this_arg_ptr;
+ LDKPublicKey recipient_ref;
+ CHECK(recipient->arr_len == 33);
+ memcpy(recipient_ref.compressed_form, recipient->elems, 33); FREE(recipient);
+ LDKCVec_PublicKeyZ peers_constr;
+ peers_constr.datalen = peers->arr_len;
+ if (peers_constr.datalen > 0)
+ peers_constr.data = MALLOC(peers_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
+ else
+ peers_constr.data = NULL;
+ int8_tArray* peers_vals = (void*) peers->elems;
+ for (size_t i = 0; i < peers_constr.datalen; i++) {
+ int8_tArray peers_conv_8 = peers_vals[i];
+ LDKPublicKey peers_conv_8_ref;
+ CHECK(peers_conv_8->arr_len == 33);
+ memcpy(peers_conv_8_ref.compressed_form, peers_conv_8->elems, 33); FREE(peers_conv_8);
+ peers_constr.data[i] = peers_conv_8_ref;
+ }
+ FREE(peers);
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = (this_arg_conv->create_blinded_paths)(this_arg_conv->this_arg, recipient_ref, peers_constr);
+ return tag_ptr(ret_conv, true);
+}
+
typedef struct LDKRouter_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
+ LDKMessageRouter_JCalls* MessageRouter;
} LDKRouter_JCalls;
static void LDKRouter_JCalls_free(void* this_arg) {
LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg;
int64_t inflight_htlcs_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(inflight_htlcs_var);
inflight_htlcs_ref = tag_ptr(inflight_htlcs_var.inner, inflight_htlcs_var.is_owned);
- uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 44, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref);
+ uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 47, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_RouteLightningErrorZ ret_conv = *(LDKCResult_RouteLightningErrorZ*)(ret_ptr);
memcpy(_payment_hash_arr->elems, _payment_hash.data, 32);
int8_tArray _payment_id_arr = init_int8_tArray(32, __LINE__);
memcpy(_payment_id_arr->elems, _payment_id.data, 32);
- uint64_t ret = js_invoke_function_l_llllll(j_calls->instance_ptr, 45, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref, (int64_t)_payment_hash_arr, (int64_t)_payment_id_arr);
+ uint64_t ret = js_invoke_function_l_llllll(j_calls->instance_ptr, 48, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref, (int64_t)_payment_hash_arr, (int64_t)_payment_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_RouteLightningErrorZ ret_conv = *(LDKCResult_RouteLightningErrorZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
+LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ create_blinded_payment_paths_LDKRouter_jcall(const void* this_arg, LDKPublicKey recipient, LDKCVec_ChannelDetailsZ first_hops, LDKReceiveTlvs tlvs, uint64_t amount_msats) {
+ LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg;
+ int8_tArray recipient_arr = init_int8_tArray(33, __LINE__);
+ memcpy(recipient_arr->elems, recipient.compressed_form, 33);
+ LDKCVec_ChannelDetailsZ first_hops_var = first_hops;
+ int64_tArray first_hops_arr = NULL;
+ first_hops_arr = init_int64_tArray(first_hops_var.datalen, __LINE__);
+ int64_t *first_hops_arr_ptr = (int64_t*)(((uint8_t*)first_hops_arr) + 8);
+ for (size_t q = 0; q < first_hops_var.datalen; q++) {
+ LDKChannelDetails first_hops_conv_16_var = first_hops_var.data[q];
+ int64_t first_hops_conv_16_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_var);
+ first_hops_conv_16_ref = tag_ptr(first_hops_conv_16_var.inner, first_hops_conv_16_var.is_owned);
+ first_hops_arr_ptr[q] = first_hops_conv_16_ref;
+ }
+
+ FREE(first_hops_var.data);
+ LDKReceiveTlvs tlvs_var = tlvs;
+ int64_t tlvs_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(tlvs_var);
+ tlvs_ref = tag_ptr(tlvs_var.inner, tlvs_var.is_owned);
+ int64_t amount_msats_conv = amount_msats;
+ uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 49, (int64_t)recipient_arr, (int64_t)first_hops_arr, tlvs_ref, amount_msats_conv);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret_conv = *(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
static void LDKRouter_JCalls_cloned(LDKRouter* new_obj) {
LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) new_obj->this_arg;
atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
+ atomic_fetch_add_explicit(&j_calls->MessageRouter->refcnt, 1, memory_order_release);
}
-static inline LDKRouter LDKRouter_init (int64_t o) {
+static inline LDKRouter LDKRouter_init (int64_t o, int64_t MessageRouter) {
LDKRouter_JCalls *calls = MALLOC(sizeof(LDKRouter_JCalls), "LDKRouter_JCalls");
atomic_init(&calls->refcnt, 1);
calls->instance_ptr = o;
.this_arg = (void*) calls,
.find_route = find_route_LDKRouter_jcall,
.find_route_with_id = find_route_with_id_LDKRouter_jcall,
+ .create_blinded_payment_paths = create_blinded_payment_paths_LDKRouter_jcall,
.free = LDKRouter_JCalls_free,
+ .MessageRouter = LDKMessageRouter_init(MessageRouter),
};
+ calls->MessageRouter = ret.MessageRouter.this_arg;
return ret;
}
-uint64_t CS_LDK_LDKRouter_new(int32_t o) {
+uint64_t CS_LDK_LDKRouter_new(int32_t o, int32_t MessageRouter) {
LDKRouter *res_ptr = MALLOC(sizeof(LDKRouter), "LDKRouter");
- *res_ptr = LDKRouter_init(o);
+ *res_ptr = LDKRouter_init(o, MessageRouter);
return tag_ptr(res_ptr, true);
}
int64_t CS_LDK_Router_find_route(int64_t this_arg, int8_tArray payer, int64_t route_params, int64_tArray first_hops, int64_t inflight_htlcs) {
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_Router_create_blinded_payment_paths(int64_t this_arg, int8_tArray recipient, int64_tArray first_hops, int64_t tlvs, int64_t amount_msats) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKRouter* this_arg_conv = (LDKRouter*)this_arg_ptr;
+ LDKPublicKey recipient_ref;
+ CHECK(recipient->arr_len == 33);
+ memcpy(recipient_ref.compressed_form, recipient->elems, 33); FREE(recipient);
+ LDKCVec_ChannelDetailsZ first_hops_constr;
+ first_hops_constr.datalen = first_hops->arr_len;
+ if (first_hops_constr.datalen > 0)
+ first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements");
+ else
+ first_hops_constr.data = NULL;
+ int64_t* first_hops_vals = first_hops->elems;
+ for (size_t q = 0; q < first_hops_constr.datalen; q++) {
+ int64_t first_hops_conv_16 = first_hops_vals[q];
+ LDKChannelDetails first_hops_conv_16_conv;
+ first_hops_conv_16_conv.inner = untag_ptr(first_hops_conv_16);
+ first_hops_conv_16_conv.is_owned = ptr_is_owned(first_hops_conv_16);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv);
+ first_hops_conv_16_conv = ChannelDetails_clone(&first_hops_conv_16_conv);
+ first_hops_constr.data[q] = first_hops_conv_16_conv;
+ }
+ FREE(first_hops);
+ LDKReceiveTlvs tlvs_conv;
+ tlvs_conv.inner = untag_ptr(tlvs);
+ tlvs_conv.is_owned = ptr_is_owned(tlvs);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(tlvs_conv);
+ tlvs_conv = ReceiveTlvs_clone(&tlvs_conv);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = (this_arg_conv->create_blinded_payment_paths)(this_arg_conv->this_arg, recipient_ref, first_hops_constr, tlvs_conv, amount_msats);
+ return tag_ptr(ret_conv, true);
+}
+
static inline struct LDKThirtyTwoBytes C2Tuple_ThirtyTwoBytesChannelManagerZ_get_a(LDKC2Tuple_ThirtyTwoBytesChannelManagerZ *NONNULL_PTR owner){
return ThirtyTwoBytes_clone(&owner->a);
}
}
uint16_t type_id_LDKType_jcall(const void* this_arg) {
LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg;
- return js_invoke_function_s_(j_calls->instance_ptr, 46);
+ return js_invoke_function_s_(j_calls->instance_ptr, 50);
}
LDKStr debug_str_LDKType_jcall(const void* this_arg) {
LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg;
- jstring ret = (jstring)js_invoke_function_l_(j_calls->instance_ptr, 47);
+ jstring ret = (jstring)js_invoke_function_l_(j_calls->instance_ptr, 51);
LDKStr ret_conv = str_ref_to_owned_c(ret);
return ret_conv;
}
LDKCVec_u8Z write_LDKType_jcall(const void* this_arg) {
LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 48);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 52);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
}
return ret;
}
+static inline struct LDKPublicKey C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR owner){
+ return owner->a;
+}
+int8_tArray CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(int64_t owner) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* owner_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(owner_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+static inline struct LDKCVec_SocketAddressZ C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR owner){
+ return CVec_SocketAddressZ_clone(&owner->b);
+}
+int64_tArray CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(int64_t owner) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* owner_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(owner);
+ LDKCVec_SocketAddressZ ret_var = C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(owner_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t p = 0; p < ret_var.datalen; p++) {
+ LDKSocketAddress *ret_conv_15_copy = MALLOC(sizeof(LDKSocketAddress), "LDKSocketAddress");
+ *ret_conv_15_copy = ret_var.data[p];
+ int64_t ret_conv_15_ref = tag_ptr(ret_conv_15_copy, true);
+ ret_arr_ptr[p] = ret_conv_15_ref;
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+static inline LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_clone(const LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ *orig) {
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ) * orig->datalen, "LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ clone bytes"), .datalen = orig->datalen };
+ for (size_t i = 0; i < ret.datalen; i++) {
+ ret.data[i] = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(&orig->data[i]);
+ }
+ return ret;
+}
typedef struct LDKOnionMessageContents_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
}
uint64_t tlv_type_LDKOnionMessageContents_jcall(const void* this_arg) {
LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) this_arg;
- return js_invoke_function_l_(j_calls->instance_ptr, 49);
+ return js_invoke_function_l_(j_calls->instance_ptr, 53);
}
LDKCVec_u8Z write_LDKOnionMessageContents_jcall(const void* this_arg) {
LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 50);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 54);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
memcpy(ret_ref.data, ret->elems, ret_ref.datalen); FREE(ret);
return ret_ref;
}
+LDKStr debug_str_LDKOnionMessageContents_jcall(const void* this_arg) {
+ LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) this_arg;
+ jstring ret = (jstring)js_invoke_function_l_(j_calls->instance_ptr, 55);
+ LDKStr ret_conv = str_ref_to_owned_c(ret);
+ return ret_conv;
+}
static void LDKOnionMessageContents_JCalls_cloned(LDKOnionMessageContents* new_obj) {
LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) new_obj->this_arg;
atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
.this_arg = (void*) calls,
.tlv_type = tlv_type_LDKOnionMessageContents_jcall,
.write = write_LDKOnionMessageContents_jcall,
+ .debug_str = debug_str_LDKOnionMessageContents_jcall,
.cloned = LDKOnionMessageContents_JCalls_cloned,
.free = LDKOnionMessageContents_JCalls_free,
};
return ret_arr;
}
+jstring CS_LDK_OnionMessageContents_debug_str(int64_t this_arg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKOnionMessageContents* this_arg_conv = (LDKOnionMessageContents*)this_arg_ptr;
+ LDKStr ret_str = (this_arg_conv->debug_str)(this_arg_conv->this_arg);
+ jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
+ Str_free(ret_str);
+ return ret_conv;
+}
+
uint32_t CS_LDK_LDKCOption_OnionMessageContentsZ_ty_from_ptr(int64_t ptr) {
LDKCOption_OnionMessageContentsZ *obj = (LDKCOption_OnionMessageContentsZ*)untag_ptr(ptr);
switch(obj->tag) {
return ret_ref;
}
+static inline struct LDKStfu CResult_StfuDecodeErrorZ_get_ok(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR owner){
+ LDKStfu ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_StfuDecodeErrorZ* owner_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(owner);
+ LDKStfu ret_var = CResult_StfuDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_StfuDecodeErrorZ_get_err(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_StfuDecodeErrorZ* owner_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_StfuDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKSplice CResult_SpliceDecodeErrorZ_get_ok(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR owner){
+ LDKSplice ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SpliceDecodeErrorZ* owner_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(owner);
+ LDKSplice ret_var = CResult_SpliceDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_SpliceDecodeErrorZ_get_err(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_SpliceDecodeErrorZ* owner_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_SpliceDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKSpliceAck CResult_SpliceAckDecodeErrorZ_get_ok(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR owner){
+ LDKSpliceAck ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SpliceAckDecodeErrorZ* owner_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(owner);
+ LDKSpliceAck ret_var = CResult_SpliceAckDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_SpliceAckDecodeErrorZ_get_err(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_SpliceAckDecodeErrorZ* owner_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_SpliceAckDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKSpliceLocked CResult_SpliceLockedDecodeErrorZ_get_ok(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR owner){
+ LDKSpliceLocked ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SpliceLockedDecodeErrorZ* owner_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(owner);
+ LDKSpliceLocked ret_var = CResult_SpliceLockedDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_SpliceLockedDecodeErrorZ_get_err(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_SpliceLockedDecodeErrorZ* owner_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_SpliceLockedDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline struct LDKTxAddInput CResult_TxAddInputDecodeErrorZ_get_ok(LDKCResult_TxAddInputDecodeErrorZ *NONNULL_PTR owner){
LDKTxAddInput ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
+static inline struct LDKOnionPacket CResult_OnionPacketDecodeErrorZ_get_ok(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR owner){
+ LDKOnionPacket ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_OnionPacketDecodeErrorZ* owner_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(owner);
+ LDKOnionPacket ret_var = CResult_OnionPacketDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_OnionPacketDecodeErrorZ_get_err(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_OnionPacketDecodeErrorZ* owner_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_OnionPacketDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline struct LDKUpdateAddHTLC CResult_UpdateAddHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner){
LDKUpdateAddHTLC ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
+static inline struct LDKFinalOnionHopData CResult_FinalOnionHopDataDecodeErrorZ_get_ok(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR owner){
+ LDKFinalOnionHopData ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* owner_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(owner);
+ LDKFinalOnionHopData ret_var = CResult_FinalOnionHopDataDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_FinalOnionHopDataDecodeErrorZ_get_err(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* owner_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_FinalOnionHopDataDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner){
LDKPing ret = *owner->contents.result;
ret.is_owned = false;
case LDKEvent_FundingGenerationReady: return 0;
case LDKEvent_PaymentClaimable: return 1;
case LDKEvent_PaymentClaimed: return 2;
- case LDKEvent_InvoiceRequestFailed: return 3;
- case LDKEvent_PaymentSent: return 4;
- case LDKEvent_PaymentFailed: return 5;
- case LDKEvent_PaymentPathSuccessful: return 6;
- case LDKEvent_PaymentPathFailed: return 7;
- case LDKEvent_ProbeSuccessful: return 8;
- case LDKEvent_ProbeFailed: return 9;
- case LDKEvent_PendingHTLCsForwardable: return 10;
- case LDKEvent_HTLCIntercepted: return 11;
- case LDKEvent_SpendableOutputs: return 12;
- case LDKEvent_PaymentForwarded: return 13;
- case LDKEvent_ChannelPending: return 14;
- case LDKEvent_ChannelReady: return 15;
- case LDKEvent_ChannelClosed: return 16;
- case LDKEvent_DiscardFunding: return 17;
- case LDKEvent_OpenChannelRequest: return 18;
- case LDKEvent_HTLCHandlingFailed: return 19;
- case LDKEvent_BumpTransaction: return 20;
+ case LDKEvent_ConnectionNeeded: return 3;
+ case LDKEvent_InvoiceRequestFailed: return 4;
+ case LDKEvent_PaymentSent: return 5;
+ case LDKEvent_PaymentFailed: return 6;
+ case LDKEvent_PaymentPathSuccessful: return 7;
+ case LDKEvent_PaymentPathFailed: return 8;
+ case LDKEvent_ProbeSuccessful: return 9;
+ case LDKEvent_ProbeFailed: return 10;
+ case LDKEvent_PendingHTLCsForwardable: return 11;
+ case LDKEvent_HTLCIntercepted: return 12;
+ case LDKEvent_SpendableOutputs: return 13;
+ case LDKEvent_PaymentForwarded: return 14;
+ case LDKEvent_ChannelPending: return 15;
+ case LDKEvent_ChannelReady: return 16;
+ case LDKEvent_ChannelClosed: return 17;
+ case LDKEvent_DiscardFunding: return 18;
+ case LDKEvent_OpenChannelRequest: return 19;
+ case LDKEvent_HTLCHandlingFailed: return 20;
+ case LDKEvent_BumpTransaction: return 21;
default: abort();
}
}
int64_t sender_intended_total_msat_ref = tag_ptr(&obj->payment_claimed.sender_intended_total_msat, false);
return sender_intended_total_msat_ref;
}
+int8_tArray CS_LDK_LDKEvent_ConnectionNeeded_get_node_id(int64_t ptr) {
+ LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKEvent_ConnectionNeeded);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->connection_needed.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_tArray CS_LDK_LDKEvent_ConnectionNeeded_get_addresses(int64_t ptr) {
+ LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKEvent_ConnectionNeeded);
+ LDKCVec_SocketAddressZ addresses_var = obj->connection_needed.addresses;
+ int64_tArray addresses_arr = NULL;
+ addresses_arr = init_int64_tArray(addresses_var.datalen, __LINE__);
+ int64_t *addresses_arr_ptr = (int64_t*)(((uint8_t*)addresses_arr) + 8);
+ for (size_t p = 0; p < addresses_var.datalen; p++) {
+ int64_t addresses_conv_15_ref = tag_ptr(&addresses_var.data[p], false);
+ addresses_arr_ptr[p] = addresses_conv_15_ref;
+ }
+
+ return addresses_arr;
+}
int8_tArray CS_LDK_LDKEvent_InvoiceRequestFailed_get_payment_id(int64_t ptr) {
LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
CHECK(obj->tag == LDKEvent_InvoiceRequestFailed);
int64_t channel_capacity_sats_ref = tag_ptr(&obj->channel_closed.channel_capacity_sats, false);
return channel_capacity_sats_ref;
}
+int64_t CS_LDK_LDKEvent_ChannelClosed_get_channel_funding_txo(int64_t ptr) {
+ LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKEvent_ChannelClosed);
+ LDKOutPoint channel_funding_txo_var = obj->channel_closed.channel_funding_txo;
+ int64_t channel_funding_txo_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_funding_txo_var);
+ channel_funding_txo_ref = tag_ptr(channel_funding_txo_var.inner, false);
+ return channel_funding_txo_ref;
+}
int8_tArray CS_LDK_LDKEvent_DiscardFunding_get_channel_id(int64_t ptr) {
LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
CHECK(obj->tag == LDKEvent_DiscardFunding);
return ret_ref;
}
-static inline struct LDKReceiveTlvs CResult_ReceiveTlvsDecodeErrorZ_get_ok(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR owner){
- LDKReceiveTlvs ret = *owner->contents.result;
- ret.is_owned = false;
- return ret;
+static inline struct LDKThirtyTwoBytes C2Tuple__u832u16Z_get_a(LDKC2Tuple__u832u16Z *NONNULL_PTR owner){
+ return ThirtyTwoBytes_clone(&owner->a);
}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_get_ok(int64_t owner) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* owner_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(owner);
- LDKReceiveTlvs ret_var = CResult_ReceiveTlvsDecodeErrorZ_get_ok(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
+int8_tArray CS_LDK_C2Tuple__u832u16Z_get_a(int64_t owner) {
+ LDKC2Tuple__u832u16Z* owner_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, C2Tuple__u832u16Z_get_a(owner_conv).data, 32);
+ return ret_arr;
}
-static inline struct LDKDecodeError CResult_ReceiveTlvsDecodeErrorZ_get_err(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return DecodeError_clone(&*owner->contents.err);
+static inline uint16_t C2Tuple__u832u16Z_get_b(LDKC2Tuple__u832u16Z *NONNULL_PTR owner){
+ return owner->b;
}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_get_err(int64_t owner) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* owner_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(owner);
- LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
- *ret_copy = CResult_ReceiveTlvsDecodeErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
+int16_t CS_LDK_C2Tuple__u832u16Z_get_b(int64_t owner) {
+ LDKC2Tuple__u832u16Z* owner_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(owner);
+ int16_t ret_conv = C2Tuple__u832u16Z_get_b(owner_conv);
+ return ret_conv;
}
static inline struct LDKPaymentRelay CResult_PaymentRelayDecodeErrorZ_get_ok(LDKCResult_PaymentRelayDecodeErrorZ *NONNULL_PTR owner){
return ret_ref;
}
-uint32_t CS_LDK_LDKPaymentError_ty_from_ptr(int64_t ptr) {
- LDKPaymentError *obj = (LDKPaymentError*)untag_ptr(ptr);
- switch(obj->tag) {
- case LDKPaymentError_Invoice: return 0;
- case LDKPaymentError_Sending: return 1;
- default: abort();
- }
-}
-jstring CS_LDK_LDKPaymentError_Invoice_get_invoice(int64_t ptr) {
- LDKPaymentError *obj = (LDKPaymentError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKPaymentError_Invoice);
- LDKStr invoice_str = obj->invoice;
- jstring invoice_conv = str_ref_to_cs(invoice_str.chars, invoice_str.len);
- return invoice_conv;
-}
-int32_t CS_LDK_LDKPaymentError_Sending_get_sending(int64_t ptr) {
- LDKPaymentError *obj = (LDKPaymentError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKPaymentError_Sending);
- int32_t sending_conv = LDKRetryableSendFailure_to_cs(obj->sending);
- return sending_conv;
-}
-static inline struct LDKThirtyTwoBytes CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return ThirtyTwoBytes_clone(&*owner->contents.result);
+static inline struct LDKThirtyTwoBytes C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner){
+ return ThirtyTwoBytes_clone(&owner->a);
}
-int8_tArray CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(int64_t owner) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* owner_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(owner);
+int8_tArray CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(owner);
int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
- memcpy(ret_arr->elems, CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(owner_conv).data, 32);
+ memcpy(ret_arr->elems, C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(owner_conv).data, 32);
return ret_arr;
}
-static inline struct LDKPaymentError CResult_ThirtyTwoBytesPaymentErrorZ_get_err(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return PaymentError_clone(&*owner->contents.err);
+static inline struct LDKRecipientOnionFields C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner){
+ LDKRecipientOnionFields ret = owner->b;
+ ret.is_owned = false;
+ return ret;
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_get_err(int64_t owner) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* owner_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(owner);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = CResult_ThirtyTwoBytesPaymentErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(owner);
+ LDKRecipientOnionFields ret_var = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-static inline void CResult_NonePaymentErrorZ_get_ok(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return *owner->contents.result;
-}
-void CS_LDK_CResult_NonePaymentErrorZ_get_ok(int64_t owner) {
- LDKCResult_NonePaymentErrorZ* owner_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(owner);
- CResult_NonePaymentErrorZ_get_ok(owner_conv);
-}
-
-static inline struct LDKPaymentError CResult_NonePaymentErrorZ_get_err(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return PaymentError_clone(&*owner->contents.err);
+static inline struct LDKRouteParameters C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner){
+ LDKRouteParameters ret = owner->c;
+ ret.is_owned = false;
+ return ret;
}
-int64_t CS_LDK_CResult_NonePaymentErrorZ_get_err(int64_t owner) {
- LDKCResult_NonePaymentErrorZ* owner_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(owner);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = CResult_NonePaymentErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(owner);
+ LDKRouteParameters ret_var = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-uint32_t CS_LDK_LDKProbingError_ty_from_ptr(int64_t ptr) {
- LDKProbingError *obj = (LDKProbingError*)untag_ptr(ptr);
- switch(obj->tag) {
- case LDKProbingError_Invoice: return 0;
- case LDKProbingError_Sending: return 1;
- default: abort();
- }
-}
-jstring CS_LDK_LDKProbingError_Invoice_get_invoice(int64_t ptr) {
- LDKProbingError *obj = (LDKProbingError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKProbingError_Invoice);
- LDKStr invoice_str = obj->invoice;
- jstring invoice_conv = str_ref_to_cs(invoice_str.chars, invoice_str.len);
- return invoice_conv;
-}
-int64_t CS_LDK_LDKProbingError_Sending_get_sending(int64_t ptr) {
- LDKProbingError *obj = (LDKProbingError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKProbingError_Sending);
- int64_t sending_ref = tag_ptr(&obj->sending, false);
- return sending_ref;
-}
-static inline struct LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR owner){
+static inline struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ_clone(&*owner->contents.result);
+ return C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(&*owner->contents.result);
}
-int64_tArray CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(int64_t owner) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* owner_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(owner);
- LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ ret_var = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(owner_conv);
- int64_tArray ret_arr = NULL;
- ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
- int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
- for (size_t o = 0; o < ret_var.datalen; o++) {
- LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ), "LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ");
- *ret_conv_40_conv = ret_var.data[o];
- ret_arr_ptr[o] = tag_ptr(ret_conv_40_conv, true);
- }
-
- FREE(ret_var.data);
- return ret_arr;
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* owner_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(owner);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(owner_conv);
+ return tag_ptr(ret_conv, true);
}
-static inline struct LDKProbingError CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR owner){
+static inline void CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
- return ProbingError_clone(&*owner->contents.err);
+ return *owner->contents.err;
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(int64_t owner) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* owner_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(owner);
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
+void CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(int64_t owner) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* owner_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(owner);
+ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(owner_conv);
}
static inline struct LDKStr CResult_StrSecp256k1ErrorZ_get_ok(LDKCResult_StrSecp256k1ErrorZ *NONNULL_PTR owner){
return ret_conv;
}
-static inline struct LDKOnionMessagePath CResult_OnionMessagePathNoneZ_get_ok(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
- LDKOnionMessagePath ret = *owner->contents.result;
- ret.is_owned = false;
- return ret;
-}
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_get_ok(int64_t owner) {
- LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
- LDKOnionMessagePath ret_var = CResult_OnionMessagePathNoneZ_get_ok(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
-}
-
-static inline void CResult_OnionMessagePathNoneZ_get_err(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return *owner->contents.err;
-}
-void CS_LDK_CResult_OnionMessagePathNoneZ_get_err(int64_t owner) {
- LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
- CResult_OnionMessagePathNoneZ_get_err(owner_conv);
-}
-
-static inline struct LDKPublicKey C2Tuple_PublicKeyOnionMessageZ_get_a(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR owner){
+static inline struct LDKPublicKey C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner){
return owner->a;
}
-int8_tArray CS_LDK_C2Tuple_PublicKeyOnionMessageZ_get_a(int64_t owner) {
- LDKC2Tuple_PublicKeyOnionMessageZ* owner_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(owner);
+int8_tArray CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(int64_t owner) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* owner_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(owner);
int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, C2Tuple_PublicKeyOnionMessageZ_get_a(owner_conv).compressed_form, 33);
+ memcpy(ret_arr->elems, C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(owner_conv).compressed_form, 33);
return ret_arr;
}
-static inline struct LDKOnionMessage C2Tuple_PublicKeyOnionMessageZ_get_b(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR owner){
+static inline struct LDKOnionMessage C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner){
LDKOnionMessage ret = owner->b;
ret.is_owned = false;
return ret;
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_get_b(int64_t owner) {
- LDKC2Tuple_PublicKeyOnionMessageZ* owner_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(owner);
- LDKOnionMessage ret_var = C2Tuple_PublicKeyOnionMessageZ_get_b(owner_conv);
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(int64_t owner) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* owner_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(owner);
+ LDKOnionMessage ret_var = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(owner_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
+static inline struct LDKCOption_CVec_SocketAddressZZ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner){
+ return COption_CVec_SocketAddressZZ_clone(&owner->c);
+}
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(int64_t owner) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* owner_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(owner);
+ LDKCOption_CVec_SocketAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_SocketAddressZZ), "LDKCOption_CVec_SocketAddressZZ");
+ *ret_copy = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
uint32_t CS_LDK_LDKSendError_ty_from_ptr(int64_t ptr) {
LDKSendError *obj = (LDKSendError*)untag_ptr(ptr);
switch(obj->tag) {
case LDKSendError_TooBigPacket: return 1;
case LDKSendError_TooFewBlindedHops: return 2;
case LDKSendError_InvalidFirstHop: return 3;
- case LDKSendError_InvalidMessage: return 4;
- case LDKSendError_BufferFull: return 5;
- case LDKSendError_GetNodeIdFailed: return 6;
- case LDKSendError_BlindedPathAdvanceFailed: return 7;
+ case LDKSendError_PathNotFound: return 4;
+ case LDKSendError_InvalidMessage: return 5;
+ case LDKSendError_BufferFull: return 6;
+ case LDKSendError_GetNodeIdFailed: return 7;
+ case LDKSendError_BlindedPathAdvanceFailed: return 8;
default: abort();
}
}
int32_t secp256k1_conv = LDKSecp256k1Error_to_cs(obj->secp256k1);
return secp256k1_conv;
}
-static inline struct LDKC2Tuple_PublicKeyOnionMessageZ CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR owner){
+int8_tArray CS_LDK_LDKSendError_InvalidFirstHop_get_invalid_first_hop(int64_t ptr) {
+ LDKSendError *obj = (LDKSendError*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKSendError_InvalidFirstHop);
+ int8_tArray invalid_first_hop_arr = init_int8_tArray(33, __LINE__);
+ memcpy(invalid_first_hop_arr->elems, obj->invalid_first_hop.compressed_form, 33);
+ return invalid_first_hop_arr;
+}
+static inline struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return C2Tuple_PublicKeyOnionMessageZ_clone(&*owner->contents.result);
+ return C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(&*owner->contents.result);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(int64_t owner) {
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* owner_conv = (LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)untag_ptr(owner);
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(owner_conv);
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(int64_t owner) {
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* owner_conv = (LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)untag_ptr(owner);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(owner_conv);
return tag_ptr(ret_conv, true);
}
-static inline struct LDKSendError CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR owner){
+static inline struct LDKSendError CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return SendError_clone(&*owner->contents.err);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(int64_t owner) {
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* owner_conv = (LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)untag_ptr(owner);
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(int64_t owner) {
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* owner_conv = (LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)untag_ptr(owner);
LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
- *ret_copy = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(owner_conv);
+ *ret_copy = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(owner_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
CResult_PeeledOnionNoneZ_get_err(owner_conv);
}
-static inline void CResult_NoneSendErrorZ_get_ok(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner){
+uint32_t CS_LDK_LDKSendSuccess_ty_from_ptr(int64_t ptr) {
+ LDKSendSuccess *obj = (LDKSendSuccess*)untag_ptr(ptr);
+ switch(obj->tag) {
+ case LDKSendSuccess_Buffered: return 0;
+ case LDKSendSuccess_BufferedAwaitingConnection: return 1;
+ default: abort();
+ }
+}
+int8_tArray CS_LDK_LDKSendSuccess_BufferedAwaitingConnection_get_buffered_awaiting_connection(int64_t ptr) {
+ LDKSendSuccess *obj = (LDKSendSuccess*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKSendSuccess_BufferedAwaitingConnection);
+ int8_tArray buffered_awaiting_connection_arr = init_int8_tArray(33, __LINE__);
+ memcpy(buffered_awaiting_connection_arr->elems, obj->buffered_awaiting_connection.compressed_form, 33);
+ return buffered_awaiting_connection_arr;
+}
+static inline struct LDKSendSuccess CResult_SendSuccessSendErrorZ_get_ok(LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return *owner->contents.result;
+ return SendSuccess_clone(&*owner->contents.result);
}
-void CS_LDK_CResult_NoneSendErrorZ_get_ok(int64_t owner) {
- LDKCResult_NoneSendErrorZ* owner_conv = (LDKCResult_NoneSendErrorZ*)untag_ptr(owner);
- CResult_NoneSendErrorZ_get_ok(owner_conv);
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SendSuccessSendErrorZ* owner_conv = (LDKCResult_SendSuccessSendErrorZ*)untag_ptr(owner);
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = CResult_SendSuccessSendErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
}
-static inline struct LDKSendError CResult_NoneSendErrorZ_get_err(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner){
+static inline struct LDKSendError CResult_SendSuccessSendErrorZ_get_err(LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return SendError_clone(&*owner->contents.err);
}
-int64_t CS_LDK_CResult_NoneSendErrorZ_get_err(int64_t owner) {
- LDKCResult_NoneSendErrorZ* owner_conv = (LDKCResult_NoneSendErrorZ*)untag_ptr(owner);
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_get_err(int64_t owner) {
+ LDKCResult_SendSuccessSendErrorZ* owner_conv = (LDKCResult_SendSuccessSendErrorZ*)untag_ptr(owner);
LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
- *ret_copy = CResult_NoneSendErrorZ_get_err(owner_conv);
+ *ret_copy = CResult_SendSuccessSendErrorZ_get_err(owner_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_get_err(owner_conv);
}
+static inline LDKCVec_ForwardNodeZ CVec_ForwardNodeZ_clone(const LDKCVec_ForwardNodeZ *orig) {
+ LDKCVec_ForwardNodeZ ret = { .data = MALLOC(sizeof(LDKForwardNode) * orig->datalen, "LDKCVec_ForwardNodeZ clone bytes"), .datalen = orig->datalen };
+ for (size_t i = 0; i < ret.datalen; i++) {
+ ret.data[i] = ForwardNode_clone(&orig->data[i]);
+ }
+ return ret;
+}
static inline struct LDKBlindedPath CResult_BlindedPathDecodeErrorZ_get_ok(LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR owner){
LDKBlindedPath ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
+static inline struct LDKDelayedPaymentBasepoint CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR owner){
+ LDKDelayedPaymentBasepoint ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDelayedPaymentBasepoint ret_var = CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKDelayedPaymentKey CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR owner){
+ LDKDelayedPaymentKey ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDelayedPaymentKey ret_var = CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_DelayedPaymentKeyDecodeErrorZ_get_err(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_DelayedPaymentKeyDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKHtlcBasepoint CResult_HtlcBasepointDecodeErrorZ_get_ok(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR owner){
+ LDKHtlcBasepoint ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* owner_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKHtlcBasepoint ret_var = CResult_HtlcBasepointDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_HtlcBasepointDecodeErrorZ_get_err(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* owner_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_HtlcBasepointDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKHtlcKey CResult_HtlcKeyDecodeErrorZ_get_ok(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR owner){
+ LDKHtlcKey ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_HtlcKeyDecodeErrorZ* owner_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKHtlcKey ret_var = CResult_HtlcKeyDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_HtlcKeyDecodeErrorZ_get_err(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_HtlcKeyDecodeErrorZ* owner_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_HtlcKeyDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKRevocationBasepoint CResult_RevocationBasepointDecodeErrorZ_get_ok(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR owner){
+ LDKRevocationBasepoint ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* owner_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKRevocationBasepoint ret_var = CResult_RevocationBasepointDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_RevocationBasepointDecodeErrorZ_get_err(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* owner_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_RevocationBasepointDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKRevocationKey CResult_RevocationKeyDecodeErrorZ_get_ok(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR owner){
+ LDKRevocationKey ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_RevocationKeyDecodeErrorZ* owner_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKRevocationKey ret_var = CResult_RevocationKeyDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_RevocationKeyDecodeErrorZ_get_err(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_RevocationKeyDecodeErrorZ* owner_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_RevocationKeyDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
typedef struct LDKFilter_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
LDKu8slice script_pubkey_var = script_pubkey;
int8_tArray script_pubkey_arr = init_int8_tArray(script_pubkey_var.datalen, __LINE__);
memcpy(script_pubkey_arr->elems, script_pubkey_var.data, script_pubkey_var.datalen);
- js_invoke_function_void_ll(j_calls->instance_ptr, 51, (int64_t)txid_arr, (int64_t)script_pubkey_arr);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 56, (int64_t)txid_arr, (int64_t)script_pubkey_arr);
}
void register_output_LDKFilter_jcall(const void* this_arg, LDKWatchedOutput output) {
LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg;
int64_t output_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(output_var);
output_ref = tag_ptr(output_var.inner, output_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 52, output_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 57, output_ref);
}
static void LDKFilter_JCalls_cloned(LDKFilter* new_obj) {
LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) new_obj->this_arg;
LDKStr key_str = key;
jstring key_conv = str_ref_to_cs(key_str.chars, key_str.len);
Str_free(key_str);
- uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 53, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv);
+ uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 58, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_u8ZIOErrorZ ret_conv = *(LDKCResult_CVec_u8ZIOErrorZ*)(ret_ptr);
LDKu8slice buf_var = buf;
int8_tArray buf_arr = init_int8_tArray(buf_var.datalen, __LINE__);
memcpy(buf_arr->elems, buf_var.data, buf_var.datalen);
- uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 54, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, (int64_t)buf_arr);
+ uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 59, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, (int64_t)buf_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
jstring key_conv = str_ref_to_cs(key_str.chars, key_str.len);
Str_free(key_str);
jboolean lazy_conv = lazy;
- uint64_t ret = js_invoke_function_l_lllb(j_calls->instance_ptr, 55, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, lazy_conv);
+ uint64_t ret = js_invoke_function_l_lllb(j_calls->instance_ptr, 60, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, lazy_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
LDKStr secondary_namespace_str = secondary_namespace;
jstring secondary_namespace_conv = str_ref_to_cs(secondary_namespace_str.chars, secondary_namespace_str.len);
Str_free(secondary_namespace_str);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 56, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 61, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_StrZIOErrorZ ret_conv = *(LDKCResult_CVec_StrZIOErrorZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKChannelManager
CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_var);
channel_manager_ref = tag_ptr(channel_manager_var.inner, channel_manager_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 57, channel_manager_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 62, channel_manager_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKNetworkGraph
CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_var);
network_graph_ref = tag_ptr(network_graph_var.inner, network_graph_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 58, network_graph_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 63, network_graph_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
LDKPersister_JCalls *j_calls = (LDKPersister_JCalls*) this_arg;
// WARNING: This object doesn't live past this scope, needs clone!
int64_t ret_scorer = tag_ptr(scorer, false);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 59, ret_scorer);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 64, ret_scorer);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
int64_t update_id_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var);
update_id_ref = tag_ptr(update_id_var.inner, update_id_var.is_owned);
- uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_lll(j_calls->instance_ptr, 60, channel_id_ref, data_ref, update_id_ref);
+ uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_lll(j_calls->instance_ptr, 65, channel_id_ref, data_ref, update_id_ref);
LDKChannelMonitorUpdateStatus ret_conv = LDKChannelMonitorUpdateStatus_from_cs(ret);
return ret_conv;
}
int64_t update_id_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var);
update_id_ref = tag_ptr(update_id_var.inner, update_id_var.is_owned);
- uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_llll(j_calls->instance_ptr, 61, channel_id_ref, update_ref, data_ref, update_id_ref);
+ uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_llll(j_calls->instance_ptr, 66, channel_id_ref, update_ref, data_ref, update_id_ref);
LDKChannelMonitorUpdateStatus ret_conv = LDKChannelMonitorUpdateStatus_from_cs(ret);
return ret_conv;
}
}
void call_LDKFutureCallback_jcall(const void* this_arg) {
LDKFutureCallback_JCalls *j_calls = (LDKFutureCallback_JCalls*) this_arg;
- js_invoke_function_void_(j_calls->instance_ptr, 62);
+ js_invoke_function_void_(j_calls->instance_ptr, 67);
}
static void LDKFutureCallback_JCalls_cloned(LDKFutureCallback* new_obj) {
LDKFutureCallback_JCalls *j_calls = (LDKFutureCallback_JCalls*) new_obj->this_arg;
FREE(txdata_var.data);
int32_t height_conv = height;
- js_invoke_function_void_lli(j_calls->instance_ptr, 63, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
+ js_invoke_function_void_lli(j_calls->instance_ptr, 68, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
}
void block_connected_LDKListen_jcall(const void* this_arg, LDKu8slice block, uint32_t height) {
LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg;
int8_tArray block_arr = init_int8_tArray(block_var.datalen, __LINE__);
memcpy(block_arr->elems, block_var.data, block_var.datalen);
int32_t height_conv = height;
- js_invoke_function_void_li(j_calls->instance_ptr, 64, (int64_t)block_arr, height_conv);
+ js_invoke_function_void_li(j_calls->instance_ptr, 69, (int64_t)block_arr, height_conv);
}
void block_disconnected_LDKListen_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) {
LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg;
int8_tArray header_arr = init_int8_tArray(80, __LINE__);
memcpy(header_arr->elems, *header, 80);
int32_t height_conv = height;
- js_invoke_function_void_li(j_calls->instance_ptr, 65, (int64_t)header_arr, height_conv);
+ js_invoke_function_void_li(j_calls->instance_ptr, 70, (int64_t)header_arr, height_conv);
}
static void LDKListen_JCalls_cloned(LDKListen* new_obj) {
LDKListen_JCalls *j_calls = (LDKListen_JCalls*) new_obj->this_arg;
FREE(txdata_var.data);
int32_t height_conv = height;
- js_invoke_function_void_lli(j_calls->instance_ptr, 66, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
+ js_invoke_function_void_lli(j_calls->instance_ptr, 71, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
}
void transaction_unconfirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* txid)[32]) {
LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg;
int8_tArray txid_arr = init_int8_tArray(32, __LINE__);
memcpy(txid_arr->elems, *txid, 32);
- js_invoke_function_void_l(j_calls->instance_ptr, 67, (int64_t)txid_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 72, (int64_t)txid_arr);
}
void best_block_updated_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) {
LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg;
int8_tArray header_arr = init_int8_tArray(80, __LINE__);
memcpy(header_arr->elems, *header, 80);
int32_t height_conv = height;
- js_invoke_function_void_li(j_calls->instance_ptr, 68, (int64_t)header_arr, height_conv);
+ js_invoke_function_void_li(j_calls->instance_ptr, 73, (int64_t)header_arr, height_conv);
}
-LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) {
+LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) {
LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 69);
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret_constr;
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 74);
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
- ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ Elements");
+ ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ Elements");
else
ret_constr.data = NULL;
int64_t* ret_vals = ret->elems;
- for (size_t x = 0; x < ret_constr.datalen; x++) {
- int64_t ret_conv_49 = ret_vals[x];
- void* ret_conv_49_ptr = untag_ptr(ret_conv_49);
- CHECK_ACCESS(ret_conv_49_ptr);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ ret_conv_49_conv = *(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)(ret_conv_49_ptr);
- FREE(untag_ptr(ret_conv_49));
- ret_constr.data[x] = ret_conv_49_conv;
+ for (size_t c = 0; c < ret_constr.datalen; c++) {
+ int64_t ret_conv_54 = ret_vals[c];
+ void* ret_conv_54_ptr = untag_ptr(ret_conv_54);
+ CHECK_ACCESS(ret_conv_54_ptr);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ ret_conv_54_conv = *(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)(ret_conv_54_ptr);
+ FREE(untag_ptr(ret_conv_54));
+ ret_constr.data[c] = ret_conv_54_conv;
}
FREE(ret);
return ret_constr;
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr;
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg);
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
- for (size_t x = 0; x < ret_var.datalen; x++) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv_49_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv_49_conv = ret_var.data[x];
- ret_arr_ptr[x] = tag_ptr(ret_conv_49_conv, true);
+ for (size_t c = 0; c < ret_var.datalen; c++) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv_54_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv_54_conv = ret_var.data[c];
+ ret_arr_ptr[c] = tag_ptr(ret_conv_54_conv, true);
}
FREE(ret_var.data);
LDKEvent *event_copy = MALLOC(sizeof(LDKEvent), "LDKEvent");
*event_copy = event;
int64_t event_ref = tag_ptr(event_copy, true);
- js_invoke_function_void_l(j_calls->instance_ptr, 70, event_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 75, event_ref);
}
static void LDKEventHandler_JCalls_cloned(LDKEventHandler* new_obj) {
LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) new_obj->this_arg;
LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg;
LDKEventHandler* handler_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler");
*handler_ret = handler;
- js_invoke_function_void_l(j_calls->instance_ptr, 71, tag_ptr(handler_ret, true));
+ js_invoke_function_void_l(j_calls->instance_ptr, 76, tag_ptr(handler_ret, true));
}
static void LDKEventsProvider_JCalls_cloned(LDKEventsProvider* new_obj) {
LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) new_obj->this_arg;
}
LDKCVec_MessageSendEventZ get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall(const void* this_arg) {
LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 72);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 77);
LDKCVec_MessageSendEventZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
msg_var = OpenChannel_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 73, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 78, (int64_t)their_node_id_arr, msg_ref);
}
void handle_open_channel_v2_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKOpenChannelV2 * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = OpenChannelV2_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 74, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 79, (int64_t)their_node_id_arr, msg_ref);
}
void handle_accept_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAcceptChannel * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = AcceptChannel_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 75, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 80, (int64_t)their_node_id_arr, msg_ref);
}
void handle_accept_channel_v2_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAcceptChannelV2 * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = AcceptChannelV2_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 76, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 81, (int64_t)their_node_id_arr, msg_ref);
}
void handle_funding_created_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingCreated * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = FundingCreated_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 77, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 82, (int64_t)their_node_id_arr, msg_ref);
}
void handle_funding_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingSigned * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = FundingSigned_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 78, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 83, (int64_t)their_node_id_arr, msg_ref);
}
void handle_channel_ready_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelReady * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ChannelReady_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 79, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 84, (int64_t)their_node_id_arr, msg_ref);
}
void handle_shutdown_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKShutdown * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = Shutdown_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 80, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 85, (int64_t)their_node_id_arr, msg_ref);
}
void handle_closing_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKClosingSigned * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ClosingSigned_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 81, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 86, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_stfu_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKStfu * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKStfu msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = Stfu_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 87, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_splice_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKSplice * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKSplice msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = Splice_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 88, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_splice_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKSpliceAck * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKSpliceAck msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = SpliceAck_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 89, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_splice_locked_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKSpliceLocked * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKSpliceLocked msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = SpliceLocked_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 90, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_add_input_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAddInput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAddInput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 82, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 91, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_add_output_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAddOutput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAddOutput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 83, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 92, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_remove_input_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxRemoveInput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxRemoveInput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 84, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 93, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_remove_output_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxRemoveOutput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxRemoveOutput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 85, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 94, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_complete_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxComplete * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxComplete_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 86, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 95, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxSignatures * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxSignatures_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 87, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 96, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_init_rbf_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxInitRbf * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxInitRbf_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 88, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 97, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_ack_rbf_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAckRbf * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAckRbf_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 89, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 98, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_abort_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAbort * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAbort_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 90, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 99, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_add_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateAddHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateAddHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 91, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 100, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFulfillHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFulfillHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 92, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 101, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fail_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFailHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 93, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 102, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailMalformedHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFailMalformedHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 94, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 103, (int64_t)their_node_id_arr, msg_ref);
}
void handle_commitment_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKCommitmentSigned * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = CommitmentSigned_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 95, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 104, (int64_t)their_node_id_arr, msg_ref);
}
void handle_revoke_and_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKRevokeAndACK * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = RevokeAndACK_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 96, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 105, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fee_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFee * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFee_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 97, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 106, (int64_t)their_node_id_arr, msg_ref);
}
void handle_announcement_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAnnouncementSignatures * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = AnnouncementSignatures_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 98, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 107, (int64_t)their_node_id_arr, msg_ref);
}
void peer_disconnected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- js_invoke_function_void_l(j_calls->instance_ptr, 99, (int64_t)their_node_id_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 108, (int64_t)their_node_id_arr);
}
LDKCResult_NoneNoneZ peer_connected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * msg, bool inbound) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
jboolean inbound_conv = inbound;
- uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 100, (int64_t)their_node_id_arr, msg_ref, inbound_conv);
+ uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 109, (int64_t)their_node_id_arr, msg_ref, inbound_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
msg_var = ChannelReestablish_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 101, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 110, (int64_t)their_node_id_arr, msg_ref);
}
void handle_channel_update_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelUpdate * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ChannelUpdate_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 102, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 111, (int64_t)their_node_id_arr, msg_ref);
}
void handle_error_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKErrorMessage * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ErrorMessage_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 103, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 112, (int64_t)their_node_id_arr, msg_ref);
}
LDKNodeFeatures provided_node_features_LDKChannelMessageHandler_jcall(const void* this_arg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 104);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 113);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 105, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 114, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
}
LDKCOption_CVec_ThirtyTwoBytesZZ get_chain_hashes_LDKChannelMessageHandler_jcall(const void* this_arg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 106);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 115);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_CVec_ThirtyTwoBytesZZ ret_conv = *(LDKCOption_CVec_ThirtyTwoBytesZZ*)(ret_ptr);
.handle_channel_ready = handle_channel_ready_LDKChannelMessageHandler_jcall,
.handle_shutdown = handle_shutdown_LDKChannelMessageHandler_jcall,
.handle_closing_signed = handle_closing_signed_LDKChannelMessageHandler_jcall,
+ .handle_stfu = handle_stfu_LDKChannelMessageHandler_jcall,
+ .handle_splice = handle_splice_LDKChannelMessageHandler_jcall,
+ .handle_splice_ack = handle_splice_ack_LDKChannelMessageHandler_jcall,
+ .handle_splice_locked = handle_splice_locked_LDKChannelMessageHandler_jcall,
.handle_tx_add_input = handle_tx_add_input_LDKChannelMessageHandler_jcall,
.handle_tx_add_output = handle_tx_add_output_LDKChannelMessageHandler_jcall,
.handle_tx_remove_input = handle_tx_remove_input_LDKChannelMessageHandler_jcall,
(this_arg_conv->handle_closing_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
}
+void CS_LDK_ChannelMessageHandler_handle_stfu(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKStfu msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_stfu)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
+void CS_LDK_ChannelMessageHandler_handle_splice(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKSplice msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_splice)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
+void CS_LDK_ChannelMessageHandler_handle_splice_ack(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKSpliceAck msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_splice_ack)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
+void CS_LDK_ChannelMessageHandler_handle_splice_locked(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKSpliceLocked msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_splice_locked)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
void CS_LDK_ChannelMessageHandler_handle_tx_add_input(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKOffersMessage *message_copy = MALLOC(sizeof(LDKOffersMessage), "LDKOffersMessage");
*message_copy = message;
int64_t message_ref = tag_ptr(message_copy, true);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 107, message_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 116, message_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_OffersMessageZ ret_conv = *(LDKCOption_OffersMessageZ*)(ret_ptr);
}
LDKCVec_C3Tuple_OffersMessageDestinationBlindedPathZZ release_pending_messages_LDKOffersMessageHandler_jcall(const void* this_arg) {
LDKOffersMessageHandler_JCalls *j_calls = (LDKOffersMessageHandler_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 108);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 117);
LDKCVec_C3Tuple_OffersMessageDestinationBlindedPathZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
msg_var = NodeAnnouncement_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 109, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 118, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr);
msg_var = ChannelAnnouncement_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 110, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 119, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr);
msg_var = ChannelUpdate_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 111, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 120, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr);
LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, uint64_t starting_point) {
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
int64_t starting_point_conv = starting_point;
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 112, starting_point_conv);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 121, starting_point_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_conv = *(LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ*)(ret_ptr);
int64_t starting_point_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(starting_point_var);
starting_point_ref = tag_ptr(starting_point_var.inner, starting_point_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 113, starting_point_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 122, starting_point_ref);
LDKNodeAnnouncement ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var);
init_ref = tag_ptr(init_var.inner, init_var.is_owned);
jboolean inbound_conv = inbound;
- uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 114, (int64_t)their_node_id_arr, init_ref, inbound_conv);
+ uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 123, (int64_t)their_node_id_arr, init_ref, inbound_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 115, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 124, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 116, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 125, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 117, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 126, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 118, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 127, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
}
bool processing_queue_high_LDKRoutingMessageHandler_jcall(const void* this_arg) {
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
- return js_invoke_function_b_(j_calls->instance_ptr, 119);
+ return js_invoke_function_b_(j_calls->instance_ptr, 128);
}
LDKNodeFeatures provided_node_features_LDKRoutingMessageHandler_jcall(const void* this_arg) {
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 120);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 129);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 121, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 130, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
FREE(j_calls);
}
}
+LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ get_and_clear_connections_needed_LDKOnionMessageHandler_jcall(const void* this_arg) {
+ LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 131);
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ ret_constr;
+ ret_constr.datalen = ret->arr_len;
+ if (ret_constr.datalen > 0)
+ ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ Elements");
+ else
+ ret_constr.data = NULL;
+ int64_t* ret_vals = ret->elems;
+ for (size_t o = 0; o < ret_constr.datalen; o++) {
+ int64_t ret_conv_40 = ret_vals[o];
+ void* ret_conv_40_ptr = untag_ptr(ret_conv_40);
+ CHECK_ACCESS(ret_conv_40_ptr);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ ret_conv_40_conv = *(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)(ret_conv_40_ptr);
+ FREE(untag_ptr(ret_conv_40));
+ ret_constr.data[o] = ret_conv_40_conv;
+ }
+ FREE(ret);
+ return ret_constr;
+}
void handle_onion_message_LDKOnionMessageHandler_jcall(const void* this_arg, LDKPublicKey peer_node_id, const LDKOnionMessage * msg) {
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray peer_node_id_arr = init_int8_tArray(33, __LINE__);
msg_var = OnionMessage_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 122, (int64_t)peer_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 132, (int64_t)peer_node_id_arr, msg_ref);
}
LDKOnionMessage next_onion_message_for_peer_LDKOnionMessageHandler_jcall(const void* this_arg, LDKPublicKey peer_node_id) {
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray peer_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(peer_node_id_arr->elems, peer_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 123, (int64_t)peer_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 133, (int64_t)peer_node_id_arr);
LDKOnionMessage ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var);
init_ref = tag_ptr(init_var.inner, init_var.is_owned);
jboolean inbound_conv = inbound;
- uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 124, (int64_t)their_node_id_arr, init_ref, inbound_conv);
+ uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 134, (int64_t)their_node_id_arr, init_ref, inbound_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- js_invoke_function_void_l(j_calls->instance_ptr, 125, (int64_t)their_node_id_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 135, (int64_t)their_node_id_arr);
+}
+void timer_tick_occurred_LDKOnionMessageHandler_jcall(const void* this_arg) {
+ LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
+ js_invoke_function_void_(j_calls->instance_ptr, 136);
}
LDKNodeFeatures provided_node_features_LDKOnionMessageHandler_jcall(const void* this_arg) {
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 126);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 137);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 127, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 138, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKOnionMessageHandler ret = {
.this_arg = (void*) calls,
+ .get_and_clear_connections_needed = get_and_clear_connections_needed_LDKOnionMessageHandler_jcall,
.handle_onion_message = handle_onion_message_LDKOnionMessageHandler_jcall,
.next_onion_message_for_peer = next_onion_message_for_peer_LDKOnionMessageHandler_jcall,
.peer_connected = peer_connected_LDKOnionMessageHandler_jcall,
.peer_disconnected = peer_disconnected_LDKOnionMessageHandler_jcall,
+ .timer_tick_occurred = timer_tick_occurred_LDKOnionMessageHandler_jcall,
.provided_node_features = provided_node_features_LDKOnionMessageHandler_jcall,
.provided_init_features = provided_init_features_LDKOnionMessageHandler_jcall,
.free = LDKOnionMessageHandler_JCalls_free,
*res_ptr = LDKOnionMessageHandler_init(o);
return tag_ptr(res_ptr, true);
}
+int64_tArray CS_LDK_OnionMessageHandler_get_and_clear_connections_needed(int64_t this_arg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKOnionMessageHandler* this_arg_conv = (LDKOnionMessageHandler*)this_arg_ptr;
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ ret_var = (this_arg_conv->get_and_clear_connections_needed)(this_arg_conv->this_arg);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t o = 0; o < ret_var.datalen; o++) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv_40_conv = ret_var.data[o];
+ ret_arr_ptr[o] = tag_ptr(ret_conv_40_conv, true);
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
void CS_LDK_OnionMessageHandler_handle_onion_message(int64_t this_arg, int8_tArray peer_node_id, int64_t msg) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
(this_arg_conv->peer_disconnected)(this_arg_conv->this_arg, their_node_id_ref);
}
+void CS_LDK_OnionMessageHandler_timer_tick_occurred(int64_t this_arg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKOnionMessageHandler* this_arg_conv = (LDKOnionMessageHandler*)this_arg_ptr;
+ (this_arg_conv->timer_tick_occurred)(this_arg_conv->this_arg);
+}
+
int64_t CS_LDK_OnionMessageHandler_provided_node_features(int64_t this_arg) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKu8slice buffer_var = buffer;
int8_tArray buffer_arr = init_int8_tArray(buffer_var.datalen, __LINE__);
memcpy(buffer_arr->elems, buffer_var.data, buffer_var.datalen);
- uint64_t ret = js_invoke_function_l_sl(j_calls->instance_ptr, 128, message_type_conv, (int64_t)buffer_arr);
+ uint64_t ret = js_invoke_function_l_sl(j_calls->instance_ptr, 139, message_type_conv, (int64_t)buffer_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_COption_TypeZDecodeErrorZ ret_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(ret_ptr);
*msg_ret = msg;
int8_tArray sender_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(sender_node_id_arr->elems, sender_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 129, tag_ptr(msg_ret, true), (int64_t)sender_node_id_arr);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 140, tag_ptr(msg_ret, true), (int64_t)sender_node_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
}
LDKCVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg_LDKCustomMessageHandler_jcall(const void* this_arg) {
LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 130);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 141);
LDKCVec_C2Tuple_PublicKeyTypeZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
}
LDKNodeFeatures provided_node_features_LDKCustomMessageHandler_jcall(const void* this_arg) {
LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 131);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 142);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 132, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 143, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKCustomOnionMessageHandler_JCalls *j_calls = (LDKCustomOnionMessageHandler_JCalls*) this_arg;
LDKOnionMessageContents* msg_ret = MALLOC(sizeof(LDKOnionMessageContents), "LDKOnionMessageContents");
*msg_ret = msg;
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 133, tag_ptr(msg_ret, true));
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 144, tag_ptr(msg_ret, true));
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_OnionMessageContentsZ ret_conv = *(LDKCOption_OnionMessageContentsZ*)(ret_ptr);
LDKu8slice buffer_var = buffer;
int8_tArray buffer_arr = init_int8_tArray(buffer_var.datalen, __LINE__);
memcpy(buffer_arr->elems, buffer_var.data, buffer_var.datalen);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 134, message_type_conv, (int64_t)buffer_arr);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 145, message_type_conv, (int64_t)buffer_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_COption_OnionMessageContentsZDecodeErrorZ ret_conv = *(LDKCResult_COption_OnionMessageContentsZDecodeErrorZ*)(ret_ptr);
}
LDKCVec_C3Tuple_OnionMessageContentsDestinationBlindedPathZZ release_pending_custom_messages_LDKCustomOnionMessageHandler_jcall(const void* this_arg) {
LDKCustomOnionMessageHandler_JCalls *j_calls = (LDKCustomOnionMessageHandler_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 135);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 146);
LDKCVec_C3Tuple_OnionMessageContentsDestinationBlindedPathZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
int8_tArray data_arr = init_int8_tArray(data_var.datalen, __LINE__);
memcpy(data_arr->elems, data_var.data, data_var.datalen);
jboolean resume_read_conv = resume_read;
- return js_invoke_function_l_lb(j_calls->instance_ptr, 136, (int64_t)data_arr, resume_read_conv);
+ return js_invoke_function_l_lb(j_calls->instance_ptr, 147, (int64_t)data_arr, resume_read_conv);
}
void disconnect_socket_LDKSocketDescriptor_jcall(void* this_arg) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg;
- js_invoke_function_void_(j_calls->instance_ptr, 137);
+ js_invoke_function_void_(j_calls->instance_ptr, 148);
}
bool eq_LDKSocketDescriptor_jcall(const void* this_arg, const LDKSocketDescriptor * other_arg) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg;
LDKSocketDescriptor *other_arg_clone = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor");
*other_arg_clone = SocketDescriptor_clone(other_arg);
- return js_invoke_function_b_l(j_calls->instance_ptr, 138, tag_ptr(other_arg_clone, true));
+ return js_invoke_function_b_l(j_calls->instance_ptr, 149, tag_ptr(other_arg_clone, true));
}
uint64_t hash_LDKSocketDescriptor_jcall(const void* this_arg) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg;
- return js_invoke_function_l_(j_calls->instance_ptr, 139);
+ return js_invoke_function_l_(j_calls->instance_ptr, 150);
}
static void LDKSocketDescriptor_JCalls_cloned(LDKSocketDescriptor* new_obj) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) new_obj->this_arg;
}
LDKCVec_u8Z write_LDKScore_jcall(const void* this_arg) {
LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 140);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 151);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
return ret_arr;
}
-typedef struct LDKMessageRouter_JCalls {
- atomic_size_t refcnt;
- uint32_t instance_ptr;
-} LDKMessageRouter_JCalls;
-static void LDKMessageRouter_JCalls_free(void* this_arg) {
- LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
- if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) {
- FREE(j_calls);
- }
-}
-LDKCResult_OnionMessagePathNoneZ find_path_LDKMessageRouter_jcall(const void* this_arg, LDKPublicKey sender, LDKCVec_PublicKeyZ peers, LDKDestination destination) {
- LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
- int8_tArray sender_arr = init_int8_tArray(33, __LINE__);
- memcpy(sender_arr->elems, sender.compressed_form, 33);
- LDKCVec_PublicKeyZ peers_var = peers;
- ptrArray peers_arr = NULL;
- peers_arr = init_ptrArray(peers_var.datalen, __LINE__);
- int8_tArray *peers_arr_ptr = (int8_tArray*)(((uint8_t*)peers_arr) + 8);
- for (size_t i = 0; i < peers_var.datalen; i++) {
- int8_tArray peers_conv_8_arr = init_int8_tArray(33, __LINE__);
- memcpy(peers_conv_8_arr->elems, peers_var.data[i].compressed_form, 33);
- peers_arr_ptr[i] = peers_conv_8_arr;
- }
-
- FREE(peers_var.data);
- LDKDestination *destination_copy = MALLOC(sizeof(LDKDestination), "LDKDestination");
- *destination_copy = destination;
- int64_t destination_ref = tag_ptr(destination_copy, true);
- uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 141, (int64_t)sender_arr, (int64_t)peers_arr, destination_ref);
- void* ret_ptr = untag_ptr(ret);
- CHECK_ACCESS(ret_ptr);
- LDKCResult_OnionMessagePathNoneZ ret_conv = *(LDKCResult_OnionMessagePathNoneZ*)(ret_ptr);
- FREE(untag_ptr(ret));
- return ret_conv;
-}
-static void LDKMessageRouter_JCalls_cloned(LDKMessageRouter* new_obj) {
- LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) new_obj->this_arg;
- atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
-}
-static inline LDKMessageRouter LDKMessageRouter_init (int64_t o) {
- LDKMessageRouter_JCalls *calls = MALLOC(sizeof(LDKMessageRouter_JCalls), "LDKMessageRouter_JCalls");
- atomic_init(&calls->refcnt, 1);
- calls->instance_ptr = o;
-
- LDKMessageRouter ret = {
- .this_arg = (void*) calls,
- .find_path = find_path_LDKMessageRouter_jcall,
- .free = LDKMessageRouter_JCalls_free,
- };
- return ret;
-}
-uint64_t CS_LDK_LDKMessageRouter_new(int32_t o) {
- LDKMessageRouter *res_ptr = MALLOC(sizeof(LDKMessageRouter), "LDKMessageRouter");
- *res_ptr = LDKMessageRouter_init(o);
- return tag_ptr(res_ptr, true);
-}
-int64_t CS_LDK_MessageRouter_find_path(int64_t this_arg, int8_tArray sender, ptrArray peers, int64_t destination) {
- void* this_arg_ptr = untag_ptr(this_arg);
- if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
- LDKMessageRouter* this_arg_conv = (LDKMessageRouter*)this_arg_ptr;
- LDKPublicKey sender_ref;
- CHECK(sender->arr_len == 33);
- memcpy(sender_ref.compressed_form, sender->elems, 33); FREE(sender);
- LDKCVec_PublicKeyZ peers_constr;
- peers_constr.datalen = peers->arr_len;
- if (peers_constr.datalen > 0)
- peers_constr.data = MALLOC(peers_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
- else
- peers_constr.data = NULL;
- int8_tArray* peers_vals = (void*) peers->elems;
- for (size_t i = 0; i < peers_constr.datalen; i++) {
- int8_tArray peers_conv_8 = peers_vals[i];
- LDKPublicKey peers_conv_8_ref;
- CHECK(peers_conv_8->arr_len == 33);
- memcpy(peers_conv_8_ref.compressed_form, peers_conv_8->elems, 33); FREE(peers_conv_8);
- peers_constr.data[i] = peers_conv_8_ref;
- }
- FREE(peers);
- void* destination_ptr = untag_ptr(destination);
- CHECK_ACCESS(destination_ptr);
- LDKDestination destination_conv = *(LDKDestination*)(destination_ptr);
- destination_conv = Destination_clone((LDKDestination*)untag_ptr(destination));
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = (this_arg_conv->find_path)(this_arg_conv->this_arg, sender_ref, peers_constr, destination_conv);
- return tag_ptr(ret_conv, true);
-}
-
typedef struct LDKCoinSelectionSource_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
FREE(must_pay_to_var.data);
int32_t target_feerate_sat_per_1000_weight_conv = target_feerate_sat_per_1000_weight;
- uint64_t ret = js_invoke_function_l_llli(j_calls->instance_ptr, 142, (int64_t)claim_id_arr, (int64_t)must_spend_arr, (int64_t)must_pay_to_arr, target_feerate_sat_per_1000_weight_conv);
+ uint64_t ret = js_invoke_function_l_llli(j_calls->instance_ptr, 152, (int64_t)claim_id_arr, (int64_t)must_spend_arr, (int64_t)must_pay_to_arr, target_feerate_sat_per_1000_weight_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CoinSelectionNoneZ ret_conv = *(LDKCResult_CoinSelectionNoneZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_TransactionNoneZ sign_tx_LDKCoinSelectionSource_jcall(const void* this_arg, LDKTransaction tx) {
+LDKCResult_TransactionNoneZ sign_psbt_LDKCoinSelectionSource_jcall(const void* this_arg, LDKCVec_u8Z psbt) {
LDKCoinSelectionSource_JCalls *j_calls = (LDKCoinSelectionSource_JCalls*) this_arg;
- LDKTransaction tx_var = tx;
- int8_tArray tx_arr = init_int8_tArray(tx_var.datalen, __LINE__);
- memcpy(tx_arr->elems, tx_var.data, tx_var.datalen);
- Transaction_free(tx_var);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 143, (int64_t)tx_arr);
+ LDKCVec_u8Z psbt_var = psbt;
+ int8_tArray psbt_arr = init_int8_tArray(psbt_var.datalen, __LINE__);
+ memcpy(psbt_arr->elems, psbt_var.data, psbt_var.datalen);
+ CVec_u8Z_free(psbt_var);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 153, (int64_t)psbt_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_TransactionNoneZ ret_conv = *(LDKCResult_TransactionNoneZ*)(ret_ptr);
LDKCoinSelectionSource ret = {
.this_arg = (void*) calls,
.select_confirmed_utxos = select_confirmed_utxos_LDKCoinSelectionSource_jcall,
- .sign_tx = sign_tx_LDKCoinSelectionSource_jcall,
+ .sign_psbt = sign_psbt_LDKCoinSelectionSource_jcall,
.free = LDKCoinSelectionSource_JCalls_free,
};
return ret;
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CoinSelectionSource_sign_tx(int64_t this_arg, int8_tArray tx) {
+int64_t CS_LDK_CoinSelectionSource_sign_psbt(int64_t this_arg, int8_tArray psbt) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKCoinSelectionSource* this_arg_conv = (LDKCoinSelectionSource*)this_arg_ptr;
- LDKTransaction tx_ref;
- tx_ref.datalen = tx->arr_len;
- tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes");
- memcpy(tx_ref.data, tx->elems, tx_ref.datalen); FREE(tx);
- tx_ref.data_is_owned = true;
+ LDKCVec_u8Z psbt_ref;
+ psbt_ref.datalen = psbt->arr_len;
+ psbt_ref.data = MALLOC(psbt_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(psbt_ref.data, psbt->elems, psbt_ref.datalen); FREE(psbt);
LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ");
- *ret_conv = (this_arg_conv->sign_tx)(this_arg_conv->this_arg, tx_ref);
+ *ret_conv = (this_arg_conv->sign_psbt)(this_arg_conv->this_arg, psbt_ref);
return tag_ptr(ret_conv, true);
}
}
LDKCResult_CVec_UtxoZNoneZ list_confirmed_utxos_LDKWalletSource_jcall(const void* this_arg) {
LDKWalletSource_JCalls *j_calls = (LDKWalletSource_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 144);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 154);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_UtxoZNoneZ ret_conv = *(LDKCResult_CVec_UtxoZNoneZ*)(ret_ptr);
}
LDKCResult_CVec_u8ZNoneZ get_change_script_LDKWalletSource_jcall(const void* this_arg) {
LDKWalletSource_JCalls *j_calls = (LDKWalletSource_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 145);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 155);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_u8ZNoneZ ret_conv = *(LDKCResult_CVec_u8ZNoneZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_TransactionNoneZ sign_tx_LDKWalletSource_jcall(const void* this_arg, LDKTransaction tx) {
+LDKCResult_TransactionNoneZ sign_psbt_LDKWalletSource_jcall(const void* this_arg, LDKCVec_u8Z psbt) {
LDKWalletSource_JCalls *j_calls = (LDKWalletSource_JCalls*) this_arg;
- LDKTransaction tx_var = tx;
- int8_tArray tx_arr = init_int8_tArray(tx_var.datalen, __LINE__);
- memcpy(tx_arr->elems, tx_var.data, tx_var.datalen);
- Transaction_free(tx_var);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 146, (int64_t)tx_arr);
+ LDKCVec_u8Z psbt_var = psbt;
+ int8_tArray psbt_arr = init_int8_tArray(psbt_var.datalen, __LINE__);
+ memcpy(psbt_arr->elems, psbt_var.data, psbt_var.datalen);
+ CVec_u8Z_free(psbt_var);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 156, (int64_t)psbt_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_TransactionNoneZ ret_conv = *(LDKCResult_TransactionNoneZ*)(ret_ptr);
.this_arg = (void*) calls,
.list_confirmed_utxos = list_confirmed_utxos_LDKWalletSource_jcall,
.get_change_script = get_change_script_LDKWalletSource_jcall,
- .sign_tx = sign_tx_LDKWalletSource_jcall,
+ .sign_psbt = sign_psbt_LDKWalletSource_jcall,
.free = LDKWalletSource_JCalls_free,
};
return ret;
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_WalletSource_sign_tx(int64_t this_arg, int8_tArray tx) {
+int64_t CS_LDK_WalletSource_sign_psbt(int64_t this_arg, int8_tArray psbt) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKWalletSource* this_arg_conv = (LDKWalletSource*)this_arg_ptr;
- LDKTransaction tx_ref;
- tx_ref.datalen = tx->arr_len;
- tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes");
- memcpy(tx_ref.data, tx->elems, tx_ref.datalen); FREE(tx);
- tx_ref.data_is_owned = true;
+ LDKCVec_u8Z psbt_ref;
+ psbt_ref.datalen = psbt->arr_len;
+ psbt_ref.data = MALLOC(psbt_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(psbt_ref.data, psbt->elems, psbt_ref.datalen); FREE(psbt);
LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ");
- *ret_conv = (this_arg_conv->sign_tx)(this_arg_conv->this_arg, tx_ref);
+ *ret_conv = (this_arg_conv->sign_psbt)(this_arg_conv->this_arg, psbt_ref);
return tag_ptr(ret_conv, true);
}
return ret_arr;
}
+int64_t CS_LDK_WitnessProgram_new(int8_t version, int8_tArray program) {
+
+ LDKCVec_u8Z program_ref;
+ program_ref.datalen = program->arr_len;
+ program_ref.data = MALLOC(program_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(program_ref.data, program->elems, program_ref.datalen); FREE(program);
+ LDKWitnessProgram* ret_ref = MALLOC(sizeof(LDKWitnessProgram), "LDKWitnessProgram");
+ *ret_ref = WitnessProgram_new((LDKWitnessVersion){ ._0 = version }, program_ref);
+ return tag_ptr(ret_ref, true);
+}
+
+int8_t CS_LDK_WitnessProgram_get_version(int64_t prog) {
+ LDKWitnessProgram* prog_conv = (LDKWitnessProgram*)untag_ptr(prog);
+ uint8_t ret_val = WitnessProgram_get_version(prog_conv)._0;
+ return ret_val;
+}
+
+int8_tArray CS_LDK_WitnessProgram_get_program(int64_t prog) {
+ LDKWitnessProgram* prog_conv = (LDKWitnessProgram*)untag_ptr(prog);
+ LDKu8slice ret_var = WitnessProgram_get_program(prog_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ return ret_arr;
+}
+
+static inline uint64_t WitnessProgram_clone_ptr(LDKWitnessProgram *NONNULL_PTR arg) {
+ LDKWitnessProgram* ret_ref = MALLOC(sizeof(LDKWitnessProgram), "LDKWitnessProgram");
+ *ret_ref = WitnessProgram_clone(arg);
+ return tag_ptr(ret_ref, true);
+}
+int64_t CS_LDK_WitnessProgram_clone_ptr(int64_t arg) {
+ LDKWitnessProgram* arg_conv = (LDKWitnessProgram*)untag_ptr(arg);
+ int64_t ret_conv = WitnessProgram_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_WitnessProgram_clone(int64_t orig) {
+ LDKWitnessProgram* orig_conv = (LDKWitnessProgram*)untag_ptr(orig);
+ LDKWitnessProgram* ret_ref = MALLOC(sizeof(LDKWitnessProgram), "LDKWitnessProgram");
+ *ret_ref = WitnessProgram_clone(orig_conv);
+ return tag_ptr(ret_ref, true);
+}
+
+void CS_LDK_WitnessProgram_free(int64_t o) {
+ if (!ptr_is_owned(o)) return;
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKWitnessProgram o_conv = *(LDKWitnessProgram*)(o_ptr);
+ FREE(untag_ptr(o));
+ WitnessProgram_free(o_conv);
+}
+
int64_t CS_LDK_BigEndianScalar_new(int8_tArray big_endian_bytes) {
LDKThirtyTwoBytes big_endian_bytes_ref;
CHECK(big_endian_bytes->arr_len == 32);
Witness_free(_res_ref);
}
-void CS_LDK_TxIn_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKTxIn _res_conv = *(LDKTxIn*)(_res_ptr);
- FREE(untag_ptr(_res));
- TxIn_free(_res_conv);
-}
-
int64_t CS_LDK_TxIn_new(int8_tArray witness, int8_tArray script_sig, int32_t sequence, int8_tArray previous_txid, int32_t previous_vout) {
LDKWitness witness_ref;
witness_ref.datalen = witness->arr_len;
return tag_ptr(ret_ref, true);
}
+int8_tArray CS_LDK_TxIn_get_witness(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ LDKWitness ret_var = TxIn_get_witness(txin_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ Witness_free(ret_var);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_TxIn_get_script_sig(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ LDKu8slice ret_var = TxIn_get_script_sig(txin_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ return ret_arr;
+}
+
+int32_t CS_LDK_TxIn_get_sequence(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ int32_t ret_conv = TxIn_get_sequence(txin_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_TxIn_get_previous_txid(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, TxIn_get_previous_txid(txin_conv).data, 32);
+ return ret_arr;
+}
+
+int32_t CS_LDK_TxIn_get_previous_vout(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ int32_t ret_conv = TxIn_get_previous_vout(txin_conv);
+ return ret_conv;
+}
+
+void CS_LDK_TxIn_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKTxIn _res_conv = *(LDKTxIn*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ TxIn_free(_res_conv);
+}
+
int64_t CS_LDK_TxOut_new(int8_tArray script_pubkey, int64_t value) {
LDKCVec_u8Z script_pubkey_ref;
script_pubkey_ref.datalen = script_pubkey->arr_len;
return tag_ptr(ret_ref, true);
}
+int8_tArray CS_LDK_TxOut_get_script_pubkey(int64_t txout) {
+ LDKTxOut* txout_conv = (LDKTxOut*)untag_ptr(txout);
+ LDKu8slice ret_var = TxOut_get_script_pubkey(txout_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ return ret_arr;
+}
+
+int64_t CS_LDK_TxOut_get_value(int64_t txout) {
+ LDKTxOut* txout_conv = (LDKTxOut*)untag_ptr(txout);
+ int64_t ret_conv = TxOut_get_value(txout_conv);
+ return ret_conv;
+}
+
void CS_LDK_TxOut_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
return ret_ref;
}
-static inline uint64_t C2Tuple_CVec_u8ZusizeZ_clone_ptr(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR arg) {
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = C2Tuple_CVec_u8ZusizeZ_clone(arg);
+static inline uint64_t C2Tuple_CVec_u8Zu64Z_clone_ptr(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR arg) {
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = C2Tuple_CVec_u8Zu64Z_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_CVec_u8ZusizeZ* arg_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_CVec_u8ZusizeZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_clone_ptr(int64_t arg) {
+ LDKC2Tuple_CVec_u8Zu64Z* arg_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_CVec_u8Zu64Z_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_clone(int64_t orig) {
- LDKC2Tuple_CVec_u8ZusizeZ* orig_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(orig);
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = C2Tuple_CVec_u8ZusizeZ_clone(orig_conv);
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_clone(int64_t orig) {
+ LDKC2Tuple_CVec_u8Zu64Z* orig_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(orig);
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = C2Tuple_CVec_u8Zu64Z_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_new(int8_tArray a, int64_t b) {
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_new(int8_tArray a, int64_t b) {
LDKCVec_u8Z a_ref;
a_ref.datalen = a->arr_len;
a_ref.data = MALLOC(a_ref.datalen, "LDKCVec_u8Z Bytes");
memcpy(a_ref.data, a->elems, a_ref.datalen); FREE(a);
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = C2Tuple_CVec_u8ZusizeZ_new(a_ref, b);
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = C2Tuple_CVec_u8Zu64Z_new(a_ref, b);
return tag_ptr(ret_conv, true);
}
-void CS_LDK_C2Tuple_CVec_u8ZusizeZ_free(int64_t _res) {
+void CS_LDK_C2Tuple_CVec_u8Zu64Z_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_CVec_u8ZusizeZ _res_conv = *(LDKC2Tuple_CVec_u8ZusizeZ*)(_res_ptr);
+ LDKC2Tuple_CVec_u8Zu64Z _res_conv = *(LDKC2Tuple_CVec_u8Zu64Z*)(_res_ptr);
FREE(untag_ptr(_res));
- C2Tuple_CVec_u8ZusizeZ_free(_res_conv);
+ C2Tuple_CVec_u8Zu64Z_free(_res_conv);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(int64_t o) {
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
- LDKC2Tuple_CVec_u8ZusizeZ o_conv = *(LDKC2Tuple_CVec_u8ZusizeZ*)(o_ptr);
- o_conv = C2Tuple_CVec_u8ZusizeZ_clone((LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(o));
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(o_conv);
+ LDKC2Tuple_CVec_u8Zu64Z o_conv = *(LDKC2Tuple_CVec_u8Zu64Z*)(o_ptr);
+ o_conv = C2Tuple_CVec_u8Zu64Z_clone((LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(o));
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err() {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err();
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err() {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err();
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(int64_t o) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* o_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(int64_t o) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* o_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(int64_t _res) {
+void CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ _res_conv = *(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)(_res_ptr);
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ _res_conv = *(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(_res_conv);
+ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(_res_conv);
}
-static inline uint64_t CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR arg) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(arg);
+static inline uint64_t CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* arg_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(arg_conv);
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* arg_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(int64_t orig) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* orig_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(orig);
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(orig_conv);
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(int64_t orig) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* orig_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(orig);
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
-void CS_LDK_CVec_ECDSASignatureZ_free(ptrArray _res) {
- LDKCVec_ECDSASignatureZ _res_constr;
- _res_constr.datalen = _res->arr_len;
- if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
- else
- _res_constr.data = NULL;
- int8_tArray* _res_vals = (void*) _res->elems;
- for (size_t i = 0; i < _res_constr.datalen; i++) {
- int8_tArray _res_conv_8 = _res_vals[i];
- LDKECDSASignature _res_conv_8_ref;
- CHECK(_res_conv_8->arr_len == 64);
- memcpy(_res_conv_8_ref.compact_form, _res_conv_8->elems, 64); FREE(_res_conv_8);
- _res_constr.data[i] = _res_conv_8_ref;
- }
- FREE(_res);
- CVec_ECDSASignatureZ_free(_res_constr);
-}
-
-static inline uint64_t C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR arg) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* arg_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(int64_t orig) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* orig_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(orig);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(int8_tArray a, ptrArray b) {
- LDKECDSASignature a_ref;
- CHECK(a->arr_len == 64);
- memcpy(a_ref.compact_form, a->elems, 64); FREE(a);
- LDKCVec_ECDSASignatureZ b_constr;
- b_constr.datalen = b->arr_len;
- if (b_constr.datalen > 0)
- b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
- else
- b_constr.data = NULL;
- int8_tArray* b_vals = (void*) b->elems;
- for (size_t i = 0; i < b_constr.datalen; i++) {
- int8_tArray b_conv_8 = b_vals[i];
- LDKECDSASignature b_conv_8_ref;
- CHECK(b_conv_8->arr_len == 64);
- memcpy(b_conv_8_ref.compact_form, b_conv_8->elems, 64); FREE(b_conv_8);
- b_constr.data[i] = b_conv_8_ref;
- }
- FREE(b);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(a_ref, b_constr);
- return tag_ptr(ret_conv, true);
-}
-
-void CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ _res_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(_res_conv);
-}
-
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(int64_t o) {
- void* o_ptr = untag_ptr(o);
- CHECK_ACCESS(o_ptr);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ o_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(o_ptr);
- o_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone((LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(o));
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(o_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err() {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err();
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(int64_t o) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR arg) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(int64_t orig) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(orig);
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_ok(int8_tArray o) {
- LDKECDSASignature o_ref;
- CHECK(o->arr_len == 64);
- memcpy(o_ref.compact_form, o->elems, 64); FREE(o);
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_ok(o_ref);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_err() {
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_err();
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_ECDSASignatureNoneZ_is_ok(int64_t o) {
- LDKCResult_ECDSASignatureNoneZ* o_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_ECDSASignatureNoneZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_ECDSASignatureNoneZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_ECDSASignatureNoneZ _res_conv = *(LDKCResult_ECDSASignatureNoneZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_ECDSASignatureNoneZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_ECDSASignatureNoneZ_clone_ptr(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR arg) {
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_ECDSASignatureNoneZ* arg_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_ECDSASignatureNoneZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone(int64_t orig) {
- LDKCResult_ECDSASignatureNoneZ* orig_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(orig);
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
int64_t CS_LDK_CResult_PublicKeyNoneZ_ok(int8_tArray o) {
LDKPublicKey o_ref;
CHECK(o->arr_len == 33);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_ok(int8_tArray o) {
+ LDKECDSASignature o_ref;
+ CHECK(o->arr_len == 64);
+ memcpy(o_ref.compact_form, o->elems, 64); FREE(o);
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_ok(o_ref);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_err() {
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_ECDSASignatureNoneZ_is_ok(int64_t o) {
+ LDKCResult_ECDSASignatureNoneZ* o_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_ECDSASignatureNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_ECDSASignatureNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_ECDSASignatureNoneZ _res_conv = *(LDKCResult_ECDSASignatureNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_ECDSASignatureNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_ECDSASignatureNoneZ_clone_ptr(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR arg) {
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_ECDSASignatureNoneZ* arg_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_ECDSASignatureNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone(int64_t orig) {
+ LDKCResult_ECDSASignatureNoneZ* orig_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(orig);
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
return ret_ref;
}
-void CS_LDK_CVec_CVec_u8ZZ_free(ptrArray _res) {
- LDKCVec_CVec_u8ZZ _res_constr;
+int64_t CS_LDK_CResult_WitnessNoneZ_ok(int8_tArray o) {
+ LDKWitness o_ref;
+ o_ref.datalen = o->arr_len;
+ o_ref.data = MALLOC(o_ref.datalen, "LDKWitness Bytes");
+ memcpy(o_ref.data, o->elems, o_ref.datalen); FREE(o);
+ o_ref.data_is_owned = true;
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_ok(o_ref);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_WitnessNoneZ_err() {
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_WitnessNoneZ_is_ok(int64_t o) {
+ LDKCResult_WitnessNoneZ* o_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_WitnessNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_WitnessNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_WitnessNoneZ _res_conv = *(LDKCResult_WitnessNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_WitnessNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_WitnessNoneZ_clone_ptr(LDKCResult_WitnessNoneZ *NONNULL_PTR arg) {
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_WitnessNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_WitnessNoneZ* arg_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_WitnessNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_WitnessNoneZ_clone(int64_t orig) {
+ LDKCResult_WitnessNoneZ* orig_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(orig);
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_CVec_ECDSASignatureZ_free(ptrArray _res) {
+ LDKCVec_ECDSASignatureZ _res_constr;
_res_constr.datalen = _res->arr_len;
if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements");
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
else
_res_constr.data = NULL;
int8_tArray* _res_vals = (void*) _res->elems;
for (size_t i = 0; i < _res_constr.datalen; i++) {
int8_tArray _res_conv_8 = _res_vals[i];
- LDKCVec_u8Z _res_conv_8_ref;
- _res_conv_8_ref.datalen = _res_conv_8->arr_len;
- _res_conv_8_ref.data = MALLOC(_res_conv_8_ref.datalen, "LDKCVec_u8Z Bytes");
- memcpy(_res_conv_8_ref.data, _res_conv_8->elems, _res_conv_8_ref.datalen); FREE(_res_conv_8);
+ LDKECDSASignature _res_conv_8_ref;
+ CHECK(_res_conv_8->arr_len == 64);
+ memcpy(_res_conv_8_ref.compact_form, _res_conv_8->elems, 64); FREE(_res_conv_8);
_res_constr.data[i] = _res_conv_8_ref;
}
FREE(_res);
- CVec_CVec_u8ZZ_free(_res_constr);
+ CVec_ECDSASignatureZ_free(_res_constr);
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_ok(ptrArray o) {
- LDKCVec_CVec_u8ZZ o_constr;
- o_constr.datalen = o->arr_len;
- if (o_constr.datalen > 0)
- o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements");
+static inline uint64_t C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR arg) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(int64_t arg) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* arg_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(int64_t orig) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* orig_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(orig);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(int8_tArray a, ptrArray b) {
+ LDKECDSASignature a_ref;
+ CHECK(a->arr_len == 64);
+ memcpy(a_ref.compact_form, a->elems, 64); FREE(a);
+ LDKCVec_ECDSASignatureZ b_constr;
+ b_constr.datalen = b->arr_len;
+ if (b_constr.datalen > 0)
+ b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
else
- o_constr.data = NULL;
- int8_tArray* o_vals = (void*) o->elems;
- for (size_t i = 0; i < o_constr.datalen; i++) {
- int8_tArray o_conv_8 = o_vals[i];
- LDKCVec_u8Z o_conv_8_ref;
- o_conv_8_ref.datalen = o_conv_8->arr_len;
- o_conv_8_ref.data = MALLOC(o_conv_8_ref.datalen, "LDKCVec_u8Z Bytes");
- memcpy(o_conv_8_ref.data, o_conv_8->elems, o_conv_8_ref.datalen); FREE(o_conv_8);
- o_constr.data[i] = o_conv_8_ref;
+ b_constr.data = NULL;
+ int8_tArray* b_vals = (void*) b->elems;
+ for (size_t i = 0; i < b_constr.datalen; i++) {
+ int8_tArray b_conv_8 = b_vals[i];
+ LDKECDSASignature b_conv_8_ref;
+ CHECK(b_conv_8->arr_len == 64);
+ memcpy(b_conv_8_ref.compact_form, b_conv_8->elems, 64); FREE(b_conv_8);
+ b_constr.data[i] = b_conv_8_ref;
}
- FREE(o);
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_ok(o_constr);
+ FREE(b);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(a_ref, b_constr);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_err() {
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_err();
+void CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ _res_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(_res_conv);
+}
+
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ o_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(o_ptr);
+ o_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone((LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(o));
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_is_ok(int64_t o) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* o_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_CVec_CVec_u8ZZNoneZ_is_ok(o_conv);
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err() {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(int64_t o) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_free(int64_t _res) {
+void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_CVec_CVec_u8ZZNoneZ _res_conv = *(LDKCResult_CVec_CVec_u8ZZNoneZ*)(_res_ptr);
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_CVec_CVec_u8ZZNoneZ_free(_res_conv);
+ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(_res_conv);
}
-static inline uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(arg);
+static inline uint64_t CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* arg_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg_conv);
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_clone(int64_t orig) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* orig_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(orig);
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(orig_conv);
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(int64_t orig) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(orig);
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
+static inline uint64_t C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR arg) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(int64_t arg) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* arg_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone(int64_t orig) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* orig_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(orig);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_new(int64_t a, int64_t b) {
+ LDKBlindedPayInfo a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = BlindedPayInfo_clone(&a_conv);
+ LDKBlindedPath b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv = BlindedPath_clone(&b_conv);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_new(a_conv, b_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ C2Tuple_BlindedPayInfoBlindedPathZ_free(_res_conv);
+}
+
+void CS_LDK_CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(int64_tArray _res) {
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ Elements");
+ else
+ _res_constr.data = NULL;
+ int64_t* _res_vals = _res->elems;
+ for (size_t l = 0; l < _res_constr.datalen; l++) {
+ int64_t _res_conv_37 = _res_vals[l];
+ void* _res_conv_37_ptr = untag_ptr(_res_conv_37);
+ CHECK_ACCESS(_res_conv_37_ptr);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv_37_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_conv_37_ptr);
+ FREE(untag_ptr(_res_conv_37));
+ _res_constr.data[l] = _res_conv_37_conv;
+ }
+ FREE(_res);
+ CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(_res_constr);
+}
+
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(int64_tArray o) {
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ o_constr;
+ o_constr.datalen = o->arr_len;
+ if (o_constr.datalen > 0)
+ o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ Elements");
+ else
+ o_constr.data = NULL;
+ int64_t* o_vals = o->elems;
+ for (size_t l = 0; l < o_constr.datalen; l++) {
+ int64_t o_conv_37 = o_vals[l];
+ void* o_conv_37_ptr = untag_ptr(o_conv_37);
+ CHECK_ACCESS(o_conv_37_ptr);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ o_conv_37_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(o_conv_37_ptr);
+ o_conv_37_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone((LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(o_conv_37));
+ o_constr.data[l] = o_conv_37_conv;
+ }
+ FREE(o);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(o_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err() {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(int64_t o) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* o_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ _res_conv = *(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* arg_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(int64_t orig) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* orig_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(orig);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_CVec_PublicKeyZ_free(ptrArray _res) {
+ LDKCVec_PublicKeyZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
+ else
+ _res_constr.data = NULL;
+ int8_tArray* _res_vals = (void*) _res->elems;
+ for (size_t i = 0; i < _res_constr.datalen; i++) {
+ int8_tArray _res_conv_8 = _res_vals[i];
+ LDKPublicKey _res_conv_8_ref;
+ CHECK(_res_conv_8->arr_len == 33);
+ memcpy(_res_conv_8_ref.compressed_form, _res_conv_8->elems, 33); FREE(_res_conv_8);
+ _res_constr.data[i] = _res_conv_8_ref;
+ }
+ FREE(_res);
+ CVec_PublicKeyZ_free(_res_constr);
+}
+
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_ok(int64_t o) {
+ LDKOnionMessagePath o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = OnionMessagePath_clone(&o_conv);
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_err() {
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_OnionMessagePathNoneZ_is_ok(int64_t o) {
+ LDKCResult_OnionMessagePathNoneZ* o_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_OnionMessagePathNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_OnionMessagePathNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_OnionMessagePathNoneZ _res_conv = *(LDKCResult_OnionMessagePathNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_OnionMessagePathNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_OnionMessagePathNoneZ_clone_ptr(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR arg) {
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_OnionMessagePathNoneZ* arg_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_OnionMessagePathNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone(int64_t orig) {
+ LDKCResult_OnionMessagePathNoneZ* orig_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(orig);
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_ok(int64_tArray o) {
+ LDKCVec_BlindedPathZ o_constr;
+ o_constr.datalen = o->arr_len;
+ if (o_constr.datalen > 0)
+ o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKBlindedPath), "LDKCVec_BlindedPathZ Elements");
+ else
+ o_constr.data = NULL;
+ int64_t* o_vals = o->elems;
+ for (size_t n = 0; n < o_constr.datalen; n++) {
+ int64_t o_conv_13 = o_vals[n];
+ LDKBlindedPath o_conv_13_conv;
+ o_conv_13_conv.inner = untag_ptr(o_conv_13);
+ o_conv_13_conv.is_owned = ptr_is_owned(o_conv_13);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv_13_conv);
+ o_conv_13_conv = BlindedPath_clone(&o_conv_13_conv);
+ o_constr.data[n] = o_conv_13_conv;
+ }
+ FREE(o);
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_ok(o_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_err() {
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_CVec_BlindedPathZNoneZ_is_ok(int64_t o) {
+ LDKCResult_CVec_BlindedPathZNoneZ* o_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_CVec_BlindedPathZNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_CVec_BlindedPathZNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_CVec_BlindedPathZNoneZ _res_conv = *(LDKCResult_CVec_BlindedPathZNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_CVec_BlindedPathZNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_CVec_BlindedPathZNoneZ_clone_ptr(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_CVec_BlindedPathZNoneZ* arg_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_CVec_BlindedPathZNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_clone(int64_t orig) {
+ LDKCResult_CVec_BlindedPathZNoneZ* orig_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(orig);
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_InFlightHtlcsDecodeErrorZ_ok(int64_t o) {
LDKInFlightHtlcs o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
-static inline uint64_t C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR arg) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
- *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* arg_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone(int64_t orig) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* orig_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(orig);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
- *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_new(int64_t a, int64_t b) {
- LDKBlindedPayInfo a_conv;
- a_conv.inner = untag_ptr(a);
- a_conv.is_owned = ptr_is_owned(a);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
- a_conv = BlindedPayInfo_clone(&a_conv);
- LDKBlindedPath b_conv;
- b_conv.inner = untag_ptr(b);
- b_conv.is_owned = ptr_is_owned(b);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
- b_conv = BlindedPath_clone(&b_conv);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
- *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_new(a_conv, b_conv);
- return tag_ptr(ret_conv, true);
-}
-
-void CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- C2Tuple_BlindedPayInfoBlindedPathZ_free(_res_conv);
-}
-
-void CS_LDK_CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(int64_tArray _res) {
- LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ _res_constr;
- _res_constr.datalen = _res->arr_len;
- if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ Elements");
- else
- _res_constr.data = NULL;
- int64_t* _res_vals = _res->elems;
- for (size_t l = 0; l < _res_constr.datalen; l++) {
- int64_t _res_conv_37 = _res_vals[l];
- void* _res_conv_37_ptr = untag_ptr(_res_conv_37);
- CHECK_ACCESS(_res_conv_37_ptr);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv_37_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_conv_37_ptr);
- FREE(untag_ptr(_res_conv_37));
- _res_constr.data[l] = _res_conv_37_conv;
- }
- FREE(_res);
- CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(_res_constr);
-}
-
void CS_LDK_CVec_RouteHintZ_free(int64_tArray _res) {
LDKCVec_RouteHintZ _res_constr;
_res_constr.datalen = _res->arr_len;
return tag_ptr(ret_conv, true);
}
-void CS_LDK_CVec_PublicKeyZ_free(ptrArray _res) {
- LDKCVec_PublicKeyZ _res_constr;
- _res_constr.datalen = _res->arr_len;
- if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
- else
- _res_constr.data = NULL;
- int8_tArray* _res_vals = (void*) _res->elems;
- for (size_t i = 0; i < _res_constr.datalen; i++) {
- int8_tArray _res_conv_8 = _res_vals[i];
- LDKPublicKey _res_conv_8_ref;
- CHECK(_res_conv_8->arr_len == 33);
- memcpy(_res_conv_8_ref.compressed_form, _res_conv_8->elems, 33); FREE(_res_conv_8);
- _res_constr.data[i] = _res_conv_8_ref;
- }
- FREE(_res);
- CVec_PublicKeyZ_free(_res_constr);
-}
-
int64_t CS_LDK_CResult_FixedPenaltyScorerDecodeErrorZ_ok(int64_t o) {
LDKFixedPenaltyScorer o_conv;
o_conv.inner = untag_ptr(o);
CVec_C2Tuple_usizeTransactionZZ_free(_res_constr);
}
-static inline uint64_t C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR arg) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(arg);
+static inline uint64_t C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR arg) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* arg_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(int64_t arg) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* arg_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(arg);
+ int64_t ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(int64_t orig) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* orig_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(orig);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(orig_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(int64_t orig) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* orig_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(orig);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(int8_tArray a, int64_t b) {
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(int8_tArray a, int32_t b, int64_t c) {
LDKThirtyTwoBytes a_ref;
CHECK(a->arr_len == 32);
memcpy(a_ref.data, a->elems, 32); FREE(a);
- void* b_ptr = untag_ptr(b);
- CHECK_ACCESS(b_ptr);
- LDKCOption_ThirtyTwoBytesZ b_conv = *(LDKCOption_ThirtyTwoBytesZ*)(b_ptr);
- b_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(b));
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(a_ref, b_conv);
+ void* c_ptr = untag_ptr(c);
+ CHECK_ACCESS(c_ptr);
+ LDKCOption_ThirtyTwoBytesZ c_conv = *(LDKCOption_ThirtyTwoBytesZ*)(c_ptr);
+ c_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(c));
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(a_ref, b, c_conv);
return tag_ptr(ret_conv, true);
}
-void CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(int64_t _res) {
+void CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ _res_conv = *(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)(_res_ptr);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ _res_conv = *(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)(_res_ptr);
FREE(untag_ptr(_res));
- C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(_res_conv);
+ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(_res_conv);
}
-void CS_LDK_CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free(int64_tArray _res) {
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ _res_constr;
+void CS_LDK_CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free(int64_tArray _res) {
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ _res_constr;
_res_constr.datalen = _res->arr_len;
if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ Elements");
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ Elements");
else
_res_constr.data = NULL;
int64_t* _res_vals = _res->elems;
- for (size_t x = 0; x < _res_constr.datalen; x++) {
- int64_t _res_conv_49 = _res_vals[x];
- void* _res_conv_49_ptr = untag_ptr(_res_conv_49);
- CHECK_ACCESS(_res_conv_49_ptr);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ _res_conv_49_conv = *(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)(_res_conv_49_ptr);
- FREE(untag_ptr(_res_conv_49));
- _res_constr.data[x] = _res_conv_49_conv;
+ for (size_t c = 0; c < _res_constr.datalen; c++) {
+ int64_t _res_conv_54 = _res_vals[c];
+ void* _res_conv_54_ptr = untag_ptr(_res_conv_54);
+ CHECK_ACCESS(_res_conv_54_ptr);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ _res_conv_54_conv = *(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)(_res_conv_54_ptr);
+ FREE(untag_ptr(_res_conv_54));
+ _res_constr.data[c] = _res_conv_54_conv;
}
FREE(_res);
- CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free(_res_constr);
+ CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free(_res_constr);
}
int64_t CS_LDK_CResult_ChannelMonitorUpdateStatusNoneZ_ok(int32_t o) {
return ret_ref;
}
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_ok(int64_t o) {
+ LDKPendingHTLCInfo o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = PendingHTLCInfo_clone(&o_conv);
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoInboundHTLCErrZ), "LDKCResult_PendingHTLCInfoInboundHTLCErrZ");
+ *ret_conv = CResult_PendingHTLCInfoInboundHTLCErrZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_err(int64_t e) {
+ LDKInboundHTLCErr e_conv;
+ e_conv.inner = untag_ptr(e);
+ e_conv.is_owned = ptr_is_owned(e);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv);
+ // WARNING: we need a move here but no clone is available for LDKInboundHTLCErr
+
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoInboundHTLCErrZ), "LDKCResult_PendingHTLCInfoInboundHTLCErrZ");
+ *ret_conv = CResult_PendingHTLCInfoInboundHTLCErrZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(int64_t o) {
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* o_conv = (LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ _res_conv = *(LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_PendingHTLCInfoInboundHTLCErrZ_free(_res_conv);
+}
+
void CS_LDK_CVec_HTLCOutputInCommitmentZ_free(int64_tArray _res) {
LDKCVec_HTLCOutputInCommitmentZ _res_constr;
_res_constr.datalen = _res->arr_len;
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_ok(int64_t o) {
+ LDKBlindedForward o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = BlindedForward_clone(&o_conv);
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_BlindedForwardDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_BlindedForwardDecodeErrorZ* o_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_BlindedForwardDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_BlindedForwardDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_BlindedForwardDecodeErrorZ _res_conv = *(LDKCResult_BlindedForwardDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_BlindedForwardDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_BlindedForwardDecodeErrorZ_clone_ptr(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_BlindedForwardDecodeErrorZ* arg_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_BlindedForwardDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_BlindedForwardDecodeErrorZ* orig_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKPendingHTLCRouting o_conv = *(LDKPendingHTLCRouting*)(o_ptr);
+ o_conv = PendingHTLCRouting_clone((LDKPendingHTLCRouting*)untag_ptr(o));
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* o_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ _res_conv = *(LDKCResult_PendingHTLCRoutingDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_PendingHTLCRoutingDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* arg_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* orig_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_ok(int64_t o) {
+ LDKPendingHTLCInfo o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = PendingHTLCInfo_clone(&o_conv);
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* o_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_PendingHTLCInfoDecodeErrorZ _res_conv = *(LDKCResult_PendingHTLCInfoDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_PendingHTLCInfoDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* arg_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* orig_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_ok(int32_t o) {
+ LDKBlindedFailure o_conv = LDKBlindedFailure_from_cs(o);
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_BlindedFailureDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_BlindedFailureDecodeErrorZ* o_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_BlindedFailureDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_BlindedFailureDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_BlindedFailureDecodeErrorZ _res_conv = *(LDKCResult_BlindedFailureDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_BlindedFailureDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_BlindedFailureDecodeErrorZ_clone_ptr(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_BlindedFailureDecodeErrorZ* arg_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_BlindedFailureDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_BlindedFailureDecodeErrorZ* orig_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_ChannelShutdownStateDecodeErrorZ_ok(int32_t o) {
LDKChannelShutdownState o_conv = LDKChannelShutdownState_from_cs(o);
LDKCResult_ChannelShutdownStateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelShutdownStateDecodeErrorZ), "LDKCResult_ChannelShutdownStateDecodeErrorZ");
CVec_C2Tuple_PublicKeyTypeZZ_free(_res_constr);
}
+static inline uint64_t C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR arg) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(int64_t arg) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* arg_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(int64_t orig) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* orig_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(orig);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_new(int8_tArray a, int64_tArray b) {
+ LDKPublicKey a_ref;
+ CHECK(a->arr_len == 33);
+ memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
+ LDKCVec_SocketAddressZ b_constr;
+ b_constr.datalen = b->arr_len;
+ if (b_constr.datalen > 0)
+ b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKSocketAddress), "LDKCVec_SocketAddressZ Elements");
+ else
+ b_constr.data = NULL;
+ int64_t* b_vals = b->elems;
+ for (size_t p = 0; p < b_constr.datalen; p++) {
+ int64_t b_conv_15 = b_vals[p];
+ void* b_conv_15_ptr = untag_ptr(b_conv_15);
+ CHECK_ACCESS(b_conv_15_ptr);
+ LDKSocketAddress b_conv_15_conv = *(LDKSocketAddress*)(b_conv_15_ptr);
+ b_conv_15_conv = SocketAddress_clone((LDKSocketAddress*)untag_ptr(b_conv_15));
+ b_constr.data[p] = b_conv_15_conv;
+ }
+ FREE(b);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_new(a_ref, b_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ _res_conv = *(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ C2Tuple_PublicKeyCVec_SocketAddressZZ_free(_res_conv);
+}
+
+void CS_LDK_CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free(int64_tArray _res) {
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ Elements");
+ else
+ _res_constr.data = NULL;
+ int64_t* _res_vals = _res->elems;
+ for (size_t o = 0; o < _res_constr.datalen; o++) {
+ int64_t _res_conv_40 = _res_vals[o];
+ void* _res_conv_40_ptr = untag_ptr(_res_conv_40);
+ CHECK_ACCESS(_res_conv_40_ptr);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ _res_conv_40_conv = *(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)(_res_conv_40_ptr);
+ FREE(untag_ptr(_res_conv_40));
+ _res_constr.data[o] = _res_conv_40_conv;
+ }
+ FREE(_res);
+ CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free(_res_constr);
+}
+
int64_t CS_LDK_COption_OnionMessageContentsZ_some(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_ok(int64_t o) {
+ LDKStfu o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = Stfu_clone(&o_conv);
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_StfuDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_StfuDecodeErrorZ* o_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_StfuDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_StfuDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_StfuDecodeErrorZ _res_conv = *(LDKCResult_StfuDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_StfuDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_StfuDecodeErrorZ_clone_ptr(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_StfuDecodeErrorZ* arg_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_StfuDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_StfuDecodeErrorZ* orig_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_ok(int64_t o) {
+ LDKSplice o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = Splice_clone(&o_conv);
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_SpliceDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_SpliceDecodeErrorZ* o_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SpliceDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_SpliceDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_SpliceDecodeErrorZ _res_conv = *(LDKCResult_SpliceDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_SpliceDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_SpliceDecodeErrorZ_clone_ptr(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_SpliceDecodeErrorZ* arg_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_SpliceDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_SpliceDecodeErrorZ* orig_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_ok(int64_t o) {
+ LDKSpliceAck o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = SpliceAck_clone(&o_conv);
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_SpliceAckDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_SpliceAckDecodeErrorZ* o_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SpliceAckDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_SpliceAckDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_SpliceAckDecodeErrorZ _res_conv = *(LDKCResult_SpliceAckDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_SpliceAckDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_SpliceAckDecodeErrorZ_clone_ptr(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_SpliceAckDecodeErrorZ* arg_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_SpliceAckDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_SpliceAckDecodeErrorZ* orig_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_ok(int64_t o) {
+ LDKSpliceLocked o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = SpliceLocked_clone(&o_conv);
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_SpliceLockedDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_SpliceLockedDecodeErrorZ* o_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SpliceLockedDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_SpliceLockedDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_SpliceLockedDecodeErrorZ _res_conv = *(LDKCResult_SpliceLockedDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_SpliceLockedDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_SpliceLockedDecodeErrorZ_clone_ptr(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_SpliceLockedDecodeErrorZ* arg_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_SpliceLockedDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_SpliceLockedDecodeErrorZ* orig_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_TxAddInputDecodeErrorZ_ok(int64_t o) {
LDKTxAddInput o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_ok(int64_t o) {
+ LDKOnionPacket o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = OnionPacket_clone(&o_conv);
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_OnionPacketDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_OnionPacketDecodeErrorZ* o_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_OnionPacketDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_OnionPacketDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_OnionPacketDecodeErrorZ _res_conv = *(LDKCResult_OnionPacketDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_OnionPacketDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_OnionPacketDecodeErrorZ_clone_ptr(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_OnionPacketDecodeErrorZ* arg_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_OnionPacketDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_OnionPacketDecodeErrorZ* orig_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_UpdateAddHTLCDecodeErrorZ_ok(int64_t o) {
LDKUpdateAddHTLC o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_ok(int64_t o) {
+ LDKFinalOnionHopData o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = FinalOnionHopData_clone(&o_conv);
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* o_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_FinalOnionHopDataDecodeErrorZ _res_conv = *(LDKCResult_FinalOnionHopDataDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_FinalOnionHopDataDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* arg_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* orig_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_PingDecodeErrorZ_ok(int64_t o) {
LDKPing o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_ok(int64_t o) {
- LDKReceiveTlvs o_conv;
- o_conv.inner = untag_ptr(o);
- o_conv.is_owned = ptr_is_owned(o);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
- o_conv = ReceiveTlvs_clone(&o_conv);
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_ok(o_conv);
+static inline uint64_t C2Tuple__u832u16Z_clone_ptr(LDKC2Tuple__u832u16Z *NONNULL_PTR arg) {
+ LDKC2Tuple__u832u16Z* ret_conv = MALLOC(sizeof(LDKC2Tuple__u832u16Z), "LDKC2Tuple__u832u16Z");
+ *ret_conv = C2Tuple__u832u16Z_clone(arg);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_C2Tuple__u832u16Z_clone_ptr(int64_t arg) {
+ LDKC2Tuple__u832u16Z* arg_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple__u832u16Z_clone_ptr(arg_conv);
+ return ret_conv;
+}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
- e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_err(e_conv);
+int64_t CS_LDK_C2Tuple__u832u16Z_clone(int64_t orig) {
+ LDKC2Tuple__u832u16Z* orig_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(orig);
+ LDKC2Tuple__u832u16Z* ret_conv = MALLOC(sizeof(LDKC2Tuple__u832u16Z), "LDKC2Tuple__u832u16Z");
+ *ret_conv = C2Tuple__u832u16Z_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_is_ok(int64_t o) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* o_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_ReceiveTlvsDecodeErrorZ_is_ok(o_conv);
- return ret_conv;
+int64_t CS_LDK_C2Tuple__u832u16Z_new(int8_tArray a, int16_t b) {
+ LDKThirtyTwoBytes a_ref;
+ CHECK(a->arr_len == 32);
+ memcpy(a_ref.data, a->elems, 32); FREE(a);
+ LDKC2Tuple__u832u16Z* ret_conv = MALLOC(sizeof(LDKC2Tuple__u832u16Z), "LDKC2Tuple__u832u16Z");
+ *ret_conv = C2Tuple__u832u16Z_new(a_ref, b);
+ return tag_ptr(ret_conv, true);
}
-void CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_free(int64_t _res) {
+void CS_LDK_C2Tuple__u832u16Z_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_ReceiveTlvsDecodeErrorZ _res_conv = *(LDKCResult_ReceiveTlvsDecodeErrorZ*)(_res_ptr);
+ LDKC2Tuple__u832u16Z _res_conv = *(LDKC2Tuple__u832u16Z*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_ReceiveTlvsDecodeErrorZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR arg) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* arg_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_clone(int64_t orig) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* orig_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(orig);
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
+ C2Tuple__u832u16Z_free(_res_conv);
}
int64_t CS_LDK_CResult_PaymentRelayDecodeErrorZ_ok(int64_t o) {
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_ok(int8_tArray o) {
- LDKThirtyTwoBytes o_ref;
- CHECK(o->arr_len == 32);
- memcpy(o_ref.data, o->elems, 32); FREE(o);
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_ok(o_ref);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKPaymentError e_conv = *(LDKPaymentError*)(e_ptr);
- e_conv = PaymentError_clone((LDKPaymentError*)untag_ptr(e));
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_err(e_conv);
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(int64_t o) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* o_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_ThirtyTwoBytesPaymentErrorZ _res_conv = *(LDKCResult_ThirtyTwoBytesPaymentErrorZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_ThirtyTwoBytesPaymentErrorZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR arg) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_clone(arg);
+static inline uint64_t C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR arg) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* arg_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(int64_t arg) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* arg_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(arg);
+ int64_t ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_clone(int64_t orig) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* orig_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(orig);
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_clone(orig_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(int64_t orig) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* orig_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(orig);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_NonePaymentErrorZ_ok() {
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_ok();
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_NonePaymentErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKPaymentError e_conv = *(LDKPaymentError*)(e_ptr);
- e_conv = PaymentError_clone((LDKPaymentError*)untag_ptr(e));
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_err(e_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(int8_tArray a, int64_t b, int64_t c) {
+ LDKThirtyTwoBytes a_ref;
+ CHECK(a->arr_len == 32);
+ memcpy(a_ref.data, a->elems, 32); FREE(a);
+ LDKRecipientOnionFields b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv = RecipientOnionFields_clone(&b_conv);
+ LDKRouteParameters c_conv;
+ c_conv.inner = untag_ptr(c);
+ c_conv.is_owned = ptr_is_owned(c);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv);
+ c_conv = RouteParameters_clone(&c_conv);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(a_ref, b_conv, c_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_NonePaymentErrorZ_is_ok(int64_t o) {
- LDKCResult_NonePaymentErrorZ* o_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_NonePaymentErrorZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_NonePaymentErrorZ_free(int64_t _res) {
+void CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_NonePaymentErrorZ _res_conv = *(LDKCResult_NonePaymentErrorZ*)(_res_ptr);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ _res_conv = *(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_NonePaymentErrorZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_NonePaymentErrorZ_clone_ptr(LDKCResult_NonePaymentErrorZ *NONNULL_PTR arg) {
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_NonePaymentErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_NonePaymentErrorZ* arg_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_NonePaymentErrorZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_NonePaymentErrorZ_clone(int64_t orig) {
- LDKCResult_NonePaymentErrorZ* orig_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(orig);
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
+ C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(_res_conv);
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(int64_tArray o) {
- LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ o_constr;
- o_constr.datalen = o->arr_len;
- if (o_constr.datalen > 0)
- o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ), "LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ Elements");
- else
- o_constr.data = NULL;
- int64_t* o_vals = o->elems;
- for (size_t o = 0; o < o_constr.datalen; o++) {
- int64_t o_conv_40 = o_vals[o];
- void* o_conv_40_ptr = untag_ptr(o_conv_40);
- CHECK_ACCESS(o_conv_40_ptr);
- LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ o_conv_40_conv = *(LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ*)(o_conv_40_ptr);
- o_conv_40_conv = C2Tuple_ThirtyTwoBytesThirtyTwoBytesZ_clone((LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ*)untag_ptr(o_conv_40));
- o_constr.data[o] = o_conv_40_conv;
- }
- FREE(o);
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(o_constr);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ o_conv = *(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)(o_ptr);
+ o_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone((LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(o));
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKProbingError e_conv = *(LDKProbingError*)(e_ptr);
- e_conv = ProbingError_clone((LDKProbingError*)untag_ptr(e));
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(e_conv);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err() {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err();
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(int64_t o) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* o_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(int64_t o) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* o_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(int64_t _res) {
+void CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ _res_conv = *(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)(_res_ptr);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ _res_conv = *(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(_res_conv);
+ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(_res_conv);
}
-static inline uint64_t CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR arg) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(arg);
+static inline uint64_t CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* arg_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(arg_conv);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* arg_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(int64_t orig) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* orig_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(orig);
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(orig_conv);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(int64_t orig) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* orig_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(orig);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_ok(int64_t o) {
- LDKOnionMessagePath o_conv;
- o_conv.inner = untag_ptr(o);
- o_conv.is_owned = ptr_is_owned(o);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
- o_conv = OnionMessagePath_clone(&o_conv);
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_ok(o_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_err() {
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_err();
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_OnionMessagePathNoneZ_is_ok(int64_t o) {
- LDKCResult_OnionMessagePathNoneZ* o_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_OnionMessagePathNoneZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_OnionMessagePathNoneZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_OnionMessagePathNoneZ _res_conv = *(LDKCResult_OnionMessagePathNoneZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_OnionMessagePathNoneZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_OnionMessagePathNoneZ_clone_ptr(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR arg) {
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_OnionMessagePathNoneZ* arg_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_OnionMessagePathNoneZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone(int64_t orig) {
- LDKCResult_OnionMessagePathNoneZ* orig_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(orig);
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-static inline uint64_t C2Tuple_PublicKeyOnionMessageZ_clone_ptr(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR arg) {
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = C2Tuple_PublicKeyOnionMessageZ_clone(arg);
+static inline uint64_t C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR arg) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_PublicKeyOnionMessageZ* arg_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_PublicKeyOnionMessageZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(int64_t arg) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* arg_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(arg);
+ int64_t ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_clone(int64_t orig) {
- LDKC2Tuple_PublicKeyOnionMessageZ* orig_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(orig);
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = C2Tuple_PublicKeyOnionMessageZ_clone(orig_conv);
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(int64_t orig) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* orig_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(orig);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_new(int8_tArray a, int64_t b) {
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(int8_tArray a, int64_t b, int64_t c) {
LDKPublicKey a_ref;
CHECK(a->arr_len == 33);
memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
b_conv.is_owned = ptr_is_owned(b);
CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
b_conv = OnionMessage_clone(&b_conv);
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = C2Tuple_PublicKeyOnionMessageZ_new(a_ref, b_conv);
+ void* c_ptr = untag_ptr(c);
+ CHECK_ACCESS(c_ptr);
+ LDKCOption_CVec_SocketAddressZZ c_conv = *(LDKCOption_CVec_SocketAddressZZ*)(c_ptr);
+ c_conv = COption_CVec_SocketAddressZZ_clone((LDKCOption_CVec_SocketAddressZZ*)untag_ptr(c));
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(a_ref, b_conv, c_conv);
return tag_ptr(ret_conv, true);
}
-void CS_LDK_C2Tuple_PublicKeyOnionMessageZ_free(int64_t _res) {
+void CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_PublicKeyOnionMessageZ _res_conv = *(LDKC2Tuple_PublicKeyOnionMessageZ*)(_res_ptr);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ _res_conv = *(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)(_res_ptr);
FREE(untag_ptr(_res));
- C2Tuple_PublicKeyOnionMessageZ_free(_res_conv);
+ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(_res_conv);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(int64_t o) {
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
- LDKC2Tuple_PublicKeyOnionMessageZ o_conv = *(LDKC2Tuple_PublicKeyOnionMessageZ*)(o_ptr);
- o_conv = C2Tuple_PublicKeyOnionMessageZ_clone((LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(o));
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ), "LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ");
- *ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(o_conv);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ o_conv = *(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)(o_ptr);
+ o_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone((LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(o));
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ), "LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ");
+ *ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(int64_t e) {
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(int64_t e) {
void* e_ptr = untag_ptr(e);
CHECK_ACCESS(e_ptr);
LDKSendError e_conv = *(LDKSendError*)(e_ptr);
e_conv = SendError_clone((LDKSendError*)untag_ptr(e));
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ), "LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ");
- *ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(e_conv);
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ), "LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ");
+ *ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(e_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(int64_t o) {
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* o_conv = (LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(int64_t o) {
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* o_conv = (LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(int64_t _res) {
+void CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ _res_conv = *(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)(_res_ptr);
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ _res_conv = *(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(_res_conv);
+ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(_res_conv);
}
int64_t CS_LDK_CResult_PeeledOnionNoneZ_ok(int64_t o) {
CResult_PeeledOnionNoneZ_free(_res_conv);
}
-int64_t CS_LDK_CResult_NoneSendErrorZ_ok() {
- LDKCResult_NoneSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSendErrorZ), "LDKCResult_NoneSendErrorZ");
- *ret_conv = CResult_NoneSendErrorZ_ok();
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKSendSuccess o_conv = *(LDKSendSuccess*)(o_ptr);
+ o_conv = SendSuccess_clone((LDKSendSuccess*)untag_ptr(o));
+ LDKCResult_SendSuccessSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SendSuccessSendErrorZ), "LDKCResult_SendSuccessSendErrorZ");
+ *ret_conv = CResult_SendSuccessSendErrorZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_NoneSendErrorZ_err(int64_t e) {
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_err(int64_t e) {
void* e_ptr = untag_ptr(e);
CHECK_ACCESS(e_ptr);
LDKSendError e_conv = *(LDKSendError*)(e_ptr);
e_conv = SendError_clone((LDKSendError*)untag_ptr(e));
- LDKCResult_NoneSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSendErrorZ), "LDKCResult_NoneSendErrorZ");
- *ret_conv = CResult_NoneSendErrorZ_err(e_conv);
+ LDKCResult_SendSuccessSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SendSuccessSendErrorZ), "LDKCResult_SendSuccessSendErrorZ");
+ *ret_conv = CResult_SendSuccessSendErrorZ_err(e_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_NoneSendErrorZ_is_ok(int64_t o) {
- LDKCResult_NoneSendErrorZ* o_conv = (LDKCResult_NoneSendErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_NoneSendErrorZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_SendSuccessSendErrorZ_is_ok(int64_t o) {
+ LDKCResult_SendSuccessSendErrorZ* o_conv = (LDKCResult_SendSuccessSendErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SendSuccessSendErrorZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_NoneSendErrorZ_free(int64_t _res) {
+void CS_LDK_CResult_SendSuccessSendErrorZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_NoneSendErrorZ _res_conv = *(LDKCResult_NoneSendErrorZ*)(_res_ptr);
+ LDKCResult_SendSuccessSendErrorZ _res_conv = *(LDKCResult_SendSuccessSendErrorZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_NoneSendErrorZ_free(_res_conv);
+ CResult_SendSuccessSendErrorZ_free(_res_conv);
}
int64_t CS_LDK_CResult_BlindedPathNoneZ_ok(int64_t o) {
return tag_ptr(ret_conv, true);
}
+void CS_LDK_CVec_ForwardNodeZ_free(int64_tArray _res) {
+ LDKCVec_ForwardNodeZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKForwardNode), "LDKCVec_ForwardNodeZ Elements");
+ else
+ _res_constr.data = NULL;
+ int64_t* _res_vals = _res->elems;
+ for (size_t n = 0; n < _res_constr.datalen; n++) {
+ int64_t _res_conv_13 = _res_vals[n];
+ LDKForwardNode _res_conv_13_conv;
+ _res_conv_13_conv.inner = untag_ptr(_res_conv_13);
+ _res_conv_13_conv.is_owned = ptr_is_owned(_res_conv_13);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_13_conv);
+ _res_constr.data[n] = _res_conv_13_conv;
+ }
+ FREE(_res);
+ CVec_ForwardNodeZ_free(_res_constr);
+}
+
int64_t CS_LDK_CResult_BlindedPathDecodeErrorZ_ok(int64_t o) {
LDKBlindedPath o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_ok(int64_t o) {
+ LDKDelayedPaymentBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = DelayedPaymentBasepoint_clone(&o_conv);
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_DelayedPaymentBasepointDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_ok(int64_t o) {
+ LDKDelayedPaymentKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = DelayedPaymentKey_clone(&o_conv);
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentKeyDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_DelayedPaymentKeyDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_ok(int64_t o) {
+ LDKHtlcBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = HtlcBasepoint_clone(&o_conv);
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_HtlcBasepointDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* o_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_HtlcBasepointDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_HtlcBasepointDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_HtlcBasepointDecodeErrorZ _res_conv = *(LDKCResult_HtlcBasepointDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_HtlcBasepointDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_HtlcBasepointDecodeErrorZ_clone_ptr(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* arg_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_HtlcBasepointDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* orig_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_ok(int64_t o) {
+ LDKHtlcKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = HtlcKey_clone(&o_conv);
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_HtlcKeyDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_HtlcKeyDecodeErrorZ* o_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_HtlcKeyDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_HtlcKeyDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_HtlcKeyDecodeErrorZ _res_conv = *(LDKCResult_HtlcKeyDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_HtlcKeyDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_HtlcKeyDecodeErrorZ_clone_ptr(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_HtlcKeyDecodeErrorZ* arg_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_HtlcKeyDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_HtlcKeyDecodeErrorZ* orig_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_ok(int64_t o) {
+ LDKRevocationBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = RevocationBasepoint_clone(&o_conv);
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_RevocationBasepointDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* o_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_RevocationBasepointDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_RevocationBasepointDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_RevocationBasepointDecodeErrorZ _res_conv = *(LDKCResult_RevocationBasepointDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_RevocationBasepointDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_RevocationBasepointDecodeErrorZ_clone_ptr(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* arg_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_RevocationBasepointDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* orig_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_ok(int64_t o) {
+ LDKRevocationKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = RevocationKey_clone(&o_conv);
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_RevocationKeyDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_RevocationKeyDecodeErrorZ* o_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_RevocationKeyDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_RevocationKeyDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_RevocationKeyDecodeErrorZ _res_conv = *(LDKCResult_RevocationKeyDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_RevocationKeyDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_RevocationKeyDecodeErrorZ_clone_ptr(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_RevocationKeyDecodeErrorZ* arg_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_RevocationKeyDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_RevocationKeyDecodeErrorZ* orig_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_COption_FilterZ_some(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
return ret_ref;
}
+int64_t CS_LDK_Hostname_hash(int64_t o) {
+ LDKHostname o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Hostname_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Hostname_eq(int64_t a, int64_t b) {
LDKHostname a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TransactionU16LenLimited_hash(int64_t o) {
+ LDKTransactionU16LenLimited o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TransactionU16LenLimited_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TransactionU16LenLimited_eq(int64_t a, int64_t b) {
LDKTransactionU16LenLimited a_conv;
a_conv.inner = untag_ptr(a);
return ret_conv;
}
+int64_t CS_LDK_UntrustedString_hash(int64_t o) {
+ LDKUntrustedString o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UntrustedString_hash(&o_conv);
+ return ret_conv;
+}
+
int8_tArray CS_LDK_UntrustedString_write(int64_t obj) {
LDKUntrustedString obj_conv;
obj_conv.inner = untag_ptr(obj);
Record_set_level(&this_ptr_conv, val_conv);
}
+int8_tArray CS_LDK_Record_get_peer_id(int64_t this_ptr) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, Record_get_peer_id(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_Record_set_peer_id(int64_t this_ptr, int8_tArray val) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ Record_set_peer_id(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_Record_get_channel_id(int64_t this_ptr) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_ThirtyTwoBytesZ *ret_copy = MALLOC(sizeof(LDKCOption_ThirtyTwoBytesZ), "LDKCOption_ThirtyTwoBytesZ");
+ *ret_copy = Record_get_channel_id(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_Record_set_channel_id(int64_t this_ptr, int64_t val) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_ThirtyTwoBytesZ val_conv = *(LDKCOption_ThirtyTwoBytesZ*)(val_ptr);
+ val_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(val));
+ Record_set_channel_id(&this_ptr_conv, val_conv);
+}
+
jstring CS_LDK_Record_get_args(int64_t this_ptr) {
LDKRecord this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
Record_set_line(&this_ptr_conv, val);
}
+int64_t CS_LDK_Record_new(int32_t level_arg, int8_tArray peer_id_arg, int64_t channel_id_arg, jstring args_arg, jstring module_path_arg, jstring file_arg, int32_t line_arg) {
+ LDKLevel level_arg_conv = LDKLevel_from_cs(level_arg);
+ LDKPublicKey peer_id_arg_ref;
+ CHECK(peer_id_arg->arr_len == 33);
+ memcpy(peer_id_arg_ref.compressed_form, peer_id_arg->elems, 33); FREE(peer_id_arg);
+ void* channel_id_arg_ptr = untag_ptr(channel_id_arg);
+ CHECK_ACCESS(channel_id_arg_ptr);
+ LDKCOption_ThirtyTwoBytesZ channel_id_arg_conv = *(LDKCOption_ThirtyTwoBytesZ*)(channel_id_arg_ptr);
+ channel_id_arg_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(channel_id_arg));
+ LDKStr args_arg_conv = str_ref_to_owned_c(args_arg);
+ LDKStr module_path_arg_conv = str_ref_to_owned_c(module_path_arg);
+ LDKStr file_arg_conv = str_ref_to_owned_c(file_arg);
+ LDKRecord ret_var = Record_new(level_arg_conv, peer_id_arg_ref, channel_id_arg_conv, args_arg_conv, module_path_arg_conv, file_arg_conv, line_arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
static inline uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg) {
LDKRecord ret_var = Record_clone(arg);
int64_t ret_ref = 0;
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_conv;
}
-int32_t CS_LDK_ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee() {
- int32_t ret_conv = LDKConfirmationTarget_to_cs(ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee());
- return ret_conv;
-}
-
int32_t CS_LDK_ConfirmationTarget_min_allowed_anchor_channel_remote_fee() {
int32_t ret_conv = LDKConfirmationTarget_to_cs(ConfirmationTarget_min_allowed_anchor_channel_remote_fee());
return ret_conv;
return ret_arr;
}
-void CS_LDK_ChannelMonitor_load_outputs_to_watch(int64_t this_arg, int64_t filter) {
+void CS_LDK_ChannelMonitor_load_outputs_to_watch(int64_t this_arg, int64_t filter, int64_t logger) {
LDKChannelMonitor this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
void* filter_ptr = untag_ptr(filter);
if (ptr_is_owned(filter)) { CHECK_ACCESS(filter_ptr); }
LDKFilter* filter_conv = (LDKFilter*)filter_ptr;
- ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv);
+ void* logger_ptr = untag_ptr(logger);
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
+ ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv, logger_conv);
}
int64_tArray CS_LDK_ChannelMonitor_get_and_clear_pending_monitor_events(int64_t this_arg) {
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_block_connected(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
ChannelMonitor_block_disconnected(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv);
}
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_transactions_confirmed(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
ChannelMonitor_transaction_unconfirmed(&this_arg_conv, txid_ref, broadcaster_conv, fee_estimator_conv, logger_conv);
}
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_best_block_updated(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
this_arg_conv.is_owned = false;
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv);
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
- for (size_t x = 0; x < ret_var.datalen; x++) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv_49_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv_49_conv = ret_var.data[x];
- ret_arr_ptr[x] = tag_ptr(ret_conv_49_conv, true);
+ for (size_t c = 0; c < ret_var.datalen; c++) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv_54_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv_54_conv = ret_var.data[c];
+ ret_arr_ptr[c] = tag_ptr(ret_conv_54_conv, true);
}
FREE(ret_var.data);
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
ChannelMonitor_rebroadcast_pending_claims(&this_arg_conv, broadcaster_conv, fee_estimator_conv, logger_conv);
}
return tag_ptr(ret_conv, true);
}
+void CS_LDK_InboundHTLCErr_free(int64_t this_obj) {
+ LDKInboundHTLCErr this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ InboundHTLCErr_free(this_obj_conv);
+}
+
+int16_t CS_LDK_InboundHTLCErr_get_err_code(int64_t this_ptr) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int16_t ret_conv = InboundHTLCErr_get_err_code(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_InboundHTLCErr_set_err_code(int64_t this_ptr, int16_t val) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ InboundHTLCErr_set_err_code(&this_ptr_conv, val);
+}
+
+int8_tArray CS_LDK_InboundHTLCErr_get_err_data(int64_t this_ptr) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = InboundHTLCErr_get_err_data(&this_ptr_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+void CS_LDK_InboundHTLCErr_set_err_data(int64_t this_ptr, int8_tArray val) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u8Z val_ref;
+ val_ref.datalen = val->arr_len;
+ val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(val_ref.data, val->elems, val_ref.datalen); FREE(val);
+ InboundHTLCErr_set_err_data(&this_ptr_conv, val_ref);
+}
+
+jstring CS_LDK_InboundHTLCErr_get_msg(int64_t this_ptr) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKStr ret_str = InboundHTLCErr_get_msg(&this_ptr_conv);
+ jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
+ Str_free(ret_str);
+ return ret_conv;
+}
+
+void CS_LDK_InboundHTLCErr_set_msg(int64_t this_ptr, jstring val) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKStr val_conv = str_ref_to_owned_c(val);
+ InboundHTLCErr_set_msg(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_InboundHTLCErr_new(int16_t err_code_arg, int8_tArray err_data_arg, jstring msg_arg) {
+ LDKCVec_u8Z err_data_arg_ref;
+ err_data_arg_ref.datalen = err_data_arg->arr_len;
+ err_data_arg_ref.data = MALLOC(err_data_arg_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(err_data_arg_ref.data, err_data_arg->elems, err_data_arg_ref.datalen); FREE(err_data_arg);
+ LDKStr msg_arg_conv = str_ref_to_owned_c(msg_arg);
+ LDKInboundHTLCErr ret_var = InboundHTLCErr_new(err_code_arg, err_data_arg_ref, msg_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_peel_payment_onion(int64_t msg, int64_t node_signer, int64_t logger, int32_t cur_height, jboolean accept_mpp_keysend, jboolean allow_skimmed_fees) {
+ LDKUpdateAddHTLC msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ void* node_signer_ptr = untag_ptr(node_signer);
+ if (ptr_is_owned(node_signer)) { CHECK_ACCESS(node_signer_ptr); }
+ LDKNodeSigner* node_signer_conv = (LDKNodeSigner*)node_signer_ptr;
+ void* logger_ptr = untag_ptr(logger);
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoInboundHTLCErrZ), "LDKCResult_PendingHTLCInfoInboundHTLCErrZ");
+ *ret_conv = peel_payment_onion(&msg_conv, node_signer_conv, logger_conv, cur_height, accept_mpp_keysend, allow_skimmed_fees);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_PendingHTLCRouting_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKPendingHTLCRouting this_ptr_conv = *(LDKPendingHTLCRouting*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ PendingHTLCRouting_free(this_ptr_conv);
+}
+
+static inline uint64_t PendingHTLCRouting_clone_ptr(LDKPendingHTLCRouting *NONNULL_PTR arg) {
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_PendingHTLCRouting_clone_ptr(int64_t arg) {
+ LDKPendingHTLCRouting* arg_conv = (LDKPendingHTLCRouting*)untag_ptr(arg);
+ int64_t ret_conv = PendingHTLCRouting_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_clone(int64_t orig) {
+ LDKPendingHTLCRouting* orig_conv = (LDKPendingHTLCRouting*)untag_ptr(orig);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_forward(int64_t onion_packet, int64_t short_channel_id, int64_t blinded) {
+ LDKOnionPacket onion_packet_conv;
+ onion_packet_conv.inner = untag_ptr(onion_packet);
+ onion_packet_conv.is_owned = ptr_is_owned(onion_packet);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(onion_packet_conv);
+ onion_packet_conv = OnionPacket_clone(&onion_packet_conv);
+ LDKBlindedForward blinded_conv;
+ blinded_conv.inner = untag_ptr(blinded);
+ blinded_conv.is_owned = ptr_is_owned(blinded);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(blinded_conv);
+ blinded_conv = BlindedForward_clone(&blinded_conv);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_forward(onion_packet_conv, short_channel_id, blinded_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_receive(int64_t payment_data, int64_t payment_metadata, int32_t incoming_cltv_expiry, int8_tArray phantom_shared_secret, int64_tArray custom_tlvs, jboolean requires_blinded_error) {
+ LDKFinalOnionHopData payment_data_conv;
+ payment_data_conv.inner = untag_ptr(payment_data);
+ payment_data_conv.is_owned = ptr_is_owned(payment_data);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_conv);
+ payment_data_conv = FinalOnionHopData_clone(&payment_data_conv);
+ void* payment_metadata_ptr = untag_ptr(payment_metadata);
+ CHECK_ACCESS(payment_metadata_ptr);
+ LDKCOption_CVec_u8ZZ payment_metadata_conv = *(LDKCOption_CVec_u8ZZ*)(payment_metadata_ptr);
+ payment_metadata_conv = COption_CVec_u8ZZ_clone((LDKCOption_CVec_u8ZZ*)untag_ptr(payment_metadata));
+ LDKThirtyTwoBytes phantom_shared_secret_ref;
+ CHECK(phantom_shared_secret->arr_len == 32);
+ memcpy(phantom_shared_secret_ref.data, phantom_shared_secret->elems, 32); FREE(phantom_shared_secret);
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_constr;
+ custom_tlvs_constr.datalen = custom_tlvs->arr_len;
+ if (custom_tlvs_constr.datalen > 0)
+ custom_tlvs_constr.data = MALLOC(custom_tlvs_constr.datalen * sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKCVec_C2Tuple_u64CVec_u8ZZZ Elements");
+ else
+ custom_tlvs_constr.data = NULL;
+ int64_t* custom_tlvs_vals = custom_tlvs->elems;
+ for (size_t x = 0; x < custom_tlvs_constr.datalen; x++) {
+ int64_t custom_tlvs_conv_23 = custom_tlvs_vals[x];
+ void* custom_tlvs_conv_23_ptr = untag_ptr(custom_tlvs_conv_23);
+ CHECK_ACCESS(custom_tlvs_conv_23_ptr);
+ LDKC2Tuple_u64CVec_u8ZZ custom_tlvs_conv_23_conv = *(LDKC2Tuple_u64CVec_u8ZZ*)(custom_tlvs_conv_23_ptr);
+ custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone((LDKC2Tuple_u64CVec_u8ZZ*)untag_ptr(custom_tlvs_conv_23));
+ custom_tlvs_constr.data[x] = custom_tlvs_conv_23_conv;
+ }
+ FREE(custom_tlvs);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_receive(payment_data_conv, payment_metadata_conv, incoming_cltv_expiry, phantom_shared_secret_ref, custom_tlvs_constr, requires_blinded_error);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_receive_keysend(int64_t payment_data, int8_tArray payment_preimage, int64_t payment_metadata, int32_t incoming_cltv_expiry, int64_tArray custom_tlvs) {
+ LDKFinalOnionHopData payment_data_conv;
+ payment_data_conv.inner = untag_ptr(payment_data);
+ payment_data_conv.is_owned = ptr_is_owned(payment_data);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_conv);
+ payment_data_conv = FinalOnionHopData_clone(&payment_data_conv);
+ LDKThirtyTwoBytes payment_preimage_ref;
+ CHECK(payment_preimage->arr_len == 32);
+ memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); FREE(payment_preimage);
+ void* payment_metadata_ptr = untag_ptr(payment_metadata);
+ CHECK_ACCESS(payment_metadata_ptr);
+ LDKCOption_CVec_u8ZZ payment_metadata_conv = *(LDKCOption_CVec_u8ZZ*)(payment_metadata_ptr);
+ payment_metadata_conv = COption_CVec_u8ZZ_clone((LDKCOption_CVec_u8ZZ*)untag_ptr(payment_metadata));
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_constr;
+ custom_tlvs_constr.datalen = custom_tlvs->arr_len;
+ if (custom_tlvs_constr.datalen > 0)
+ custom_tlvs_constr.data = MALLOC(custom_tlvs_constr.datalen * sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKCVec_C2Tuple_u64CVec_u8ZZZ Elements");
+ else
+ custom_tlvs_constr.data = NULL;
+ int64_t* custom_tlvs_vals = custom_tlvs->elems;
+ for (size_t x = 0; x < custom_tlvs_constr.datalen; x++) {
+ int64_t custom_tlvs_conv_23 = custom_tlvs_vals[x];
+ void* custom_tlvs_conv_23_ptr = untag_ptr(custom_tlvs_conv_23);
+ CHECK_ACCESS(custom_tlvs_conv_23_ptr);
+ LDKC2Tuple_u64CVec_u8ZZ custom_tlvs_conv_23_conv = *(LDKC2Tuple_u64CVec_u8ZZ*)(custom_tlvs_conv_23_ptr);
+ custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone((LDKC2Tuple_u64CVec_u8ZZ*)untag_ptr(custom_tlvs_conv_23));
+ custom_tlvs_constr.data[x] = custom_tlvs_conv_23_conv;
+ }
+ FREE(custom_tlvs);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_receive_keysend(payment_data_conv, payment_preimage_ref, payment_metadata_conv, incoming_cltv_expiry, custom_tlvs_constr);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_BlindedForward_free(int64_t this_obj) {
+ LDKBlindedForward this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ BlindedForward_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_BlindedForward_get_inbound_blinding_point(int64_t this_ptr) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, BlindedForward_get_inbound_blinding_point(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_BlindedForward_set_inbound_blinding_point(int64_t this_ptr, int8_tArray val) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ BlindedForward_set_inbound_blinding_point(&this_ptr_conv, val_ref);
+}
+
+int32_t CS_LDK_BlindedForward_get_failure(int64_t this_ptr) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedForward_get_failure(&this_ptr_conv));
+ return ret_conv;
+}
+
+void CS_LDK_BlindedForward_set_failure(int64_t this_ptr, int32_t val) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKBlindedFailure val_conv = LDKBlindedFailure_from_cs(val);
+ BlindedForward_set_failure(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_BlindedForward_new(int8_tArray inbound_blinding_point_arg, int32_t failure_arg) {
+ LDKPublicKey inbound_blinding_point_arg_ref;
+ CHECK(inbound_blinding_point_arg->arr_len == 33);
+ memcpy(inbound_blinding_point_arg_ref.compressed_form, inbound_blinding_point_arg->elems, 33); FREE(inbound_blinding_point_arg);
+ LDKBlindedFailure failure_arg_conv = LDKBlindedFailure_from_cs(failure_arg);
+ LDKBlindedForward ret_var = BlindedForward_new(inbound_blinding_point_arg_ref, failure_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t BlindedForward_clone_ptr(LDKBlindedForward *NONNULL_PTR arg) {
+ LDKBlindedForward ret_var = BlindedForward_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_BlindedForward_clone_ptr(int64_t arg) {
+ LDKBlindedForward arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = BlindedForward_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedForward_clone(int64_t orig) {
+ LDKBlindedForward orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKBlindedForward ret_var = BlindedForward_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_BlindedForward_hash(int64_t o) {
+ LDKBlindedForward o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = BlindedForward_hash(&o_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_BlindedForward_eq(int64_t a, int64_t b) {
+ LDKBlindedForward a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKBlindedForward b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = BlindedForward_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PendingHTLCInfo_free(int64_t this_obj) {
+ LDKPendingHTLCInfo this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ PendingHTLCInfo_free(this_obj_conv);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_routing(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCInfo_get_routing(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_PendingHTLCInfo_set_routing(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKPendingHTLCRouting val_conv = *(LDKPendingHTLCRouting*)(val_ptr);
+ val_conv = PendingHTLCRouting_clone((LDKPendingHTLCRouting*)untag_ptr(val));
+ PendingHTLCInfo_set_routing(&this_ptr_conv, val_conv);
+}
+
+int8_tArray CS_LDK_PendingHTLCInfo_get_incoming_shared_secret(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *PendingHTLCInfo_get_incoming_shared_secret(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_PendingHTLCInfo_set_incoming_shared_secret(int64_t this_ptr, int8_tArray val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ PendingHTLCInfo_set_incoming_shared_secret(&this_ptr_conv, val_ref);
+}
+
+int8_tArray CS_LDK_PendingHTLCInfo_get_payment_hash(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *PendingHTLCInfo_get_payment_hash(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_PendingHTLCInfo_set_payment_hash(int64_t this_ptr, int8_tArray val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ PendingHTLCInfo_set_payment_hash(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_incoming_amt_msat(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z");
+ *ret_copy = PendingHTLCInfo_get_incoming_amt_msat(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_PendingHTLCInfo_set_incoming_amt_msat(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr);
+ val_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(val));
+ PendingHTLCInfo_set_incoming_amt_msat(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_outgoing_amt_msat(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = PendingHTLCInfo_get_outgoing_amt_msat(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PendingHTLCInfo_set_outgoing_amt_msat(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ PendingHTLCInfo_set_outgoing_amt_msat(&this_ptr_conv, val);
+}
+
+int32_t CS_LDK_PendingHTLCInfo_get_outgoing_cltv_value(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = PendingHTLCInfo_get_outgoing_cltv_value(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PendingHTLCInfo_set_outgoing_cltv_value(int64_t this_ptr, int32_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ PendingHTLCInfo_set_outgoing_cltv_value(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_skimmed_fee_msat(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z");
+ *ret_copy = PendingHTLCInfo_get_skimmed_fee_msat(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_PendingHTLCInfo_set_skimmed_fee_msat(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr);
+ val_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(val));
+ PendingHTLCInfo_set_skimmed_fee_msat(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_new(int64_t routing_arg, int8_tArray incoming_shared_secret_arg, int8_tArray payment_hash_arg, int64_t incoming_amt_msat_arg, int64_t outgoing_amt_msat_arg, int32_t outgoing_cltv_value_arg, int64_t skimmed_fee_msat_arg) {
+ void* routing_arg_ptr = untag_ptr(routing_arg);
+ CHECK_ACCESS(routing_arg_ptr);
+ LDKPendingHTLCRouting routing_arg_conv = *(LDKPendingHTLCRouting*)(routing_arg_ptr);
+ routing_arg_conv = PendingHTLCRouting_clone((LDKPendingHTLCRouting*)untag_ptr(routing_arg));
+ LDKThirtyTwoBytes incoming_shared_secret_arg_ref;
+ CHECK(incoming_shared_secret_arg->arr_len == 32);
+ memcpy(incoming_shared_secret_arg_ref.data, incoming_shared_secret_arg->elems, 32); FREE(incoming_shared_secret_arg);
+ LDKThirtyTwoBytes payment_hash_arg_ref;
+ CHECK(payment_hash_arg->arr_len == 32);
+ memcpy(payment_hash_arg_ref.data, payment_hash_arg->elems, 32); FREE(payment_hash_arg);
+ void* incoming_amt_msat_arg_ptr = untag_ptr(incoming_amt_msat_arg);
+ CHECK_ACCESS(incoming_amt_msat_arg_ptr);
+ LDKCOption_u64Z incoming_amt_msat_arg_conv = *(LDKCOption_u64Z*)(incoming_amt_msat_arg_ptr);
+ incoming_amt_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(incoming_amt_msat_arg));
+ void* skimmed_fee_msat_arg_ptr = untag_ptr(skimmed_fee_msat_arg);
+ CHECK_ACCESS(skimmed_fee_msat_arg_ptr);
+ LDKCOption_u64Z skimmed_fee_msat_arg_conv = *(LDKCOption_u64Z*)(skimmed_fee_msat_arg_ptr);
+ skimmed_fee_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(skimmed_fee_msat_arg));
+ LDKPendingHTLCInfo ret_var = PendingHTLCInfo_new(routing_arg_conv, incoming_shared_secret_arg_ref, payment_hash_arg_ref, incoming_amt_msat_arg_conv, outgoing_amt_msat_arg, outgoing_cltv_value_arg, skimmed_fee_msat_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t PendingHTLCInfo_clone_ptr(LDKPendingHTLCInfo *NONNULL_PTR arg) {
+ LDKPendingHTLCInfo ret_var = PendingHTLCInfo_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_PendingHTLCInfo_clone_ptr(int64_t arg) {
+ LDKPendingHTLCInfo arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = PendingHTLCInfo_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PendingHTLCInfo_clone(int64_t orig) {
+ LDKPendingHTLCInfo orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKPendingHTLCInfo ret_var = PendingHTLCInfo_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int32_t CS_LDK_BlindedFailure_clone(int64_t orig) {
+ LDKBlindedFailure* orig_conv = (LDKBlindedFailure*)untag_ptr(orig);
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedFailure_clone(orig_conv));
+ return ret_conv;
+}
+
+int32_t CS_LDK_BlindedFailure_from_introduction_node() {
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedFailure_from_introduction_node());
+ return ret_conv;
+}
+
+int32_t CS_LDK_BlindedFailure_from_blinded_node() {
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedFailure_from_blinded_node());
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedFailure_hash(int64_t o) {
+ LDKBlindedFailure* o_conv = (LDKBlindedFailure*)untag_ptr(o);
+ int64_t ret_conv = BlindedFailure_hash(o_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_BlindedFailure_eq(int64_t a, int64_t b) {
+ LDKBlindedFailure* a_conv = (LDKBlindedFailure*)untag_ptr(a);
+ LDKBlindedFailure* b_conv = (LDKBlindedFailure*)untag_ptr(b);
+ jboolean ret_conv = BlindedFailure_eq(a_conv, b_conv);
+ return ret_conv;
+}
+
void CS_LDK_FailureCode_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
return ret_ref;
}
-int64_t CS_LDK_ChannelManager_create_channel(int64_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int8_tArray user_channel_id, int64_t override_config) {
+int64_t CS_LDK_ChannelManager_create_channel(int64_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int8_tArray user_channel_id, int64_t temporary_channel_id, int64_t override_config) {
LDKChannelManager this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
LDKU128 user_channel_id_ref;
CHECK(user_channel_id->arr_len == 16);
memcpy(user_channel_id_ref.le_bytes, user_channel_id->elems, 16); FREE(user_channel_id);
+ void* temporary_channel_id_ptr = untag_ptr(temporary_channel_id);
+ CHECK_ACCESS(temporary_channel_id_ptr);
+ LDKCOption_ThirtyTwoBytesZ temporary_channel_id_conv = *(LDKCOption_ThirtyTwoBytesZ*)(temporary_channel_id_ptr);
+ temporary_channel_id_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(temporary_channel_id));
LDKUserConfig override_config_conv;
override_config_conv.inner = untag_ptr(override_config);
override_config_conv.is_owned = ptr_is_owned(override_config);
CHECK_INNER_FIELD_ACCESS_OR_NULL(override_config_conv);
override_config_conv = UserConfig_clone(&override_config_conv);
LDKCResult_ThirtyTwoBytesAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesAPIErrorZ), "LDKCResult_ThirtyTwoBytesAPIErrorZ");
- *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id_ref, override_config_conv);
+ *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id_ref, temporary_channel_id_conv, override_config_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
+int8_tArray CS_LDK_BlindedForward_write(int64_t obj) {
+ LDKBlindedForward obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = BlindedForward_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_BlindedForward_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = BlindedForward_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_PendingHTLCRouting_write(int64_t obj) {
+ LDKPendingHTLCRouting* obj_conv = (LDKPendingHTLCRouting*)untag_ptr(obj);
+ LDKCVec_u8Z ret_var = PendingHTLCRouting_write(obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = PendingHTLCRouting_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_PendingHTLCInfo_write(int64_t obj) {
+ LDKPendingHTLCInfo obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = PendingHTLCInfo_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_PendingHTLCInfo_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = PendingHTLCInfo_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_BlindedFailure_write(int64_t obj) {
+ LDKBlindedFailure* obj_conv = (LDKBlindedFailure*)untag_ptr(obj);
+ LDKCVec_u8Z ret_var = BlindedFailure_write(obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_BlindedFailure_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = BlindedFailure_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_ChannelManager_write(int64_t obj) {
LDKChannelManager obj_conv;
obj_conv.inner = untag_ptr(obj);
return tag_ptr(ret_conv, true);
}
+void CS_LDK_DelayedPaymentBasepoint_free(int64_t this_obj) {
+ LDKDelayedPaymentBasepoint this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ DelayedPaymentBasepoint_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_DelayedPaymentBasepoint_get_a(int64_t this_ptr) {
+ LDKDelayedPaymentBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentBasepoint_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_DelayedPaymentBasepoint_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKDelayedPaymentBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ DelayedPaymentBasepoint_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKDelayedPaymentBasepoint ret_var = DelayedPaymentBasepoint_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_DelayedPaymentBasepoint_eq(int64_t a, int64_t b) {
+ LDKDelayedPaymentBasepoint a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKDelayedPaymentBasepoint b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = DelayedPaymentBasepoint_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t DelayedPaymentBasepoint_clone_ptr(LDKDelayedPaymentBasepoint *NONNULL_PTR arg) {
+ LDKDelayedPaymentBasepoint ret_var = DelayedPaymentBasepoint_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_DelayedPaymentBasepoint_clone_ptr(int64_t arg) {
+ LDKDelayedPaymentBasepoint arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = DelayedPaymentBasepoint_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_clone(int64_t orig) {
+ LDKDelayedPaymentBasepoint orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKDelayedPaymentBasepoint ret_var = DelayedPaymentBasepoint_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_hash(int64_t o) {
+ LDKDelayedPaymentBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = DelayedPaymentBasepoint_hash(&o_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_DelayedPaymentBasepoint_to_public_key(int64_t this_arg) {
+ LDKDelayedPaymentBasepoint this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentBasepoint_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_DelayedPaymentBasepoint_write(int64_t obj) {
+ LDKDelayedPaymentBasepoint obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = DelayedPaymentBasepoint_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = DelayedPaymentBasepoint_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_DelayedPaymentKey_free(int64_t this_obj) {
+ LDKDelayedPaymentKey this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ DelayedPaymentKey_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_DelayedPaymentKey_get_a(int64_t this_ptr) {
+ LDKDelayedPaymentKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentKey_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_DelayedPaymentKey_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKDelayedPaymentKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ DelayedPaymentKey_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_DelayedPaymentKey_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_DelayedPaymentKey_eq(int64_t a, int64_t b) {
+ LDKDelayedPaymentKey a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKDelayedPaymentKey b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = DelayedPaymentKey_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t DelayedPaymentKey_clone_ptr(LDKDelayedPaymentKey *NONNULL_PTR arg) {
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_DelayedPaymentKey_clone_ptr(int64_t arg) {
+ LDKDelayedPaymentKey arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = DelayedPaymentKey_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_clone(int64_t orig) {
+ LDKDelayedPaymentKey orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_from_basepoint(int64_t countersignatory_basepoint, int8_tArray per_commitment_point) {
+ LDKDelayedPaymentBasepoint countersignatory_basepoint_conv;
+ countersignatory_basepoint_conv.inner = untag_ptr(countersignatory_basepoint);
+ countersignatory_basepoint_conv.is_owned = ptr_is_owned(countersignatory_basepoint);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_basepoint_conv);
+ countersignatory_basepoint_conv.is_owned = false;
+ LDKPublicKey per_commitment_point_ref;
+ CHECK(per_commitment_point->arr_len == 33);
+ memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_from_basepoint(&countersignatory_basepoint_conv, per_commitment_point_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_from_secret_key(int8_tArray sk) {
+ uint8_t sk_arr[32];
+ CHECK(sk->arr_len == 32);
+ memcpy(sk_arr, sk->elems, 32); FREE(sk);
+ uint8_t (*sk_ref)[32] = &sk_arr;
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_from_secret_key(sk_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_DelayedPaymentKey_to_public_key(int64_t this_arg) {
+ LDKDelayedPaymentKey this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentKey_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_DelayedPaymentKey_write(int64_t obj) {
+ LDKDelayedPaymentKey obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = DelayedPaymentKey_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = DelayedPaymentKey_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_HtlcBasepoint_free(int64_t this_obj) {
+ LDKHtlcBasepoint this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ HtlcBasepoint_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_HtlcBasepoint_get_a(int64_t this_ptr) {
+ LDKHtlcBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcBasepoint_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_HtlcBasepoint_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKHtlcBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ HtlcBasepoint_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_HtlcBasepoint_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKHtlcBasepoint ret_var = HtlcBasepoint_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_HtlcBasepoint_eq(int64_t a, int64_t b) {
+ LDKHtlcBasepoint a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKHtlcBasepoint b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = HtlcBasepoint_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t HtlcBasepoint_clone_ptr(LDKHtlcBasepoint *NONNULL_PTR arg) {
+ LDKHtlcBasepoint ret_var = HtlcBasepoint_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_HtlcBasepoint_clone_ptr(int64_t arg) {
+ LDKHtlcBasepoint arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = HtlcBasepoint_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_HtlcBasepoint_clone(int64_t orig) {
+ LDKHtlcBasepoint orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKHtlcBasepoint ret_var = HtlcBasepoint_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_HtlcBasepoint_hash(int64_t o) {
+ LDKHtlcBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = HtlcBasepoint_hash(&o_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_HtlcBasepoint_to_public_key(int64_t this_arg) {
+ LDKHtlcBasepoint this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcBasepoint_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_HtlcBasepoint_write(int64_t obj) {
+ LDKHtlcBasepoint obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = HtlcBasepoint_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_HtlcBasepoint_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = HtlcBasepoint_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_HtlcKey_free(int64_t this_obj) {
+ LDKHtlcKey this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ HtlcKey_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_HtlcKey_get_a(int64_t this_ptr) {
+ LDKHtlcKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcKey_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_HtlcKey_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKHtlcKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ HtlcKey_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_HtlcKey_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKHtlcKey ret_var = HtlcKey_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_HtlcKey_eq(int64_t a, int64_t b) {
+ LDKHtlcKey a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKHtlcKey b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = HtlcKey_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t HtlcKey_clone_ptr(LDKHtlcKey *NONNULL_PTR arg) {
+ LDKHtlcKey ret_var = HtlcKey_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_HtlcKey_clone_ptr(int64_t arg) {
+ LDKHtlcKey arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = HtlcKey_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_HtlcKey_clone(int64_t orig) {
+ LDKHtlcKey orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKHtlcKey ret_var = HtlcKey_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_HtlcKey_from_basepoint(int64_t countersignatory_basepoint, int8_tArray per_commitment_point) {
+ LDKHtlcBasepoint countersignatory_basepoint_conv;
+ countersignatory_basepoint_conv.inner = untag_ptr(countersignatory_basepoint);
+ countersignatory_basepoint_conv.is_owned = ptr_is_owned(countersignatory_basepoint);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_basepoint_conv);
+ countersignatory_basepoint_conv.is_owned = false;
+ LDKPublicKey per_commitment_point_ref;
+ CHECK(per_commitment_point->arr_len == 33);
+ memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
+ LDKHtlcKey ret_var = HtlcKey_from_basepoint(&countersignatory_basepoint_conv, per_commitment_point_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_HtlcKey_from_secret_key(int8_tArray sk) {
+ uint8_t sk_arr[32];
+ CHECK(sk->arr_len == 32);
+ memcpy(sk_arr, sk->elems, 32); FREE(sk);
+ uint8_t (*sk_ref)[32] = &sk_arr;
+ LDKHtlcKey ret_var = HtlcKey_from_secret_key(sk_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_HtlcKey_to_public_key(int64_t this_arg) {
+ LDKHtlcKey this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcKey_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_HtlcKey_write(int64_t obj) {
+ LDKHtlcKey obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = HtlcKey_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_HtlcKey_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = HtlcKey_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_RevocationBasepoint_free(int64_t this_obj) {
+ LDKRevocationBasepoint this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ RevocationBasepoint_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_RevocationBasepoint_get_a(int64_t this_ptr) {
+ LDKRevocationBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationBasepoint_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_RevocationBasepoint_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKRevocationBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ RevocationBasepoint_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_RevocationBasepoint_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKRevocationBasepoint ret_var = RevocationBasepoint_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_RevocationBasepoint_eq(int64_t a, int64_t b) {
+ LDKRevocationBasepoint a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKRevocationBasepoint b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = RevocationBasepoint_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t RevocationBasepoint_clone_ptr(LDKRevocationBasepoint *NONNULL_PTR arg) {
+ LDKRevocationBasepoint ret_var = RevocationBasepoint_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_RevocationBasepoint_clone_ptr(int64_t arg) {
+ LDKRevocationBasepoint arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = RevocationBasepoint_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_RevocationBasepoint_clone(int64_t orig) {
+ LDKRevocationBasepoint orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKRevocationBasepoint ret_var = RevocationBasepoint_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_RevocationBasepoint_hash(int64_t o) {
+ LDKRevocationBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = RevocationBasepoint_hash(&o_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_RevocationBasepoint_to_public_key(int64_t this_arg) {
+ LDKRevocationBasepoint this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationBasepoint_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_RevocationBasepoint_write(int64_t obj) {
+ LDKRevocationBasepoint obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = RevocationBasepoint_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_RevocationBasepoint_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = RevocationBasepoint_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_RevocationKey_free(int64_t this_obj) {
+ LDKRevocationKey this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ RevocationKey_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_RevocationKey_get_a(int64_t this_ptr) {
+ LDKRevocationKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationKey_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_RevocationKey_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKRevocationKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ RevocationKey_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_RevocationKey_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKRevocationKey ret_var = RevocationKey_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_RevocationKey_eq(int64_t a, int64_t b) {
+ LDKRevocationKey a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKRevocationKey b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = RevocationKey_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t RevocationKey_clone_ptr(LDKRevocationKey *NONNULL_PTR arg) {
+ LDKRevocationKey ret_var = RevocationKey_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_RevocationKey_clone_ptr(int64_t arg) {
+ LDKRevocationKey arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = RevocationKey_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_RevocationKey_clone(int64_t orig) {
+ LDKRevocationKey orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKRevocationKey ret_var = RevocationKey_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_RevocationKey_hash(int64_t o) {
+ LDKRevocationKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = RevocationKey_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_RevocationKey_from_basepoint(int64_t countersignatory_basepoint, int8_tArray per_commitment_point) {
+ LDKRevocationBasepoint countersignatory_basepoint_conv;
+ countersignatory_basepoint_conv.inner = untag_ptr(countersignatory_basepoint);
+ countersignatory_basepoint_conv.is_owned = ptr_is_owned(countersignatory_basepoint);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_basepoint_conv);
+ countersignatory_basepoint_conv.is_owned = false;
+ LDKPublicKey per_commitment_point_ref;
+ CHECK(per_commitment_point->arr_len == 33);
+ memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
+ LDKRevocationKey ret_var = RevocationKey_from_basepoint(&countersignatory_basepoint_conv, per_commitment_point_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_RevocationKey_to_public_key(int64_t this_arg) {
+ LDKRevocationKey this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationKey_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_RevocationKey_write(int64_t obj) {
+ LDKRevocationKey obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = RevocationKey_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_RevocationKey_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = RevocationKey_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
void CS_LDK_ExpandedKey_free(int64_t this_obj) {
LDKExpandedKey this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_ref;
}
+int64_t CS_LDK_DecodeError_hash(int64_t o) {
+ LDKDecodeError* o_conv = (LDKDecodeError*)untag_ptr(o);
+ int64_t ret_conv = DecodeError_hash(o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_DecodeError_eq(int64_t a, int64_t b) {
LDKDecodeError* a_conv = (LDKDecodeError*)untag_ptr(a);
LDKDecodeError* b_conv = (LDKDecodeError*)untag_ptr(b);
return ret_ref;
}
+int64_t CS_LDK_Init_hash(int64_t o) {
+ LDKInit o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Init_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Init_eq(int64_t a, int64_t b) {
LDKInit a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ErrorMessage_hash(int64_t o) {
+ LDKErrorMessage o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ErrorMessage_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ErrorMessage_eq(int64_t a, int64_t b) {
LDKErrorMessage a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_WarningMessage_hash(int64_t o) {
+ LDKWarningMessage o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = WarningMessage_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_WarningMessage_eq(int64_t a, int64_t b) {
LDKWarningMessage a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_Ping_hash(int64_t o) {
+ LDKPing o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Ping_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Ping_eq(int64_t a, int64_t b) {
LDKPing a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_Pong_hash(int64_t o) {
+ LDKPong o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Pong_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Pong_eq(int64_t a, int64_t b) {
LDKPong a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_OpenChannel_hash(int64_t o) {
+ LDKOpenChannel o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OpenChannel_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_OpenChannel_eq(int64_t a, int64_t b) {
LDKOpenChannel a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_OpenChannelV2_hash(int64_t o) {
+ LDKOpenChannelV2 o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OpenChannelV2_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_OpenChannelV2_eq(int64_t a, int64_t b) {
LDKOpenChannelV2 a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_AcceptChannel_hash(int64_t o) {
+ LDKAcceptChannel o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = AcceptChannel_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_AcceptChannel_eq(int64_t a, int64_t b) {
LDKAcceptChannel a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_AcceptChannelV2_hash(int64_t o) {
+ LDKAcceptChannelV2 o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = AcceptChannelV2_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_AcceptChannelV2_eq(int64_t a, int64_t b) {
LDKAcceptChannelV2 a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_FundingCreated_hash(int64_t o) {
+ LDKFundingCreated o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = FundingCreated_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_FundingCreated_eq(int64_t a, int64_t b) {
LDKFundingCreated a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_FundingSigned_hash(int64_t o) {
+ LDKFundingSigned o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = FundingSigned_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_FundingSigned_eq(int64_t a, int64_t b) {
LDKFundingSigned a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelReady_hash(int64_t o) {
+ LDKChannelReady o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelReady_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelReady_eq(int64_t a, int64_t b) {
LDKChannelReady a_conv;
a_conv.inner = untag_ptr(a);
return ret_conv;
}
+void CS_LDK_Stfu_free(int64_t this_obj) {
+ LDKStfu this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ Stfu_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_Stfu_get_channel_id(int64_t this_ptr) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *Stfu_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_Stfu_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ Stfu_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int8_t CS_LDK_Stfu_get_initiator(int64_t this_ptr) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_t ret_conv = Stfu_get_initiator(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Stfu_set_initiator(int64_t this_ptr, int8_t val) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Stfu_set_initiator(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_Stfu_new(int8_tArray channel_id_arg, int8_t initiator_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKStfu ret_var = Stfu_new(channel_id_arg_ref, initiator_arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t Stfu_clone_ptr(LDKStfu *NONNULL_PTR arg) {
+ LDKStfu ret_var = Stfu_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_Stfu_clone_ptr(int64_t arg) {
+ LDKStfu arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = Stfu_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Stfu_clone(int64_t orig) {
+ LDKStfu orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKStfu ret_var = Stfu_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_Stfu_eq(int64_t a, int64_t b) {
+ LDKStfu a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKStfu b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = Stfu_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_free(int64_t this_obj) {
+ LDKSplice this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ Splice_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_Splice_get_channel_id(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *Splice_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_Splice_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ Splice_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int8_tArray CS_LDK_Splice_get_chain_hash(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *Splice_get_chain_hash(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_Splice_set_chain_hash(int64_t this_ptr, int8_tArray val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ Splice_set_chain_hash(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_Splice_get_relative_satoshis(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = Splice_get_relative_satoshis(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_set_relative_satoshis(int64_t this_ptr, int64_t val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Splice_set_relative_satoshis(&this_ptr_conv, val);
+}
+
+int32_t CS_LDK_Splice_get_funding_feerate_perkw(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = Splice_get_funding_feerate_perkw(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_set_funding_feerate_perkw(int64_t this_ptr, int32_t val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Splice_set_funding_feerate_perkw(&this_ptr_conv, val);
+}
+
+int32_t CS_LDK_Splice_get_locktime(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = Splice_get_locktime(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_set_locktime(int64_t this_ptr, int32_t val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Splice_set_locktime(&this_ptr_conv, val);
+}
+
+int8_tArray CS_LDK_Splice_get_funding_pubkey(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, Splice_get_funding_pubkey(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_Splice_set_funding_pubkey(int64_t this_ptr, int8_tArray val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ Splice_set_funding_pubkey(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_Splice_new(int8_tArray channel_id_arg, int8_tArray chain_hash_arg, int64_t relative_satoshis_arg, int32_t funding_feerate_perkw_arg, int32_t locktime_arg, int8_tArray funding_pubkey_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKThirtyTwoBytes chain_hash_arg_ref;
+ CHECK(chain_hash_arg->arr_len == 32);
+ memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); FREE(chain_hash_arg);
+ LDKPublicKey funding_pubkey_arg_ref;
+ CHECK(funding_pubkey_arg->arr_len == 33);
+ memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); FREE(funding_pubkey_arg);
+ LDKSplice ret_var = Splice_new(channel_id_arg_ref, chain_hash_arg_ref, relative_satoshis_arg, funding_feerate_perkw_arg, locktime_arg, funding_pubkey_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t Splice_clone_ptr(LDKSplice *NONNULL_PTR arg) {
+ LDKSplice ret_var = Splice_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_Splice_clone_ptr(int64_t arg) {
+ LDKSplice arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = Splice_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Splice_clone(int64_t orig) {
+ LDKSplice orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKSplice ret_var = Splice_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_Splice_eq(int64_t a, int64_t b) {
+ LDKSplice a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKSplice b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = Splice_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_SpliceAck_free(int64_t this_obj) {
+ LDKSpliceAck this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ SpliceAck_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_SpliceAck_get_channel_id(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *SpliceAck_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceAck_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ SpliceAck_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int8_tArray CS_LDK_SpliceAck_get_chain_hash(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *SpliceAck_get_chain_hash(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceAck_set_chain_hash(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ SpliceAck_set_chain_hash(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_SpliceAck_get_relative_satoshis(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = SpliceAck_get_relative_satoshis(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_SpliceAck_set_relative_satoshis(int64_t this_ptr, int64_t val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ SpliceAck_set_relative_satoshis(&this_ptr_conv, val);
+}
+
+int8_tArray CS_LDK_SpliceAck_get_funding_pubkey(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, SpliceAck_get_funding_pubkey(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceAck_set_funding_pubkey(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ SpliceAck_set_funding_pubkey(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_SpliceAck_new(int8_tArray channel_id_arg, int8_tArray chain_hash_arg, int64_t relative_satoshis_arg, int8_tArray funding_pubkey_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKThirtyTwoBytes chain_hash_arg_ref;
+ CHECK(chain_hash_arg->arr_len == 32);
+ memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); FREE(chain_hash_arg);
+ LDKPublicKey funding_pubkey_arg_ref;
+ CHECK(funding_pubkey_arg->arr_len == 33);
+ memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); FREE(funding_pubkey_arg);
+ LDKSpliceAck ret_var = SpliceAck_new(channel_id_arg_ref, chain_hash_arg_ref, relative_satoshis_arg, funding_pubkey_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t SpliceAck_clone_ptr(LDKSpliceAck *NONNULL_PTR arg) {
+ LDKSpliceAck ret_var = SpliceAck_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_SpliceAck_clone_ptr(int64_t arg) {
+ LDKSpliceAck arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = SpliceAck_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_SpliceAck_clone(int64_t orig) {
+ LDKSpliceAck orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKSpliceAck ret_var = SpliceAck_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_SpliceAck_eq(int64_t a, int64_t b) {
+ LDKSpliceAck a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKSpliceAck b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = SpliceAck_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_SpliceLocked_free(int64_t this_obj) {
+ LDKSpliceLocked this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ SpliceLocked_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_SpliceLocked_get_channel_id(int64_t this_ptr) {
+ LDKSpliceLocked this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *SpliceLocked_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceLocked_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceLocked this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ SpliceLocked_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_SpliceLocked_new(int8_tArray channel_id_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKSpliceLocked ret_var = SpliceLocked_new(channel_id_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t SpliceLocked_clone_ptr(LDKSpliceLocked *NONNULL_PTR arg) {
+ LDKSpliceLocked ret_var = SpliceLocked_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_SpliceLocked_clone_ptr(int64_t arg) {
+ LDKSpliceLocked arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = SpliceLocked_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_SpliceLocked_clone(int64_t orig) {
+ LDKSpliceLocked orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKSpliceLocked ret_var = SpliceLocked_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_SpliceLocked_eq(int64_t a, int64_t b) {
+ LDKSpliceLocked a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKSpliceLocked b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = SpliceLocked_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
void CS_LDK_TxAddInput_free(int64_t this_obj) {
LDKTxAddInput this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_ref;
}
+int64_t CS_LDK_TxAddInput_hash(int64_t o) {
+ LDKTxAddInput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAddInput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAddInput_eq(int64_t a, int64_t b) {
LDKTxAddInput a_conv;
a_conv.inner = untag_ptr(a);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = TxAddOutput_get_script(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = TxAddOutput_get_script(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_ref;
}
+int64_t CS_LDK_TxAddOutput_hash(int64_t o) {
+ LDKTxAddOutput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAddOutput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAddOutput_eq(int64_t a, int64_t b) {
LDKTxAddOutput a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxRemoveInput_hash(int64_t o) {
+ LDKTxRemoveInput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxRemoveInput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxRemoveInput_eq(int64_t a, int64_t b) {
LDKTxRemoveInput a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxRemoveOutput_hash(int64_t o) {
+ LDKTxRemoveOutput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxRemoveOutput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxRemoveOutput_eq(int64_t a, int64_t b) {
LDKTxRemoveOutput a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxComplete_hash(int64_t o) {
+ LDKTxComplete o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxComplete_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxComplete_eq(int64_t a, int64_t b) {
LDKTxComplete a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxSignatures_hash(int64_t o) {
+ LDKTxSignatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxSignatures_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxSignatures_eq(int64_t a, int64_t b) {
LDKTxSignatures a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxInitRbf_hash(int64_t o) {
+ LDKTxInitRbf o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxInitRbf_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxInitRbf_eq(int64_t a, int64_t b) {
LDKTxInitRbf a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxAckRbf_hash(int64_t o) {
+ LDKTxAckRbf o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAckRbf_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAckRbf_eq(int64_t a, int64_t b) {
LDKTxAckRbf a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxAbort_hash(int64_t o) {
+ LDKTxAbort o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAbort_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAbort_eq(int64_t a, int64_t b) {
LDKTxAbort a_conv;
a_conv.inner = untag_ptr(a);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_ref;
}
+int64_t CS_LDK_Shutdown_hash(int64_t o) {
+ LDKShutdown o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Shutdown_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Shutdown_eq(int64_t a, int64_t b) {
LDKShutdown a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ClosingSignedFeeRange_hash(int64_t o) {
+ LDKClosingSignedFeeRange o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ClosingSignedFeeRange_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ClosingSignedFeeRange_eq(int64_t a, int64_t b) {
LDKClosingSignedFeeRange a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ClosingSigned_hash(int64_t o) {
+ LDKClosingSigned o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ClosingSigned_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ClosingSigned_eq(int64_t a, int64_t b) {
LDKClosingSigned a_conv;
a_conv.inner = untag_ptr(a);
UpdateAddHTLC_set_skimmed_fee_msat(&this_ptr_conv, val_conv);
}
+int64_t CS_LDK_UpdateAddHTLC_get_onion_routing_packet(int64_t this_ptr) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKOnionPacket ret_var = UpdateAddHTLC_get_onion_routing_packet(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_UpdateAddHTLC_set_onion_routing_packet(int64_t this_ptr, int64_t val) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKOnionPacket val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = OnionPacket_clone(&val_conv);
+ UpdateAddHTLC_set_onion_routing_packet(&this_ptr_conv, val_conv);
+}
+
+int8_tArray CS_LDK_UpdateAddHTLC_get_blinding_point(int64_t this_ptr) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, UpdateAddHTLC_get_blinding_point(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_UpdateAddHTLC_set_blinding_point(int64_t this_ptr, int8_tArray val) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ UpdateAddHTLC_set_blinding_point(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_UpdateAddHTLC_new(int8_tArray channel_id_arg, int64_t htlc_id_arg, int64_t amount_msat_arg, int8_tArray payment_hash_arg, int32_t cltv_expiry_arg, int64_t skimmed_fee_msat_arg, int64_t onion_routing_packet_arg, int8_tArray blinding_point_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKThirtyTwoBytes payment_hash_arg_ref;
+ CHECK(payment_hash_arg->arr_len == 32);
+ memcpy(payment_hash_arg_ref.data, payment_hash_arg->elems, 32); FREE(payment_hash_arg);
+ void* skimmed_fee_msat_arg_ptr = untag_ptr(skimmed_fee_msat_arg);
+ CHECK_ACCESS(skimmed_fee_msat_arg_ptr);
+ LDKCOption_u64Z skimmed_fee_msat_arg_conv = *(LDKCOption_u64Z*)(skimmed_fee_msat_arg_ptr);
+ skimmed_fee_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(skimmed_fee_msat_arg));
+ LDKOnionPacket onion_routing_packet_arg_conv;
+ onion_routing_packet_arg_conv.inner = untag_ptr(onion_routing_packet_arg);
+ onion_routing_packet_arg_conv.is_owned = ptr_is_owned(onion_routing_packet_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(onion_routing_packet_arg_conv);
+ onion_routing_packet_arg_conv = OnionPacket_clone(&onion_routing_packet_arg_conv);
+ LDKPublicKey blinding_point_arg_ref;
+ CHECK(blinding_point_arg->arr_len == 33);
+ memcpy(blinding_point_arg_ref.compressed_form, blinding_point_arg->elems, 33); FREE(blinding_point_arg);
+ LDKUpdateAddHTLC ret_var = UpdateAddHTLC_new(channel_id_arg_ref, htlc_id_arg, amount_msat_arg, payment_hash_arg_ref, cltv_expiry_arg, skimmed_fee_msat_arg_conv, onion_routing_packet_arg_conv, blinding_point_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
static inline uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg) {
LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(arg);
int64_t ret_ref = 0;
return ret_ref;
}
+int64_t CS_LDK_UpdateAddHTLC_hash(int64_t o) {
+ LDKUpdateAddHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateAddHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateAddHTLC_eq(int64_t a, int64_t b) {
LDKUpdateAddHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_OnionMessage_hash(int64_t o) {
+ LDKOnionMessage o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OnionMessage_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_OnionMessage_eq(int64_t a, int64_t b) {
LDKOnionMessage a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFulfillHTLC_hash(int64_t o) {
+ LDKUpdateFulfillHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFulfillHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFulfillHTLC_eq(int64_t a, int64_t b) {
LDKUpdateFulfillHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFailHTLC_hash(int64_t o) {
+ LDKUpdateFailHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFailHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFailHTLC_eq(int64_t a, int64_t b) {
LDKUpdateFailHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFailMalformedHTLC_hash(int64_t o) {
+ LDKUpdateFailMalformedHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFailMalformedHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFailMalformedHTLC_eq(int64_t a, int64_t b) {
LDKUpdateFailMalformedHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_CommitmentSigned_hash(int64_t o) {
+ LDKCommitmentSigned o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = CommitmentSigned_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_CommitmentSigned_eq(int64_t a, int64_t b) {
LDKCommitmentSigned a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_RevokeAndACK_hash(int64_t o) {
+ LDKRevokeAndACK o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = RevokeAndACK_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_RevokeAndACK_eq(int64_t a, int64_t b) {
LDKRevokeAndACK a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFee_hash(int64_t o) {
+ LDKUpdateFee o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFee_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFee_eq(int64_t a, int64_t b) {
LDKUpdateFee a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelReestablish_hash(int64_t o) {
+ LDKChannelReestablish o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelReestablish_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelReestablish_eq(int64_t a, int64_t b) {
LDKChannelReestablish a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_AnnouncementSignatures_hash(int64_t o) {
+ LDKAnnouncementSignatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = AnnouncementSignatures_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_AnnouncementSignatures_eq(int64_t a, int64_t b) {
LDKAnnouncementSignatures a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_SocketAddress_hash(int64_t o) {
+ LDKSocketAddress* o_conv = (LDKSocketAddress*)untag_ptr(o);
+ int64_t ret_conv = SocketAddress_hash(o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_SocketAddress_eq(int64_t a, int64_t b) {
LDKSocketAddress* a_conv = (LDKSocketAddress*)untag_ptr(a);
LDKSocketAddress* b_conv = (LDKSocketAddress*)untag_ptr(b);
return ret_conv;
}
+int64_t CS_LDK_SocketAddressParseError_hash(int64_t o) {
+ LDKSocketAddressParseError* o_conv = (LDKSocketAddressParseError*)untag_ptr(o);
+ int64_t ret_conv = SocketAddressParseError_hash(o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_SocketAddressParseError_eq(int64_t a, int64_t b) {
LDKSocketAddressParseError* a_conv = (LDKSocketAddressParseError*)untag_ptr(a);
LDKSocketAddressParseError* b_conv = (LDKSocketAddressParseError*)untag_ptr(b);
return ret_ref;
}
+int64_t CS_LDK_UnsignedNodeAnnouncement_hash(int64_t o) {
+ LDKUnsignedNodeAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UnsignedNodeAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UnsignedNodeAnnouncement_eq(int64_t a, int64_t b) {
LDKUnsignedNodeAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_NodeAnnouncement_hash(int64_t o) {
+ LDKNodeAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = NodeAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_NodeAnnouncement_eq(int64_t a, int64_t b) {
LDKNodeAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UnsignedChannelAnnouncement_hash(int64_t o) {
+ LDKUnsignedChannelAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UnsignedChannelAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UnsignedChannelAnnouncement_eq(int64_t a, int64_t b) {
LDKUnsignedChannelAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelAnnouncement_hash(int64_t o) {
+ LDKChannelAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelAnnouncement_eq(int64_t a, int64_t b) {
LDKChannelAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UnsignedChannelUpdate_hash(int64_t o) {
+ LDKUnsignedChannelUpdate o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UnsignedChannelUpdate_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UnsignedChannelUpdate_eq(int64_t a, int64_t b) {
LDKUnsignedChannelUpdate a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelUpdate_hash(int64_t o) {
+ LDKChannelUpdate o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelUpdate_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelUpdate_eq(int64_t a, int64_t b) {
LDKChannelUpdate a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_QueryChannelRange_hash(int64_t o) {
+ LDKQueryChannelRange o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = QueryChannelRange_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_QueryChannelRange_eq(int64_t a, int64_t b) {
LDKQueryChannelRange a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ReplyChannelRange_hash(int64_t o) {
+ LDKReplyChannelRange o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ReplyChannelRange_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ReplyChannelRange_eq(int64_t a, int64_t b) {
LDKReplyChannelRange a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_QueryShortChannelIds_hash(int64_t o) {
+ LDKQueryShortChannelIds o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = QueryShortChannelIds_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_QueryShortChannelIds_eq(int64_t a, int64_t b) {
LDKQueryShortChannelIds a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ReplyShortChannelIdsEnd_hash(int64_t o) {
+ LDKReplyShortChannelIdsEnd o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ReplyShortChannelIdsEnd_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ReplyShortChannelIdsEnd_eq(int64_t a, int64_t b) {
LDKReplyShortChannelIdsEnd a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_GossipTimestampFilter_hash(int64_t o) {
+ LDKGossipTimestampFilter o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = GossipTimestampFilter_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_GossipTimestampFilter_eq(int64_t a, int64_t b) {
LDKGossipTimestampFilter a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ErrorAction_hash(int64_t o) {
+ LDKErrorAction* o_conv = (LDKErrorAction*)untag_ptr(o);
+ int64_t ret_conv = ErrorAction_hash(o_conv);
+ return ret_conv;
+}
+
void CS_LDK_LightningError_free(int64_t this_obj) {
LDKLightningError this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_ref;
}
+int64_t CS_LDK_CommitmentUpdate_hash(int64_t o) {
+ LDKCommitmentUpdate o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = CommitmentUpdate_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_CommitmentUpdate_eq(int64_t a, int64_t b) {
LDKCommitmentUpdate a_conv;
a_conv.inner = untag_ptr(a);
OnionMessageHandler_free(this_ptr_conv);
}
+void CS_LDK_FinalOnionHopData_free(int64_t this_obj) {
+ LDKFinalOnionHopData this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ FinalOnionHopData_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_FinalOnionHopData_get_payment_secret(int64_t this_ptr) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *FinalOnionHopData_get_payment_secret(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_FinalOnionHopData_set_payment_secret(int64_t this_ptr, int8_tArray val) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ FinalOnionHopData_set_payment_secret(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_FinalOnionHopData_get_total_msat(int64_t this_ptr) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = FinalOnionHopData_get_total_msat(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_FinalOnionHopData_set_total_msat(int64_t this_ptr, int64_t val) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ FinalOnionHopData_set_total_msat(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_FinalOnionHopData_new(int8_tArray payment_secret_arg, int64_t total_msat_arg) {
+ LDKThirtyTwoBytes payment_secret_arg_ref;
+ CHECK(payment_secret_arg->arr_len == 32);
+ memcpy(payment_secret_arg_ref.data, payment_secret_arg->elems, 32); FREE(payment_secret_arg);
+ LDKFinalOnionHopData ret_var = FinalOnionHopData_new(payment_secret_arg_ref, total_msat_arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t FinalOnionHopData_clone_ptr(LDKFinalOnionHopData *NONNULL_PTR arg) {
+ LDKFinalOnionHopData ret_var = FinalOnionHopData_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_FinalOnionHopData_clone_ptr(int64_t arg) {
+ LDKFinalOnionHopData arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = FinalOnionHopData_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_FinalOnionHopData_clone(int64_t orig) {
+ LDKFinalOnionHopData orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKFinalOnionHopData ret_var = FinalOnionHopData_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_OnionPacket_free(int64_t this_obj) {
+ LDKOnionPacket this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ OnionPacket_free(this_obj_conv);
+}
+
+int8_t CS_LDK_OnionPacket_get_version(int64_t this_ptr) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_t ret_conv = OnionPacket_get_version(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_OnionPacket_set_version(int64_t this_ptr, int8_t val) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ OnionPacket_set_version(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_OnionPacket_get_public_key(int64_t this_ptr) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCResult_PublicKeySecp256k1ErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeySecp256k1ErrorZ), "LDKCResult_PublicKeySecp256k1ErrorZ");
+ *ret_conv = OnionPacket_get_public_key(&this_ptr_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_OnionPacket_set_public_key(int64_t this_ptr, int64_t val) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCResult_PublicKeySecp256k1ErrorZ val_conv = *(LDKCResult_PublicKeySecp256k1ErrorZ*)(val_ptr);
+ val_conv = CResult_PublicKeySecp256k1ErrorZ_clone((LDKCResult_PublicKeySecp256k1ErrorZ*)untag_ptr(val));
+ OnionPacket_set_public_key(&this_ptr_conv, val_conv);
+}
+
+int8_tArray CS_LDK_OnionPacket_get_hmac(int64_t this_ptr) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *OnionPacket_get_hmac(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_OnionPacket_set_hmac(int64_t this_ptr, int8_tArray val) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ OnionPacket_set_hmac(&this_ptr_conv, val_ref);
+}
+
+static inline uint64_t OnionPacket_clone_ptr(LDKOnionPacket *NONNULL_PTR arg) {
+ LDKOnionPacket ret_var = OnionPacket_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_OnionPacket_clone_ptr(int64_t arg) {
+ LDKOnionPacket arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = OnionPacket_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_OnionPacket_clone(int64_t orig) {
+ LDKOnionPacket orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKOnionPacket ret_var = OnionPacket_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_OnionPacket_hash(int64_t o) {
+ LDKOnionPacket o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OnionPacket_hash(&o_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_OnionPacket_eq(int64_t a, int64_t b) {
+ LDKOnionPacket a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKOnionPacket b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = OnionPacket_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
int8_tArray CS_LDK_AcceptChannel_write(int64_t obj) {
LDKAcceptChannel obj_conv;
obj_conv.inner = untag_ptr(obj);
return tag_ptr(ret_conv, true);
}
+int8_tArray CS_LDK_Stfu_write(int64_t obj) {
+ LDKStfu obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = Stfu_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_Stfu_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = Stfu_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_Splice_write(int64_t obj) {
+ LDKSplice obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = Splice_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_Splice_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = Splice_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_SpliceAck_write(int64_t obj) {
+ LDKSpliceAck obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = SpliceAck_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_SpliceAck_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = SpliceAck_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_SpliceLocked_write(int64_t obj) {
+ LDKSpliceLocked obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = SpliceLocked_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_SpliceLocked_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = SpliceLocked_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_TxAddInput_write(int64_t obj) {
LDKTxAddInput obj_conv;
obj_conv.inner = untag_ptr(obj);
return tag_ptr(ret_conv, true);
}
+int8_tArray CS_LDK_OnionPacket_write(int64_t obj) {
+ LDKOnionPacket obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = OnionPacket_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_OnionPacket_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = OnionPacket_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_UpdateAddHTLC_write(int64_t obj) {
LDKUpdateAddHTLC obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_arr;
}
+int8_tArray CS_LDK_FinalOnionHopData_write(int64_t obj) {
+ LDKFinalOnionHopData obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = FinalOnionHopData_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_FinalOnionHopData_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = FinalOnionHopData_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_Ping_write(int64_t obj) {
LDKPing obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_ref;
}
+int64_t CS_LDK_IgnoringMessageHandler_as_EventsProvider(int64_t this_arg) {
+ LDKIgnoringMessageHandler this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider");
+ *ret_ret = IgnoringMessageHandler_as_EventsProvider(&this_arg_conv);
+ return tag_ptr(ret_ret, true);
+}
+
int64_t CS_LDK_IgnoringMessageHandler_as_MessageSendEventsProvider(int64_t this_arg) {
LDKIgnoringMessageHandler this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_arr;
}
-int8_tArray CS_LDK_derive_public_key(int8_tArray per_commitment_point, int8_tArray base_point) {
- LDKPublicKey per_commitment_point_ref;
- CHECK(per_commitment_point->arr_len == 33);
- memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
- LDKPublicKey base_point_ref;
- CHECK(base_point->arr_len == 33);
- memcpy(base_point_ref.compressed_form, base_point->elems, 33); FREE(base_point);
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, derive_public_key(per_commitment_point_ref, base_point_ref).compressed_form, 33);
- return ret_arr;
-}
-
int8_tArray CS_LDK_derive_private_revocation_key(int8_tArray per_commitment_secret, int8_tArray countersignatory_revocation_base_secret) {
uint8_t per_commitment_secret_arr[32];
CHECK(per_commitment_secret->arr_len == 32);
return ret_arr;
}
-int8_tArray CS_LDK_derive_public_revocation_key(int8_tArray per_commitment_point, int8_tArray countersignatory_revocation_base_point) {
- LDKPublicKey per_commitment_point_ref;
- CHECK(per_commitment_point->arr_len == 33);
- memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
- LDKPublicKey countersignatory_revocation_base_point_ref;
- CHECK(countersignatory_revocation_base_point->arr_len == 33);
- memcpy(countersignatory_revocation_base_point_ref.compressed_form, countersignatory_revocation_base_point->elems, 33); FREE(countersignatory_revocation_base_point);
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, derive_public_revocation_key(per_commitment_point_ref, countersignatory_revocation_base_point_ref).compressed_form, 33);
- return ret_arr;
-}
-
void CS_LDK_TxCreationKeys_free(int64_t this_obj) {
LDKTxCreationKeys this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
TxCreationKeys_set_per_commitment_point(&this_ptr_conv, val_ref);
}
-int8_tArray CS_LDK_TxCreationKeys_get_revocation_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_revocation_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_revocation_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKRevocationKey ret_var = TxCreationKeys_get_revocation_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_revocation_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_revocation_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_revocation_key(&this_ptr_conv, val_ref);
+ LDKRevocationKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = RevocationKey_clone(&val_conv);
+ TxCreationKeys_set_revocation_key(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_TxCreationKeys_get_broadcaster_htlc_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_broadcaster_htlc_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKHtlcKey ret_var = TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_broadcaster_htlc_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_broadcaster_htlc_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_ref);
+ LDKHtlcKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = HtlcKey_clone(&val_conv);
+ TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_TxCreationKeys_get_countersignatory_htlc_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_countersignatory_htlc_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKHtlcKey ret_var = TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_countersignatory_htlc_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_countersignatory_htlc_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_ref);
+ LDKHtlcKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = HtlcKey_clone(&val_conv);
+ TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_TxCreationKeys_get_broadcaster_delayed_payment_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_broadcaster_delayed_payment_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKDelayedPaymentKey ret_var = TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_broadcaster_delayed_payment_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_broadcaster_delayed_payment_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_ref);
+ LDKDelayedPaymentKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = DelayedPaymentKey_clone(&val_conv);
+ TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_conv);
}
-int64_t CS_LDK_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int8_tArray revocation_key_arg, int8_tArray broadcaster_htlc_key_arg, int8_tArray countersignatory_htlc_key_arg, int8_tArray broadcaster_delayed_payment_key_arg) {
+int64_t CS_LDK_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int64_t revocation_key_arg, int64_t broadcaster_htlc_key_arg, int64_t countersignatory_htlc_key_arg, int64_t broadcaster_delayed_payment_key_arg) {
LDKPublicKey per_commitment_point_arg_ref;
CHECK(per_commitment_point_arg->arr_len == 33);
memcpy(per_commitment_point_arg_ref.compressed_form, per_commitment_point_arg->elems, 33); FREE(per_commitment_point_arg);
- LDKPublicKey revocation_key_arg_ref;
- CHECK(revocation_key_arg->arr_len == 33);
- memcpy(revocation_key_arg_ref.compressed_form, revocation_key_arg->elems, 33); FREE(revocation_key_arg);
- LDKPublicKey broadcaster_htlc_key_arg_ref;
- CHECK(broadcaster_htlc_key_arg->arr_len == 33);
- memcpy(broadcaster_htlc_key_arg_ref.compressed_form, broadcaster_htlc_key_arg->elems, 33); FREE(broadcaster_htlc_key_arg);
- LDKPublicKey countersignatory_htlc_key_arg_ref;
- CHECK(countersignatory_htlc_key_arg->arr_len == 33);
- memcpy(countersignatory_htlc_key_arg_ref.compressed_form, countersignatory_htlc_key_arg->elems, 33); FREE(countersignatory_htlc_key_arg);
- LDKPublicKey broadcaster_delayed_payment_key_arg_ref;
- CHECK(broadcaster_delayed_payment_key_arg->arr_len == 33);
- memcpy(broadcaster_delayed_payment_key_arg_ref.compressed_form, broadcaster_delayed_payment_key_arg->elems, 33); FREE(broadcaster_delayed_payment_key_arg);
- LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_ref, broadcaster_htlc_key_arg_ref, countersignatory_htlc_key_arg_ref, broadcaster_delayed_payment_key_arg_ref);
+ LDKRevocationKey revocation_key_arg_conv;
+ revocation_key_arg_conv.inner = untag_ptr(revocation_key_arg);
+ revocation_key_arg_conv.is_owned = ptr_is_owned(revocation_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_key_arg_conv);
+ revocation_key_arg_conv = RevocationKey_clone(&revocation_key_arg_conv);
+ LDKHtlcKey broadcaster_htlc_key_arg_conv;
+ broadcaster_htlc_key_arg_conv.inner = untag_ptr(broadcaster_htlc_key_arg);
+ broadcaster_htlc_key_arg_conv.is_owned = ptr_is_owned(broadcaster_htlc_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_htlc_key_arg_conv);
+ broadcaster_htlc_key_arg_conv = HtlcKey_clone(&broadcaster_htlc_key_arg_conv);
+ LDKHtlcKey countersignatory_htlc_key_arg_conv;
+ countersignatory_htlc_key_arg_conv.inner = untag_ptr(countersignatory_htlc_key_arg);
+ countersignatory_htlc_key_arg_conv.is_owned = ptr_is_owned(countersignatory_htlc_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_htlc_key_arg_conv);
+ countersignatory_htlc_key_arg_conv = HtlcKey_clone(&countersignatory_htlc_key_arg_conv);
+ LDKDelayedPaymentKey broadcaster_delayed_payment_key_arg_conv;
+ broadcaster_delayed_payment_key_arg_conv.inner = untag_ptr(broadcaster_delayed_payment_key_arg);
+ broadcaster_delayed_payment_key_arg_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_key_arg_conv);
+ broadcaster_delayed_payment_key_arg_conv = DelayedPaymentKey_clone(&broadcaster_delayed_payment_key_arg_conv);
+ LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_conv, broadcaster_htlc_key_arg_conv, countersignatory_htlc_key_arg_conv, broadcaster_delayed_payment_key_arg_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
ChannelPublicKeys_set_funding_pubkey(&this_ptr_conv, val_ref);
}
-int8_tArray CS_LDK_ChannelPublicKeys_get_revocation_basepoint(int64_t this_ptr) {
+int64_t CS_LDK_ChannelPublicKeys_get_revocation_basepoint(int64_t this_ptr) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKRevocationBasepoint ret_var = ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_ChannelPublicKeys_set_revocation_basepoint(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_ChannelPublicKeys_set_revocation_basepoint(int64_t this_ptr, int64_t val) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_ref);
+ LDKRevocationBasepoint val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = RevocationBasepoint_clone(&val_conv);
+ ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_conv);
}
int8_tArray CS_LDK_ChannelPublicKeys_get_payment_point(int64_t this_ptr) {
ChannelPublicKeys_set_payment_point(&this_ptr_conv, val_ref);
}
-int8_tArray CS_LDK_ChannelPublicKeys_get_delayed_payment_basepoint(int64_t this_ptr) {
+int64_t CS_LDK_ChannelPublicKeys_get_delayed_payment_basepoint(int64_t this_ptr) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKDelayedPaymentBasepoint ret_var = ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_ChannelPublicKeys_set_delayed_payment_basepoint(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_ChannelPublicKeys_set_delayed_payment_basepoint(int64_t this_ptr, int64_t val) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_ref);
+ LDKDelayedPaymentBasepoint val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = DelayedPaymentBasepoint_clone(&val_conv);
+ ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_ChannelPublicKeys_get_htlc_basepoint(int64_t this_ptr) {
+int64_t CS_LDK_ChannelPublicKeys_get_htlc_basepoint(int64_t this_ptr) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKHtlcBasepoint ret_var = ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_ChannelPublicKeys_set_htlc_basepoint(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_ChannelPublicKeys_set_htlc_basepoint(int64_t this_ptr, int64_t val) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_ref);
+ LDKHtlcBasepoint val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = HtlcBasepoint_clone(&val_conv);
+ ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_conv);
}
-int64_t CS_LDK_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int8_tArray revocation_basepoint_arg, int8_tArray payment_point_arg, int8_tArray delayed_payment_basepoint_arg, int8_tArray htlc_basepoint_arg) {
+int64_t CS_LDK_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int64_t revocation_basepoint_arg, int8_tArray payment_point_arg, int64_t delayed_payment_basepoint_arg, int64_t htlc_basepoint_arg) {
LDKPublicKey funding_pubkey_arg_ref;
CHECK(funding_pubkey_arg->arr_len == 33);
memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); FREE(funding_pubkey_arg);
- LDKPublicKey revocation_basepoint_arg_ref;
- CHECK(revocation_basepoint_arg->arr_len == 33);
- memcpy(revocation_basepoint_arg_ref.compressed_form, revocation_basepoint_arg->elems, 33); FREE(revocation_basepoint_arg);
+ LDKRevocationBasepoint revocation_basepoint_arg_conv;
+ revocation_basepoint_arg_conv.inner = untag_ptr(revocation_basepoint_arg);
+ revocation_basepoint_arg_conv.is_owned = ptr_is_owned(revocation_basepoint_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_basepoint_arg_conv);
+ revocation_basepoint_arg_conv = RevocationBasepoint_clone(&revocation_basepoint_arg_conv);
LDKPublicKey payment_point_arg_ref;
CHECK(payment_point_arg->arr_len == 33);
memcpy(payment_point_arg_ref.compressed_form, payment_point_arg->elems, 33); FREE(payment_point_arg);
- LDKPublicKey delayed_payment_basepoint_arg_ref;
- CHECK(delayed_payment_basepoint_arg->arr_len == 33);
- memcpy(delayed_payment_basepoint_arg_ref.compressed_form, delayed_payment_basepoint_arg->elems, 33); FREE(delayed_payment_basepoint_arg);
- LDKPublicKey htlc_basepoint_arg_ref;
- CHECK(htlc_basepoint_arg->arr_len == 33);
- memcpy(htlc_basepoint_arg_ref.compressed_form, htlc_basepoint_arg->elems, 33); FREE(htlc_basepoint_arg);
- LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_ref, payment_point_arg_ref, delayed_payment_basepoint_arg_ref, htlc_basepoint_arg_ref);
+ LDKDelayedPaymentBasepoint delayed_payment_basepoint_arg_conv;
+ delayed_payment_basepoint_arg_conv.inner = untag_ptr(delayed_payment_basepoint_arg);
+ delayed_payment_basepoint_arg_conv.is_owned = ptr_is_owned(delayed_payment_basepoint_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(delayed_payment_basepoint_arg_conv);
+ delayed_payment_basepoint_arg_conv = DelayedPaymentBasepoint_clone(&delayed_payment_basepoint_arg_conv);
+ LDKHtlcBasepoint htlc_basepoint_arg_conv;
+ htlc_basepoint_arg_conv.inner = untag_ptr(htlc_basepoint_arg);
+ htlc_basepoint_arg_conv.is_owned = ptr_is_owned(htlc_basepoint_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_basepoint_arg_conv);
+ htlc_basepoint_arg_conv = HtlcBasepoint_clone(&htlc_basepoint_arg_conv);
+ LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_conv, payment_point_arg_ref, delayed_payment_basepoint_arg_conv, htlc_basepoint_arg_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int8_tArray broadcaster_delayed_payment_base, int8_tArray broadcaster_htlc_base, int8_tArray countersignatory_revocation_base, int8_tArray countersignatory_htlc_base) {
+int64_t CS_LDK_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int64_t broadcaster_delayed_payment_base, int64_t broadcaster_htlc_base, int64_t countersignatory_revocation_base, int64_t countersignatory_htlc_base) {
LDKPublicKey per_commitment_point_ref;
CHECK(per_commitment_point->arr_len == 33);
memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
- LDKPublicKey broadcaster_delayed_payment_base_ref;
- CHECK(broadcaster_delayed_payment_base->arr_len == 33);
- memcpy(broadcaster_delayed_payment_base_ref.compressed_form, broadcaster_delayed_payment_base->elems, 33); FREE(broadcaster_delayed_payment_base);
- LDKPublicKey broadcaster_htlc_base_ref;
- CHECK(broadcaster_htlc_base->arr_len == 33);
- memcpy(broadcaster_htlc_base_ref.compressed_form, broadcaster_htlc_base->elems, 33); FREE(broadcaster_htlc_base);
- LDKPublicKey countersignatory_revocation_base_ref;
- CHECK(countersignatory_revocation_base->arr_len == 33);
- memcpy(countersignatory_revocation_base_ref.compressed_form, countersignatory_revocation_base->elems, 33); FREE(countersignatory_revocation_base);
- LDKPublicKey countersignatory_htlc_base_ref;
- CHECK(countersignatory_htlc_base->arr_len == 33);
- memcpy(countersignatory_htlc_base_ref.compressed_form, countersignatory_htlc_base->elems, 33); FREE(countersignatory_htlc_base);
- LDKTxCreationKeys ret_var = TxCreationKeys_derive_new(per_commitment_point_ref, broadcaster_delayed_payment_base_ref, broadcaster_htlc_base_ref, countersignatory_revocation_base_ref, countersignatory_htlc_base_ref);
+ LDKDelayedPaymentBasepoint broadcaster_delayed_payment_base_conv;
+ broadcaster_delayed_payment_base_conv.inner = untag_ptr(broadcaster_delayed_payment_base);
+ broadcaster_delayed_payment_base_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_base_conv);
+ broadcaster_delayed_payment_base_conv.is_owned = false;
+ LDKHtlcBasepoint broadcaster_htlc_base_conv;
+ broadcaster_htlc_base_conv.inner = untag_ptr(broadcaster_htlc_base);
+ broadcaster_htlc_base_conv.is_owned = ptr_is_owned(broadcaster_htlc_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_htlc_base_conv);
+ broadcaster_htlc_base_conv.is_owned = false;
+ LDKRevocationBasepoint countersignatory_revocation_base_conv;
+ countersignatory_revocation_base_conv.inner = untag_ptr(countersignatory_revocation_base);
+ countersignatory_revocation_base_conv.is_owned = ptr_is_owned(countersignatory_revocation_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_revocation_base_conv);
+ countersignatory_revocation_base_conv.is_owned = false;
+ LDKHtlcBasepoint countersignatory_htlc_base_conv;
+ countersignatory_htlc_base_conv.inner = untag_ptr(countersignatory_htlc_base);
+ countersignatory_htlc_base_conv.is_owned = ptr_is_owned(countersignatory_htlc_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_htlc_base_conv);
+ countersignatory_htlc_base_conv.is_owned = false;
+ LDKTxCreationKeys ret_var = TxCreationKeys_derive_new(per_commitment_point_ref, &broadcaster_delayed_payment_base_conv, &broadcaster_htlc_base_conv, &countersignatory_revocation_base_conv, &countersignatory_htlc_base_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-int8_tArray CS_LDK_get_revokeable_redeemscript(int8_tArray revocation_key, int16_t contest_delay, int8_tArray broadcaster_delayed_payment_key) {
- LDKPublicKey revocation_key_ref;
- CHECK(revocation_key->arr_len == 33);
- memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); FREE(revocation_key);
- LDKPublicKey broadcaster_delayed_payment_key_ref;
- CHECK(broadcaster_delayed_payment_key->arr_len == 33);
- memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); FREE(broadcaster_delayed_payment_key);
- LDKCVec_u8Z ret_var = get_revokeable_redeemscript(revocation_key_ref, contest_delay, broadcaster_delayed_payment_key_ref);
+int8_tArray CS_LDK_get_revokeable_redeemscript(int64_t revocation_key, int16_t contest_delay, int64_t broadcaster_delayed_payment_key) {
+ LDKRevocationKey revocation_key_conv;
+ revocation_key_conv.inner = untag_ptr(revocation_key);
+ revocation_key_conv.is_owned = ptr_is_owned(revocation_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_key_conv);
+ revocation_key_conv.is_owned = false;
+ LDKDelayedPaymentKey broadcaster_delayed_payment_key_conv;
+ broadcaster_delayed_payment_key_conv.inner = untag_ptr(broadcaster_delayed_payment_key);
+ broadcaster_delayed_payment_key_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_key_conv);
+ broadcaster_delayed_payment_key_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = get_revokeable_redeemscript(&revocation_key_conv, contest_delay, &broadcaster_delayed_payment_key_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
CVec_u8Z_free(ret_var);
return ret_arr;
}
-int8_tArray CS_LDK_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, int64_t htlc, int64_t channel_type_features, int8_tArray broadcaster_delayed_payment_key, int8_tArray revocation_key) {
+int8_tArray CS_LDK_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, int64_t htlc, int64_t channel_type_features, int64_t broadcaster_delayed_payment_key, int64_t revocation_key) {
uint8_t commitment_txid_arr[32];
CHECK(commitment_txid->arr_len == 32);
memcpy(commitment_txid_arr, commitment_txid->elems, 32); FREE(commitment_txid);
channel_type_features_conv.is_owned = ptr_is_owned(channel_type_features);
CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_type_features_conv);
channel_type_features_conv.is_owned = false;
- LDKPublicKey broadcaster_delayed_payment_key_ref;
- CHECK(broadcaster_delayed_payment_key->arr_len == 33);
- memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); FREE(broadcaster_delayed_payment_key);
- LDKPublicKey revocation_key_ref;
- CHECK(revocation_key->arr_len == 33);
- memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); FREE(revocation_key);
- LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, &channel_type_features_conv, broadcaster_delayed_payment_key_ref, revocation_key_ref);
+ LDKDelayedPaymentKey broadcaster_delayed_payment_key_conv;
+ broadcaster_delayed_payment_key_conv.inner = untag_ptr(broadcaster_delayed_payment_key);
+ broadcaster_delayed_payment_key_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_key_conv);
+ broadcaster_delayed_payment_key_conv.is_owned = false;
+ LDKRevocationKey revocation_key_conv;
+ revocation_key_conv.inner = untag_ptr(revocation_key);
+ revocation_key_conv.is_owned = ptr_is_owned(revocation_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_key_conv);
+ revocation_key_conv.is_owned = false;
+ LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, &channel_type_features_conv, &broadcaster_delayed_payment_key_conv, &revocation_key_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
Transaction_free(ret_var);
return ret_ref;
}
+int64_t CS_LDK_InitFeatures_hash(int64_t o) {
+ LDKInitFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = InitFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_NodeFeatures_hash(int64_t o) {
+ LDKNodeFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = NodeFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_ChannelFeatures_hash(int64_t o) {
+ LDKChannelFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Bolt11InvoiceFeatures_hash(int64_t o) {
+ LDKBolt11InvoiceFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Bolt11InvoiceFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_OfferFeatures_hash(int64_t o) {
+ LDKOfferFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OfferFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_InvoiceRequestFeatures_hash(int64_t o) {
+ LDKInvoiceRequestFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = InvoiceRequestFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Bolt12InvoiceFeatures_hash(int64_t o) {
+ LDKBolt12InvoiceFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Bolt12InvoiceFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedHopFeatures_hash(int64_t o) {
+ LDKBlindedHopFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = BlindedHopFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_ChannelTypeFeatures_hash(int64_t o) {
+ LDKChannelTypeFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelTypeFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
void CS_LDK_InitFeatures_free(int64_t this_obj) {
LDKInitFeatures this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_conv;
}
+void CS_LDK_InitFeatures_set_route_blinding_optional(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ InitFeatures_set_route_blinding_optional(&this_arg_conv);
+}
+
+void CS_LDK_InitFeatures_set_route_blinding_required(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ InitFeatures_set_route_blinding_required(&this_arg_conv);
+}
+
+jboolean CS_LDK_InitFeatures_supports_route_blinding(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = InitFeatures_supports_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
+void CS_LDK_NodeFeatures_set_route_blinding_optional(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ NodeFeatures_set_route_blinding_optional(&this_arg_conv);
+}
+
+void CS_LDK_NodeFeatures_set_route_blinding_required(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ NodeFeatures_set_route_blinding_required(&this_arg_conv);
+}
+
+jboolean CS_LDK_NodeFeatures_supports_route_blinding(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = NodeFeatures_supports_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_InitFeatures_requires_route_blinding(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = InitFeatures_requires_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_NodeFeatures_requires_route_blinding(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = NodeFeatures_requires_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
void CS_LDK_InitFeatures_set_shutdown_any_segwit_optional(int64_t this_arg) {
LDKInitFeatures this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = InvalidShutdownScript_get_script(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = InvalidShutdownScript_get_script(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_ref;
}
-int64_t CS_LDK_ShutdownScript_new_witness_program(int8_t version, int8_tArray program) {
-
- LDKu8slice program_ref;
- program_ref.datalen = program->arr_len;
- program_ref.data = program->elems;
+int64_t CS_LDK_ShutdownScript_new_witness_program(int64_t witness_program) {
+ void* witness_program_ptr = untag_ptr(witness_program);
+ CHECK_ACCESS(witness_program_ptr);
+ LDKWitnessProgram witness_program_conv = *(LDKWitnessProgram*)(witness_program_ptr);
+ witness_program_conv = WitnessProgram_clone((LDKWitnessProgram*)untag_ptr(witness_program));
LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ");
- *ret_conv = ShutdownScript_new_witness_program((LDKWitnessVersion){ ._0 = version }, program_ref);
- FREE(program);
+ *ret_conv = ShutdownScript_new_witness_program(witness_program_conv);
return tag_ptr(ret_conv, true);
}
return ret_conv;
}
+jboolean CS_LDK_Offer_is_expired_no_std(int64_t this_arg, int64_t duration_since_epoch) {
+ LDKOffer this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = Offer_is_expired_no_std(&this_arg_conv, duration_since_epoch);
+ return ret_conv;
+}
+
jboolean CS_LDK_Offer_is_valid_quantity(int64_t this_arg, int64_t quantity) {
LDKOffer this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
TaggedHash_free(this_obj_conv);
}
+static inline uint64_t TaggedHash_clone_ptr(LDKTaggedHash *NONNULL_PTR arg) {
+ LDKTaggedHash ret_var = TaggedHash_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_TaggedHash_clone_ptr(int64_t arg) {
+ LDKTaggedHash arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = TaggedHash_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_TaggedHash_clone(int64_t orig) {
+ LDKTaggedHash orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKTaggedHash ret_var = TaggedHash_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_TaggedHash_as_digest(int64_t this_arg) {
+ LDKTaggedHash this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *TaggedHash_as_digest(&this_arg_conv), 32);
+ return ret_arr;
+}
+
+jstring CS_LDK_TaggedHash_tag(int64_t this_arg) {
+ LDKTaggedHash this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ LDKStr ret_str = TaggedHash_tag(&this_arg_conv);
+ jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
+ Str_free(ret_str);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_TaggedHash_merkle_root(int64_t this_arg) {
+ LDKTaggedHash this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, TaggedHash_merkle_root(&this_arg_conv).data, 32);
+ return ret_arr;
+}
+
void CS_LDK_Bolt12ParseError_free(int64_t this_obj) {
LDKBolt12ParseError this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_conv;
}
+jboolean CS_LDK_Refund_is_expired_no_std(int64_t this_arg, int64_t duration_since_epoch) {
+ LDKRefund this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = Refund_is_expired_no_std(&this_arg_conv, duration_since_epoch);
+ return ret_conv;
+}
+
int64_t CS_LDK_Refund_issuer(int64_t this_arg) {
LDKRefund this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_arr;
}
+int8_tArray CS_LDK_NodeId_as_array(int64_t this_arg) {
+ LDKNodeId this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, *NodeId_as_array(&this_arg_conv), 33);
+ return ret_arr;
+}
+
int64_t CS_LDK_NodeId_as_pubkey(int64_t this_arg) {
LDKNodeId this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_ref;
}
-int64_t CS_LDK_DirectedChannelInfo_htlc_maximum_msat(int64_t this_arg) {
- LDKDirectedChannelInfo this_arg_conv;
- this_arg_conv.inner = untag_ptr(this_arg);
- this_arg_conv.is_owned = ptr_is_owned(this_arg);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
- this_arg_conv.is_owned = false;
- int64_t ret_conv = DirectedChannelInfo_htlc_maximum_msat(&this_arg_conv);
- return ret_conv;
-}
-
int64_t CS_LDK_DirectedChannelInfo_effective_capacity(int64_t this_arg) {
LDKDirectedChannelInfo this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_ref;
}
+int64_t CS_LDK_NodeAlias_hash(int64_t o) {
+ LDKNodeAlias o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = NodeAlias_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_NodeAlias_eq(int64_t a, int64_t b) {
LDKNodeAlias a_conv;
a_conv.inner = untag_ptr(a);
DefaultRouter_free(this_obj_conv);
}
-int64_t CS_LDK_DefaultRouter_new(int64_t network_graph, int64_t logger, int8_tArray random_seed_bytes, int64_t scorer, int64_t score_params) {
+int64_t CS_LDK_DefaultRouter_new(int64_t network_graph, int64_t logger, int64_t entropy_source, int64_t scorer, int64_t score_params) {
LDKNetworkGraph network_graph_conv;
network_graph_conv.inner = untag_ptr(network_graph);
network_graph_conv.is_owned = ptr_is_owned(network_graph);
// If this_arg is a JCalls struct, then we need to increment the refcnt in it.
LDKLogger_JCalls_cloned(&logger_conv);
}
- LDKThirtyTwoBytes random_seed_bytes_ref;
- CHECK(random_seed_bytes->arr_len == 32);
- memcpy(random_seed_bytes_ref.data, random_seed_bytes->elems, 32); FREE(random_seed_bytes);
+ void* entropy_source_ptr = untag_ptr(entropy_source);
+ CHECK_ACCESS(entropy_source_ptr);
+ LDKEntropySource entropy_source_conv = *(LDKEntropySource*)(entropy_source_ptr);
+ if (entropy_source_conv.free == LDKEntropySource_JCalls_free) {
+ // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
+ LDKEntropySource_JCalls_cloned(&entropy_source_conv);
+ }
void* scorer_ptr = untag_ptr(scorer);
CHECK_ACCESS(scorer_ptr);
LDKLockableScore scorer_conv = *(LDKLockableScore*)(scorer_ptr);
score_params_conv.is_owned = ptr_is_owned(score_params);
CHECK_INNER_FIELD_ACCESS_OR_NULL(score_params_conv);
score_params_conv = ProbabilisticScoringFeeParameters_clone(&score_params_conv);
- LDKDefaultRouter ret_var = DefaultRouter_new(&network_graph_conv, logger_conv, random_seed_bytes_ref, scorer_conv, score_params_conv);
+ LDKDefaultRouter ret_var = DefaultRouter_new(&network_graph_conv, logger_conv, entropy_source_conv, scorer_conv, score_params_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return tag_ptr(ret_ret, true);
}
+int64_t CS_LDK_DefaultRouter_as_MessageRouter(int64_t this_arg) {
+ LDKDefaultRouter this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ LDKMessageRouter* ret_ret = MALLOC(sizeof(LDKMessageRouter), "LDKMessageRouter");
+ *ret_ret = DefaultRouter_as_MessageRouter(&this_arg_conv);
+ return tag_ptr(ret_ret, true);
+}
+
void CS_LDK_Router_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
PaymentParameters_set_previously_failed_channels(&this_ptr_conv, val_constr);
}
-int64_t CS_LDK_PaymentParameters_new(int64_t payee_arg, int64_t expiry_time_arg, int32_t max_total_cltv_expiry_delta_arg, int8_t max_path_count_arg, int8_t max_channel_saturation_power_of_half_arg, int64_tArray previously_failed_channels_arg) {
+int64_tArray CS_LDK_PaymentParameters_get_previously_failed_blinded_path_idxs(int64_t this_ptr) {
+ LDKPaymentParameters this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u64Z ret_var = PaymentParameters_get_previously_failed_blinded_path_idxs(&this_ptr_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t g = 0; g < ret_var.datalen; g++) {
+ int64_t ret_conv_6_conv = ret_var.data[g];
+ ret_arr_ptr[g] = ret_conv_6_conv;
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+void CS_LDK_PaymentParameters_set_previously_failed_blinded_path_idxs(int64_t this_ptr, int64_tArray val) {
+ LDKPaymentParameters this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u64Z val_constr;
+ val_constr.datalen = val->arr_len;
+ if (val_constr.datalen > 0)
+ val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements");
+ else
+ val_constr.data = NULL;
+ int64_t* val_vals = val->elems;
+ for (size_t g = 0; g < val_constr.datalen; g++) {
+ int64_t val_conv_6 = val_vals[g];
+ val_constr.data[g] = val_conv_6;
+ }
+ FREE(val);
+ PaymentParameters_set_previously_failed_blinded_path_idxs(&this_ptr_conv, val_constr);
+}
+
+int64_t CS_LDK_PaymentParameters_new(int64_t payee_arg, int64_t expiry_time_arg, int32_t max_total_cltv_expiry_delta_arg, int8_t max_path_count_arg, int8_t max_channel_saturation_power_of_half_arg, int64_tArray previously_failed_channels_arg, int64_tArray previously_failed_blinded_path_idxs_arg) {
void* payee_arg_ptr = untag_ptr(payee_arg);
CHECK_ACCESS(payee_arg_ptr);
LDKPayee payee_arg_conv = *(LDKPayee*)(payee_arg_ptr);
previously_failed_channels_arg_constr.data[g] = previously_failed_channels_arg_conv_6;
}
FREE(previously_failed_channels_arg);
- LDKPaymentParameters ret_var = PaymentParameters_new(payee_arg_conv, expiry_time_arg_conv, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, previously_failed_channels_arg_constr);
+ LDKCVec_u64Z previously_failed_blinded_path_idxs_arg_constr;
+ previously_failed_blinded_path_idxs_arg_constr.datalen = previously_failed_blinded_path_idxs_arg->arr_len;
+ if (previously_failed_blinded_path_idxs_arg_constr.datalen > 0)
+ previously_failed_blinded_path_idxs_arg_constr.data = MALLOC(previously_failed_blinded_path_idxs_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements");
+ else
+ previously_failed_blinded_path_idxs_arg_constr.data = NULL;
+ int64_t* previously_failed_blinded_path_idxs_arg_vals = previously_failed_blinded_path_idxs_arg->elems;
+ for (size_t g = 0; g < previously_failed_blinded_path_idxs_arg_constr.datalen; g++) {
+ int64_t previously_failed_blinded_path_idxs_arg_conv_6 = previously_failed_blinded_path_idxs_arg_vals[g];
+ previously_failed_blinded_path_idxs_arg_constr.data[g] = previously_failed_blinded_path_idxs_arg_conv_6;
+ }
+ FREE(previously_failed_blinded_path_idxs_arg);
+ LDKPaymentParameters ret_var = PaymentParameters_new(payee_arg_conv, expiry_time_arg_conv, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, previously_failed_channels_arg_constr, previously_failed_blinded_path_idxs_arg_constr);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return tag_ptr(ret_conv, true);
}
+void CS_LDK_FirstHopCandidate_free(int64_t this_obj) {
+ LDKFirstHopCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ FirstHopCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t FirstHopCandidate_clone_ptr(LDKFirstHopCandidate *NONNULL_PTR arg) {
+ LDKFirstHopCandidate ret_var = FirstHopCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_FirstHopCandidate_clone_ptr(int64_t arg) {
+ LDKFirstHopCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = FirstHopCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_FirstHopCandidate_clone(int64_t orig) {
+ LDKFirstHopCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKFirstHopCandidate ret_var = FirstHopCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_PublicHopCandidate_free(int64_t this_obj) {
+ LDKPublicHopCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ PublicHopCandidate_free(this_obj_conv);
+}
+
+int64_t CS_LDK_PublicHopCandidate_get_short_channel_id(int64_t this_ptr) {
+ LDKPublicHopCandidate this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = PublicHopCandidate_get_short_channel_id(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PublicHopCandidate_set_short_channel_id(int64_t this_ptr, int64_t val) {
+ LDKPublicHopCandidate this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ PublicHopCandidate_set_short_channel_id(&this_ptr_conv, val);
+}
+
+static inline uint64_t PublicHopCandidate_clone_ptr(LDKPublicHopCandidate *NONNULL_PTR arg) {
+ LDKPublicHopCandidate ret_var = PublicHopCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_PublicHopCandidate_clone_ptr(int64_t arg) {
+ LDKPublicHopCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = PublicHopCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PublicHopCandidate_clone(int64_t orig) {
+ LDKPublicHopCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKPublicHopCandidate ret_var = PublicHopCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_PrivateHopCandidate_free(int64_t this_obj) {
+ LDKPrivateHopCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ PrivateHopCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t PrivateHopCandidate_clone_ptr(LDKPrivateHopCandidate *NONNULL_PTR arg) {
+ LDKPrivateHopCandidate ret_var = PrivateHopCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_PrivateHopCandidate_clone_ptr(int64_t arg) {
+ LDKPrivateHopCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = PrivateHopCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PrivateHopCandidate_clone(int64_t orig) {
+ LDKPrivateHopCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKPrivateHopCandidate ret_var = PrivateHopCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_BlindedPathCandidate_free(int64_t this_obj) {
+ LDKBlindedPathCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ BlindedPathCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t BlindedPathCandidate_clone_ptr(LDKBlindedPathCandidate *NONNULL_PTR arg) {
+ LDKBlindedPathCandidate ret_var = BlindedPathCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_BlindedPathCandidate_clone_ptr(int64_t arg) {
+ LDKBlindedPathCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = BlindedPathCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedPathCandidate_clone(int64_t orig) {
+ LDKBlindedPathCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKBlindedPathCandidate ret_var = BlindedPathCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_OneHopBlindedPathCandidate_free(int64_t this_obj) {
+ LDKOneHopBlindedPathCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ OneHopBlindedPathCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t OneHopBlindedPathCandidate_clone_ptr(LDKOneHopBlindedPathCandidate *NONNULL_PTR arg) {
+ LDKOneHopBlindedPathCandidate ret_var = OneHopBlindedPathCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_OneHopBlindedPathCandidate_clone_ptr(int64_t arg) {
+ LDKOneHopBlindedPathCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = OneHopBlindedPathCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_OneHopBlindedPathCandidate_clone(int64_t orig) {
+ LDKOneHopBlindedPathCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKOneHopBlindedPathCandidate ret_var = OneHopBlindedPathCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_CandidateRouteHop_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKCandidateRouteHop this_ptr_conv = *(LDKCandidateRouteHop*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ CandidateRouteHop_free(this_ptr_conv);
+}
+
+static inline uint64_t CandidateRouteHop_clone_ptr(LDKCandidateRouteHop *NONNULL_PTR arg) {
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_CandidateRouteHop_clone_ptr(int64_t arg) {
+ LDKCandidateRouteHop* arg_conv = (LDKCandidateRouteHop*)untag_ptr(arg);
+ int64_t ret_conv = CandidateRouteHop_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CandidateRouteHop_clone(int64_t orig) {
+ LDKCandidateRouteHop* orig_conv = (LDKCandidateRouteHop*)untag_ptr(orig);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_first_hop(int64_t a) {
+ LDKFirstHopCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = FirstHopCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_first_hop(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_public_hop(int64_t a) {
+ LDKPublicHopCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = PublicHopCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_public_hop(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_private_hop(int64_t a) {
+ LDKPrivateHopCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = PrivateHopCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_private_hop(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_blinded(int64_t a) {
+ LDKBlindedPathCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = BlindedPathCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_blinded(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_one_hop_blinded(int64_t a) {
+ LDKOneHopBlindedPathCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = OneHopBlindedPathCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_one_hop_blinded(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_globally_unique_short_channel_id(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z");
+ *ret_copy = CandidateRouteHop_globally_unique_short_channel_id(this_arg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int32_t CS_LDK_CandidateRouteHop_cltv_expiry_delta(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ int32_t ret_conv = CandidateRouteHop_cltv_expiry_delta(this_arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CandidateRouteHop_htlc_minimum_msat(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ int64_t ret_conv = CandidateRouteHop_htlc_minimum_msat(this_arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CandidateRouteHop_fees(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKRoutingFees ret_var = CandidateRouteHop_fees(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_source(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKNodeId ret_var = CandidateRouteHop_source(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_target(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKNodeId ret_var = CandidateRouteHop_target(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
int64_t CS_LDK_find_route(int8_tArray our_node_pubkey, int64_t route_params, int64_t network_graph, int64_tArray first_hops, int64_t logger, int64_t scorer, int64_t score_params, int8_tArray random_seed_bytes) {
LDKPublicKey our_node_pubkey_ref;
CHECK(our_node_pubkey->arr_len == 33);
DelayedPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_DelayedPaymentOutputDescriptor_get_revocation_pubkey(int64_t this_ptr) {
+int64_t CS_LDK_DelayedPaymentOutputDescriptor_get_revocation_pubkey(int64_t this_ptr) {
LDKDelayedPaymentOutputDescriptor this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKRevocationKey ret_var = DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_DelayedPaymentOutputDescriptor_set_revocation_pubkey(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_DelayedPaymentOutputDescriptor_set_revocation_pubkey(int64_t this_ptr, int64_t val) {
LDKDelayedPaymentOutputDescriptor this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_ref);
+ LDKRevocationKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = RevocationKey_clone(&val_conv);
+ DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_conv);
}
int8_tArray CS_LDK_DelayedPaymentOutputDescriptor_get_channel_keys_id(int64_t this_ptr) {
DelayedPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val);
}
-int64_t CS_LDK_DelayedPaymentOutputDescriptor_new(int64_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, int64_t output_arg, int8_tArray revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) {
+int64_t CS_LDK_DelayedPaymentOutputDescriptor_new(int64_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, int64_t output_arg, int64_t revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) {
LDKOutPoint outpoint_arg_conv;
outpoint_arg_conv.inner = untag_ptr(outpoint_arg);
outpoint_arg_conv.is_owned = ptr_is_owned(outpoint_arg);
CHECK_ACCESS(output_arg_ptr);
LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr);
output_arg_conv = TxOut_clone((LDKTxOut*)untag_ptr(output_arg));
- LDKPublicKey revocation_pubkey_arg_ref;
- CHECK(revocation_pubkey_arg->arr_len == 33);
- memcpy(revocation_pubkey_arg_ref.compressed_form, revocation_pubkey_arg->elems, 33); FREE(revocation_pubkey_arg);
+ LDKRevocationKey revocation_pubkey_arg_conv;
+ revocation_pubkey_arg_conv.inner = untag_ptr(revocation_pubkey_arg);
+ revocation_pubkey_arg_conv.is_owned = ptr_is_owned(revocation_pubkey_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_pubkey_arg_conv);
+ revocation_pubkey_arg_conv = RevocationKey_clone(&revocation_pubkey_arg_conv);
LDKThirtyTwoBytes channel_keys_id_arg_ref;
CHECK(channel_keys_id_arg->arr_len == 32);
memcpy(channel_keys_id_arg_ref.data, channel_keys_id_arg->elems, 32); FREE(channel_keys_id_arg);
- LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_ref, channel_keys_id_arg_ref, channel_value_satoshis_arg);
+ LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_conv, channel_keys_id_arg_ref, channel_value_satoshis_arg);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-int64_t CS_LDK_SpendableOutputDescriptor_static_output(int64_t outpoint, int64_t output) {
+int64_t CS_LDK_SpendableOutputDescriptor_static_output(int64_t outpoint, int64_t output, int8_tArray channel_keys_id) {
LDKOutPoint outpoint_conv;
outpoint_conv.inner = untag_ptr(outpoint);
outpoint_conv.is_owned = ptr_is_owned(outpoint);
CHECK_ACCESS(output_ptr);
LDKTxOut output_conv = *(LDKTxOut*)(output_ptr);
output_conv = TxOut_clone((LDKTxOut*)untag_ptr(output));
+ LDKThirtyTwoBytes channel_keys_id_ref;
+ CHECK(channel_keys_id->arr_len == 32);
+ memcpy(channel_keys_id_ref.data, channel_keys_id->elems, 32); FREE(channel_keys_id);
LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor");
- *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv);
+ *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv, channel_keys_id_ref);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
CHECK_ACCESS(locktime_ptr);
LDKCOption_u32Z locktime_conv = *(LDKCOption_u32Z*)(locktime_ptr);
locktime_conv = COption_u32Z_clone((LDKCOption_u32Z*)untag_ptr(locktime));
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
*ret_conv = SpendableOutputDescriptor_create_spendable_outputs_psbt(descriptors_constr, outputs_constr, change_destination_script_ref, feerate_sat_per_1000_weight, locktime_conv);
return tag_ptr(ret_conv, true);
}
ChannelSigner_free(this_ptr_conv);
}
-void CS_LDK_EcdsaChannelSigner_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKEcdsaChannelSigner this_ptr_conv = *(LDKEcdsaChannelSigner*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- EcdsaChannelSigner_free(this_ptr_conv);
-}
-
-static inline uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg) {
- LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
- *ret_ret = WriteableEcdsaChannelSigner_clone(arg);
- return tag_ptr(ret_ret, true);
-}
-int64_t CS_LDK_WriteableEcdsaChannelSigner_clone_ptr(int64_t arg) {
- void* arg_ptr = untag_ptr(arg);
- if (ptr_is_owned(arg)) { CHECK_ACCESS(arg_ptr); }
- LDKWriteableEcdsaChannelSigner* arg_conv = (LDKWriteableEcdsaChannelSigner*)arg_ptr;
- int64_t ret_conv = WriteableEcdsaChannelSigner_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_WriteableEcdsaChannelSigner_clone(int64_t orig) {
- void* orig_ptr = untag_ptr(orig);
- if (ptr_is_owned(orig)) { CHECK_ACCESS(orig_ptr); }
- LDKWriteableEcdsaChannelSigner* orig_conv = (LDKWriteableEcdsaChannelSigner*)orig_ptr;
- LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
- *ret_ret = WriteableEcdsaChannelSigner_clone(orig_conv);
- return tag_ptr(ret_ret, true);
-}
-
-void CS_LDK_WriteableEcdsaChannelSigner_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKWriteableEcdsaChannelSigner this_ptr_conv = *(LDKWriteableEcdsaChannelSigner*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- WriteableEcdsaChannelSigner_free(this_ptr_conv);
-}
-
int32_t CS_LDK_Recipient_clone(int64_t orig) {
LDKRecipient* orig_conv = (LDKRecipient*)untag_ptr(orig);
int32_t ret_conv = LDKRecipient_to_cs(Recipient_clone(orig_conv));
descriptor_conv.is_owned = ptr_is_owned(descriptor);
CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv);
descriptor_conv.is_owned = false;
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
*ret_conv = InMemorySigner_sign_counterparty_payment_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv);
return tag_ptr(ret_conv, true);
}
descriptor_conv.is_owned = ptr_is_owned(descriptor);
CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv);
descriptor_conv.is_owned = false;
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
*ret_conv = InMemorySigner_sign_dynamic_p2wsh_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv);
return tag_ptr(ret_conv, true);
}
return ret_arr;
}
+void CS_LDK_EcdsaChannelSigner_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKEcdsaChannelSigner this_ptr_conv = *(LDKEcdsaChannelSigner*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ EcdsaChannelSigner_free(this_ptr_conv);
+}
+
+static inline uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg) {
+ LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
+ *ret_ret = WriteableEcdsaChannelSigner_clone(arg);
+ return tag_ptr(ret_ret, true);
+}
+int64_t CS_LDK_WriteableEcdsaChannelSigner_clone_ptr(int64_t arg) {
+ void* arg_ptr = untag_ptr(arg);
+ if (ptr_is_owned(arg)) { CHECK_ACCESS(arg_ptr); }
+ LDKWriteableEcdsaChannelSigner* arg_conv = (LDKWriteableEcdsaChannelSigner*)arg_ptr;
+ int64_t ret_conv = WriteableEcdsaChannelSigner_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_WriteableEcdsaChannelSigner_clone(int64_t orig) {
+ void* orig_ptr = untag_ptr(orig);
+ if (ptr_is_owned(orig)) { CHECK_ACCESS(orig_ptr); }
+ LDKWriteableEcdsaChannelSigner* orig_conv = (LDKWriteableEcdsaChannelSigner*)orig_ptr;
+ LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
+ *ret_ret = WriteableEcdsaChannelSigner_clone(orig_conv);
+ return tag_ptr(ret_ret, true);
+}
+
+void CS_LDK_WriteableEcdsaChannelSigner_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKWriteableEcdsaChannelSigner this_ptr_conv = *(LDKWriteableEcdsaChannelSigner*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ WriteableEcdsaChannelSigner_free(this_ptr_conv);
+}
+
void CS_LDK_OnionMessenger_free(int64_t this_obj) {
LDKOnionMessenger this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
DefaultMessageRouter_free(this_obj_conv);
}
-int64_t CS_LDK_DefaultMessageRouter_new() {
- LDKDefaultMessageRouter ret_var = DefaultMessageRouter_new();
+int64_t CS_LDK_DefaultMessageRouter_new(int64_t network_graph, int64_t entropy_source) {
+ LDKNetworkGraph network_graph_conv;
+ network_graph_conv.inner = untag_ptr(network_graph);
+ network_graph_conv.is_owned = ptr_is_owned(network_graph);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv);
+ network_graph_conv.is_owned = false;
+ void* entropy_source_ptr = untag_ptr(entropy_source);
+ CHECK_ACCESS(entropy_source_ptr);
+ LDKEntropySource entropy_source_conv = *(LDKEntropySource*)(entropy_source_ptr);
+ if (entropy_source_conv.free == LDKEntropySource_JCalls_free) {
+ // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
+ LDKEntropySource_JCalls_cloned(&entropy_source_conv);
+ }
+ LDKDefaultMessageRouter ret_var = DefaultMessageRouter_new(&network_graph_conv, entropy_source_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
OnionMessagePath_set_destination(&this_ptr_conv, val_conv);
}
-int64_t CS_LDK_OnionMessagePath_new(ptrArray intermediate_nodes_arg, int64_t destination_arg) {
+int64_t CS_LDK_OnionMessagePath_get_first_node_addresses(int64_t this_ptr) {
+ LDKOnionMessagePath this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_CVec_SocketAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_SocketAddressZZ), "LDKCOption_CVec_SocketAddressZZ");
+ *ret_copy = OnionMessagePath_get_first_node_addresses(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_OnionMessagePath_set_first_node_addresses(int64_t this_ptr, int64_t val) {
+ LDKOnionMessagePath this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_CVec_SocketAddressZZ val_conv = *(LDKCOption_CVec_SocketAddressZZ*)(val_ptr);
+ val_conv = COption_CVec_SocketAddressZZ_clone((LDKCOption_CVec_SocketAddressZZ*)untag_ptr(val));
+ OnionMessagePath_set_first_node_addresses(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_OnionMessagePath_new(ptrArray intermediate_nodes_arg, int64_t destination_arg, int64_t first_node_addresses_arg) {
LDKCVec_PublicKeyZ intermediate_nodes_arg_constr;
intermediate_nodes_arg_constr.datalen = intermediate_nodes_arg->arr_len;
if (intermediate_nodes_arg_constr.datalen > 0)
CHECK_ACCESS(destination_arg_ptr);
LDKDestination destination_arg_conv = *(LDKDestination*)(destination_arg_ptr);
destination_arg_conv = Destination_clone((LDKDestination*)untag_ptr(destination_arg));
- LDKOnionMessagePath ret_var = OnionMessagePath_new(intermediate_nodes_arg_constr, destination_arg_conv);
+ void* first_node_addresses_arg_ptr = untag_ptr(first_node_addresses_arg);
+ CHECK_ACCESS(first_node_addresses_arg_ptr);
+ LDKCOption_CVec_SocketAddressZZ first_node_addresses_arg_conv = *(LDKCOption_CVec_SocketAddressZZ*)(first_node_addresses_arg_ptr);
+ LDKOnionMessagePath ret_var = OnionMessagePath_new(intermediate_nodes_arg_constr, destination_arg_conv, first_node_addresses_arg_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
+int8_tArray CS_LDK_OnionMessagePath_first_node(int64_t this_arg) {
+ LDKOnionMessagePath this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, OnionMessagePath_first_node(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
void CS_LDK_Destination_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
return ret_ref;
}
+void CS_LDK_SendSuccess_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKSendSuccess this_ptr_conv = *(LDKSendSuccess*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ SendSuccess_free(this_ptr_conv);
+}
+
+static inline uint64_t SendSuccess_clone_ptr(LDKSendSuccess *NONNULL_PTR arg) {
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_SendSuccess_clone_ptr(int64_t arg) {
+ LDKSendSuccess* arg_conv = (LDKSendSuccess*)untag_ptr(arg);
+ int64_t ret_conv = SendSuccess_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_SendSuccess_clone(int64_t orig) {
+ LDKSendSuccess* orig_conv = (LDKSendSuccess*)untag_ptr(orig);
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_SendSuccess_buffered() {
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_buffered();
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_SendSuccess_buffered_awaiting_connection(int8_tArray a) {
+ LDKPublicKey a_ref;
+ CHECK(a->arr_len == 33);
+ memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_buffered_awaiting_connection(a_ref);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+jboolean CS_LDK_SendSuccess_eq(int64_t a, int64_t b) {
+ LDKSendSuccess* a_conv = (LDKSendSuccess*)untag_ptr(a);
+ LDKSendSuccess* b_conv = (LDKSendSuccess*)untag_ptr(b);
+ jboolean ret_conv = SendSuccess_eq(a_conv, b_conv);
+ return ret_conv;
+}
+
void CS_LDK_SendError_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
return ret_ref;
}
-int64_t CS_LDK_SendError_invalid_first_hop() {
+int64_t CS_LDK_SendError_invalid_first_hop(int8_tArray a) {
+ LDKPublicKey a_ref;
+ CHECK(a->arr_len == 33);
+ memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
+ LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
+ *ret_copy = SendError_invalid_first_hop(a_ref);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_SendError_path_not_found() {
LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
- *ret_copy = SendError_invalid_first_hop();
+ *ret_copy = SendError_path_not_found();
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
reply_path_conv.is_owned = ptr_is_owned(reply_path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(reply_path_conv);
reply_path_conv = BlindedPath_clone(&reply_path_conv);
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ), "LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ");
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ), "LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ");
*ret_conv = create_onion_message(entropy_source_conv, node_signer_conv, path_conv, contents_conv, reply_path_conv);
return tag_ptr(ret_conv, true);
}
return ret_ref;
}
-int64_t CS_LDK_OnionMessenger_send_onion_message(int64_t this_arg, int64_t path, int64_t contents, int64_t reply_path) {
+int64_t CS_LDK_OnionMessenger_send_onion_message(int64_t this_arg, int64_t contents, int64_t destination, int64_t reply_path) {
LDKOnionMessenger this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
this_arg_conv.is_owned = false;
- LDKOnionMessagePath path_conv;
- path_conv.inner = untag_ptr(path);
- path_conv.is_owned = ptr_is_owned(path);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
- path_conv = OnionMessagePath_clone(&path_conv);
void* contents_ptr = untag_ptr(contents);
CHECK_ACCESS(contents_ptr);
LDKOnionMessageContents contents_conv = *(LDKOnionMessageContents*)(contents_ptr);
// If this_arg is a JCalls struct, then we need to increment the refcnt in it.
LDKOnionMessageContents_JCalls_cloned(&contents_conv);
}
+ void* destination_ptr = untag_ptr(destination);
+ CHECK_ACCESS(destination_ptr);
+ LDKDestination destination_conv = *(LDKDestination*)(destination_ptr);
+ destination_conv = Destination_clone((LDKDestination*)untag_ptr(destination));
LDKBlindedPath reply_path_conv;
reply_path_conv.inner = untag_ptr(reply_path);
reply_path_conv.is_owned = ptr_is_owned(reply_path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(reply_path_conv);
reply_path_conv = BlindedPath_clone(&reply_path_conv);
- LDKCResult_NoneSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSendErrorZ), "LDKCResult_NoneSendErrorZ");
- *ret_conv = OnionMessenger_send_onion_message(&this_arg_conv, path_conv, contents_conv, reply_path_conv);
+ LDKCResult_SendSuccessSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SendSuccessSendErrorZ), "LDKCResult_SendSuccessSendErrorZ");
+ *ret_conv = OnionMessenger_send_onion_message(&this_arg_conv, contents_conv, destination_conv, reply_path_conv);
return tag_ptr(ret_conv, true);
}
return ret_conv;
}
+int64_t CS_LDK_OffersMessage_as_OnionMessageContents(int64_t this_arg) {
+ LDKOffersMessage* this_arg_conv = (LDKOffersMessage*)untag_ptr(this_arg);
+ LDKOnionMessageContents* ret_ret = MALLOC(sizeof(LDKOnionMessageContents), "LDKOnionMessageContents");
+ *ret_ret = OffersMessage_as_OnionMessageContents(this_arg_conv);
+ return tag_ptr(ret_ret, true);
+}
+
int8_tArray CS_LDK_OffersMessage_write(int64_t obj) {
LDKOffersMessage* obj_conv = (LDKOffersMessage*)untag_ptr(obj);
LDKCVec_u8Z ret_var = OffersMessage_write(obj_conv);
return ret_ref;
}
+int64_t CS_LDK_Packet_hash(int64_t o) {
+ LDKPacket o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Packet_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Packet_eq(int64_t a, int64_t b) {
LDKPacket a_conv;
a_conv.inner = untag_ptr(a);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_BlindedPath_new_for_payment(int64_tArray intermediate_nodes, int8_tArray payee_node_id, int64_t payee_tlvs, int64_t htlc_maximum_msat, int64_t entropy_source) {
+ LDKCVec_ForwardNodeZ intermediate_nodes_constr;
+ intermediate_nodes_constr.datalen = intermediate_nodes->arr_len;
+ if (intermediate_nodes_constr.datalen > 0)
+ intermediate_nodes_constr.data = MALLOC(intermediate_nodes_constr.datalen * sizeof(LDKForwardNode), "LDKCVec_ForwardNodeZ Elements");
+ else
+ intermediate_nodes_constr.data = NULL;
+ int64_t* intermediate_nodes_vals = intermediate_nodes->elems;
+ for (size_t n = 0; n < intermediate_nodes_constr.datalen; n++) {
+ int64_t intermediate_nodes_conv_13 = intermediate_nodes_vals[n];
+ LDKForwardNode intermediate_nodes_conv_13_conv;
+ intermediate_nodes_conv_13_conv.inner = untag_ptr(intermediate_nodes_conv_13);
+ intermediate_nodes_conv_13_conv.is_owned = ptr_is_owned(intermediate_nodes_conv_13);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(intermediate_nodes_conv_13_conv);
+ intermediate_nodes_conv_13_conv = ForwardNode_clone(&intermediate_nodes_conv_13_conv);
+ intermediate_nodes_constr.data[n] = intermediate_nodes_conv_13_conv;
+ }
+ FREE(intermediate_nodes);
+ LDKPublicKey payee_node_id_ref;
+ CHECK(payee_node_id->arr_len == 33);
+ memcpy(payee_node_id_ref.compressed_form, payee_node_id->elems, 33); FREE(payee_node_id);
+ LDKReceiveTlvs payee_tlvs_conv;
+ payee_tlvs_conv.inner = untag_ptr(payee_tlvs);
+ payee_tlvs_conv.is_owned = ptr_is_owned(payee_tlvs);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_tlvs_conv);
+ payee_tlvs_conv = ReceiveTlvs_clone(&payee_tlvs_conv);
+ void* entropy_source_ptr = untag_ptr(entropy_source);
+ if (ptr_is_owned(entropy_source)) { CHECK_ACCESS(entropy_source_ptr); }
+ LDKEntropySource* entropy_source_conv = (LDKEntropySource*)entropy_source_ptr;
+ LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ), "LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ");
+ *ret_conv = BlindedPath_new_for_payment(intermediate_nodes_constr, payee_node_id_ref, payee_tlvs_conv, htlc_maximum_msat, entropy_source_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_BlindedPath_write(int64_t obj) {
LDKBlindedPath obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_arr;
}
-int64_t CS_LDK_ReceiveTlvs_read(int8_tArray ser) {
- LDKu8slice ser_ref;
- ser_ref.datalen = ser->arr_len;
- ser_ref.data = ser->elems;
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = ReceiveTlvs_read(ser_ref);
- FREE(ser);
- return tag_ptr(ret_conv, true);
-}
-
int8_tArray CS_LDK_PaymentRelay_write(int64_t obj) {
LDKPaymentRelay obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_conv;
}
+int64_t CS_LDK_PaymentPurpose_preimage(int64_t this_arg) {
+ LDKPaymentPurpose* this_arg_conv = (LDKPaymentPurpose*)untag_ptr(this_arg);
+ LDKCOption_ThirtyTwoBytesZ *ret_copy = MALLOC(sizeof(LDKCOption_ThirtyTwoBytesZ), "LDKCOption_ThirtyTwoBytesZ");
+ *ret_copy = PaymentPurpose_preimage(this_arg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
int8_tArray CS_LDK_PaymentPurpose_write(int64_t obj) {
LDKPaymentPurpose* obj_conv = (LDKPaymentPurpose*)untag_ptr(obj);
LDKCVec_u8Z ret_var = PaymentPurpose_write(obj_conv);
ClaimedHTLC_set_value_msat(&this_ptr_conv, val);
}
-int64_t CS_LDK_ClaimedHTLC_new(int8_tArray channel_id_arg, int8_tArray user_channel_id_arg, int32_t cltv_expiry_arg, int64_t value_msat_arg) {
+int64_t CS_LDK_ClaimedHTLC_get_counterparty_skimmed_fee_msat(int64_t this_ptr) {
+ LDKClaimedHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = ClaimedHTLC_get_counterparty_skimmed_fee_msat(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_ClaimedHTLC_set_counterparty_skimmed_fee_msat(int64_t this_ptr, int64_t val) {
+ LDKClaimedHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ ClaimedHTLC_set_counterparty_skimmed_fee_msat(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_ClaimedHTLC_new(int8_tArray channel_id_arg, int8_tArray user_channel_id_arg, int32_t cltv_expiry_arg, int64_t value_msat_arg, int64_t counterparty_skimmed_fee_msat_arg) {
LDKThirtyTwoBytes channel_id_arg_ref;
CHECK(channel_id_arg->arr_len == 32);
memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
LDKU128 user_channel_id_arg_ref;
CHECK(user_channel_id_arg->arr_len == 16);
memcpy(user_channel_id_arg_ref.le_bytes, user_channel_id_arg->elems, 16); FREE(user_channel_id_arg);
- LDKClaimedHTLC ret_var = ClaimedHTLC_new(channel_id_arg_ref, user_channel_id_arg_ref, cltv_expiry_arg, value_msat_arg);
+ LDKClaimedHTLC ret_var = ClaimedHTLC_new(channel_id_arg_ref, user_channel_id_arg_ref, cltv_expiry_arg, value_msat_arg, counterparty_skimmed_fee_msat_arg);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
+int64_t CS_LDK_Event_connection_needed(int8_tArray node_id, int64_tArray addresses) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKCVec_SocketAddressZ addresses_constr;
+ addresses_constr.datalen = addresses->arr_len;
+ if (addresses_constr.datalen > 0)
+ addresses_constr.data = MALLOC(addresses_constr.datalen * sizeof(LDKSocketAddress), "LDKCVec_SocketAddressZ Elements");
+ else
+ addresses_constr.data = NULL;
+ int64_t* addresses_vals = addresses->elems;
+ for (size_t p = 0; p < addresses_constr.datalen; p++) {
+ int64_t addresses_conv_15 = addresses_vals[p];
+ void* addresses_conv_15_ptr = untag_ptr(addresses_conv_15);
+ CHECK_ACCESS(addresses_conv_15_ptr);
+ LDKSocketAddress addresses_conv_15_conv = *(LDKSocketAddress*)(addresses_conv_15_ptr);
+ addresses_constr.data[p] = addresses_conv_15_conv;
+ }
+ FREE(addresses);
+ LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent");
+ *ret_copy = Event_connection_needed(node_id_ref, addresses_constr);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
int64_t CS_LDK_Event_invoice_request_failed(int8_tArray payment_id) {
LDKThirtyTwoBytes payment_id_ref;
CHECK(payment_id->arr_len == 32);
return ret_ref;
}
-int64_t CS_LDK_Event_channel_closed(int8_tArray channel_id, int8_tArray user_channel_id, int64_t reason, int8_tArray counterparty_node_id, int64_t channel_capacity_sats) {
+int64_t CS_LDK_Event_channel_closed(int8_tArray channel_id, int8_tArray user_channel_id, int64_t reason, int8_tArray counterparty_node_id, int64_t channel_capacity_sats, int64_t channel_funding_txo) {
LDKThirtyTwoBytes channel_id_ref;
CHECK(channel_id->arr_len == 32);
memcpy(channel_id_ref.data, channel_id->elems, 32); FREE(channel_id);
CHECK_ACCESS(channel_capacity_sats_ptr);
LDKCOption_u64Z channel_capacity_sats_conv = *(LDKCOption_u64Z*)(channel_capacity_sats_ptr);
channel_capacity_sats_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(channel_capacity_sats));
+ LDKOutPoint channel_funding_txo_conv;
+ channel_funding_txo_conv.inner = untag_ptr(channel_funding_txo);
+ channel_funding_txo_conv.is_owned = ptr_is_owned(channel_funding_txo);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_funding_txo_conv);
+ channel_funding_txo_conv = OutPoint_clone(&channel_funding_txo_conv);
LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent");
- *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id_ref, reason_conv, counterparty_node_id_ref, channel_capacity_sats_conv);
+ *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id_ref, reason_conv, counterparty_node_id_ref, channel_capacity_sats_conv, channel_funding_txo_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
return ret_ref;
}
+int64_t CS_LDK_MessageSendEvent_send_stfu(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKStfu msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = Stfu_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_stfu(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_MessageSendEvent_send_splice(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKSplice msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = Splice_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_splice(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_MessageSendEvent_send_splice_ack(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKSpliceAck msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = SpliceAck_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_splice_ack(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_MessageSendEvent_send_splice_locked(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKSpliceLocked msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = SpliceLocked_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_splice_locked(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
int64_t CS_LDK_MessageSendEvent_send_tx_add_input(int8_tArray node_id, int64_t msg) {
LDKPublicKey node_id_ref;
CHECK(node_id->arr_len == 33);
return tag_ptr(ret_conv, true);
}
-jstring CS_LDK_Description_into_inner(int64_t this_arg) {
+int64_t CS_LDK_Description_into_inner(int64_t this_arg) {
LDKDescription this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
this_arg_conv = Description_clone(&this_arg_conv);
- LDKStr ret_str = Description_into_inner(this_arg_conv);
+ LDKUntrustedString ret_var = Description_into_inner(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jstring CS_LDK_Description_to_str(int64_t o) {
+ LDKDescription o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ LDKStr ret_str = Description_to_str(&o_conv);
jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
Str_free(ret_str);
return ret_conv;
return ret_conv;
}
-int64_t CS_LDK_pay_invoice(int64_t invoice, int64_t retry_strategy, int64_t channelmanager) {
+int64_t CS_LDK_payment_parameters_from_zero_amount_invoice(int64_t invoice, int64_t amount_msat) {
LDKBolt11Invoice invoice_conv;
invoice_conv.inner = untag_ptr(invoice);
invoice_conv.is_owned = ptr_is_owned(invoice);
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
invoice_conv.is_owned = false;
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = pay_invoice(&invoice_conv, retry_strategy_conv, &channelmanager_conv);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = payment_parameters_from_zero_amount_invoice(&invoice_conv, amount_msat);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_pay_invoice_with_id(int64_t invoice, int8_tArray payment_id, int64_t retry_strategy, int64_t channelmanager) {
+int64_t CS_LDK_payment_parameters_from_invoice(int64_t invoice) {
LDKBolt11Invoice invoice_conv;
invoice_conv.inner = untag_ptr(invoice);
invoice_conv.is_owned = ptr_is_owned(invoice);
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
invoice_conv.is_owned = false;
- LDKThirtyTwoBytes payment_id_ref;
- CHECK(payment_id->arr_len == 32);
- memcpy(payment_id_ref.data, payment_id->elems, 32); FREE(payment_id);
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = pay_invoice_with_id(&invoice_conv, payment_id_ref, retry_strategy_conv, &channelmanager_conv);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = payment_parameters_from_invoice(&invoice_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_pay_zero_value_invoice(int64_t invoice, int64_t amount_msats, int64_t retry_strategy, int64_t channelmanager) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = pay_zero_value_invoice(&invoice_conv, amount_msats, retry_strategy_conv, &channelmanager_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_pay_zero_value_invoice_with_id(int64_t invoice, int64_t amount_msats, int8_tArray payment_id, int64_t retry_strategy, int64_t channelmanager) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- LDKThirtyTwoBytes payment_id_ref;
- CHECK(payment_id->arr_len == 32);
- memcpy(payment_id_ref.data, payment_id->elems, 32); FREE(payment_id);
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = pay_zero_value_invoice_with_id(&invoice_conv, amount_msats, payment_id_ref, retry_strategy_conv, &channelmanager_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_preflight_probe_invoice(int64_t invoice, int64_t channelmanager, int64_t liquidity_limit_multiplier) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- void* liquidity_limit_multiplier_ptr = untag_ptr(liquidity_limit_multiplier);
- CHECK_ACCESS(liquidity_limit_multiplier_ptr);
- LDKCOption_u64Z liquidity_limit_multiplier_conv = *(LDKCOption_u64Z*)(liquidity_limit_multiplier_ptr);
- liquidity_limit_multiplier_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(liquidity_limit_multiplier));
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = preflight_probe_invoice(&invoice_conv, &channelmanager_conv, liquidity_limit_multiplier_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_preflight_probe_zero_value_invoice(int64_t invoice, int64_t amount_msat, int64_t channelmanager, int64_t liquidity_limit_multiplier) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- void* liquidity_limit_multiplier_ptr = untag_ptr(liquidity_limit_multiplier);
- CHECK_ACCESS(liquidity_limit_multiplier_ptr);
- LDKCOption_u64Z liquidity_limit_multiplier_conv = *(LDKCOption_u64Z*)(liquidity_limit_multiplier_ptr);
- liquidity_limit_multiplier_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(liquidity_limit_multiplier));
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = preflight_probe_zero_value_invoice(&invoice_conv, amount_msat, &channelmanager_conv, liquidity_limit_multiplier_conv);
- return tag_ptr(ret_conv, true);
-}
-
-void CS_LDK_PaymentError_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKPaymentError this_ptr_conv = *(LDKPaymentError*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- PaymentError_free(this_ptr_conv);
-}
-
-static inline uint64_t PaymentError_clone_ptr(LDKPaymentError *NONNULL_PTR arg) {
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_clone(arg);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-int64_t CS_LDK_PaymentError_clone_ptr(int64_t arg) {
- LDKPaymentError* arg_conv = (LDKPaymentError*)untag_ptr(arg);
- int64_t ret_conv = PaymentError_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_PaymentError_clone(int64_t orig) {
- LDKPaymentError* orig_conv = (LDKPaymentError*)untag_ptr(orig);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_clone(orig_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_PaymentError_invoice(jstring a) {
- LDKStr a_conv = str_ref_to_owned_c(a);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_invoice(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_PaymentError_sending(int32_t a) {
- LDKRetryableSendFailure a_conv = LDKRetryableSendFailure_from_cs(a);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_sending(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-jboolean CS_LDK_PaymentError_eq(int64_t a, int64_t b) {
- LDKPaymentError* a_conv = (LDKPaymentError*)untag_ptr(a);
- LDKPaymentError* b_conv = (LDKPaymentError*)untag_ptr(b);
- jboolean ret_conv = PaymentError_eq(a_conv, b_conv);
- return ret_conv;
-}
-
-void CS_LDK_ProbingError_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKProbingError this_ptr_conv = *(LDKProbingError*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- ProbingError_free(this_ptr_conv);
-}
-
-static inline uint64_t ProbingError_clone_ptr(LDKProbingError *NONNULL_PTR arg) {
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_clone(arg);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-int64_t CS_LDK_ProbingError_clone_ptr(int64_t arg) {
- LDKProbingError* arg_conv = (LDKProbingError*)untag_ptr(arg);
- int64_t ret_conv = ProbingError_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_ProbingError_clone(int64_t orig) {
- LDKProbingError* orig_conv = (LDKProbingError*)untag_ptr(orig);
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_clone(orig_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_ProbingError_invoice(jstring a) {
- LDKStr a_conv = str_ref_to_owned_c(a);
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_invoice(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_ProbingError_sending(int64_t a) {
- void* a_ptr = untag_ptr(a);
- CHECK_ACCESS(a_ptr);
- LDKProbeSendFailure a_conv = *(LDKProbeSendFailure*)(a_ptr);
- a_conv = ProbeSendFailure_clone((LDKProbeSendFailure*)untag_ptr(a));
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_sending(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-jboolean CS_LDK_ProbingError_eq(int64_t a, int64_t b) {
- LDKProbingError* a_conv = (LDKProbingError*)untag_ptr(a);
- LDKProbingError* b_conv = (LDKProbingError*)untag_ptr(b);
- jboolean ret_conv = ProbingError_eq(a_conv, b_conv);
- return ret_conv;
-}
-
int64_t CS_LDK_create_phantom_invoice(int64_t amt_msat, int64_t payment_hash, jstring description, int32_t invoice_expiry_delta_secs, int64_tArray phantom_route_hints, int64_t entropy_source, int64_t node_signer, int64_t logger, int32_t network, int64_t min_final_cltv_expiry_delta, int64_t duration_since_epoch) {
void* amt_msat_ptr = untag_ptr(amt_msat);
CHECK_ACCESS(amt_msat_ptr);
return ret_conv;
}
+void CS_LDK_GraphSyncError_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKGraphSyncError this_ptr_conv = *(LDKGraphSyncError*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ GraphSyncError_free(this_ptr_conv);
+}
+
+static inline uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg) {
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_GraphSyncError_clone_ptr(int64_t arg) {
+ LDKGraphSyncError* arg_conv = (LDKGraphSyncError*)untag_ptr(arg);
+ int64_t ret_conv = GraphSyncError_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_GraphSyncError_clone(int64_t orig) {
+ LDKGraphSyncError* orig_conv = (LDKGraphSyncError*)untag_ptr(orig);
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_GraphSyncError_decode_error(int64_t a) {
+ void* a_ptr = untag_ptr(a);
+ CHECK_ACCESS(a_ptr);
+ LDKDecodeError a_conv = *(LDKDecodeError*)(a_ptr);
+ a_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(a));
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_decode_error(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_GraphSyncError_lightning_error(int64_t a) {
+ LDKLightningError a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = LightningError_clone(&a_conv);
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_lightning_error(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
void CS_LDK_RapidGossipSync_free(int64_t this_obj) {
LDKRapidGossipSync this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_conv;
}
-void CS_LDK_GraphSyncError_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKGraphSyncError this_ptr_conv = *(LDKGraphSyncError*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- GraphSyncError_free(this_ptr_conv);
-}
-
-static inline uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg) {
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_clone(arg);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-int64_t CS_LDK_GraphSyncError_clone_ptr(int64_t arg) {
- LDKGraphSyncError* arg_conv = (LDKGraphSyncError*)untag_ptr(arg);
- int64_t ret_conv = GraphSyncError_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_GraphSyncError_clone(int64_t orig) {
- LDKGraphSyncError* orig_conv = (LDKGraphSyncError*)untag_ptr(orig);
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_clone(orig_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_GraphSyncError_decode_error(int64_t a) {
- void* a_ptr = untag_ptr(a);
- CHECK_ACCESS(a_ptr);
- LDKDecodeError a_conv = *(LDKDecodeError*)(a_ptr);
- a_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(a));
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_decode_error(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_GraphSyncError_lightning_error(int64_t a) {
- LDKLightningError a_conv;
- a_conv.inner = untag_ptr(a);
- a_conv.is_owned = ptr_is_owned(a);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
- a_conv = LightningError_clone(&a_conv);
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_lightning_error(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
_Static_assert(sizeof(void*) <= 8, "Pointers must fit into 64 bits");
+// Int types across Windows/Linux are different, so make sure we're using the right headers.
+_Static_assert(sizeof(void*) == sizeof(uintptr_t), "stdints must be correct");
+_Static_assert(sizeof(void*) == sizeof(intptr_t), "stdints must be correct");
+_Static_assert(sizeof(uint64_t) == 8, "stdints must be correct");
+_Static_assert(sizeof(int64_t) == 8, "stdints must be correct");
+_Static_assert(sizeof(uint32_t) == 4, "stdints must be correct");
+_Static_assert(sizeof(int32_t) == 4, "stdints must be correct");
+_Static_assert(sizeof(uint16_t) == 2, "stdints must be correct");
+_Static_assert(sizeof(int16_t) == 2, "stdints must be correct");
+_Static_assert(sizeof(uint8_t) == 1, "stdints must be correct");
+_Static_assert(sizeof(int8_t) == 1, "stdints must be correct");
+
#define DECL_ARR_TYPE(ty, name) \
struct name##array { \
uint64_t arr_len; /* uint32_t would suffice but we want to align uint64_ts as well */ \
return 0;
}
+typedef int64_t (*invoker_l_lll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c);
+static invoker_l_lll js_invoke_function_l_lll;
+int CS_LDK_register_l_lll_invoker(invoker_l_lll invoker) {
+ js_invoke_function_l_lll = invoker;
+ return 0;
+}
+
typedef int64_t (*invoker_l_llll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c, int64_t d);
static invoker_l_llll js_invoke_function_l_llll;
int CS_LDK_register_l_llll_invoker(invoker_l_llll invoker) {
return 0;
}
-typedef int64_t (*invoker_l_lll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c);
-static invoker_l_lll js_invoke_function_l_lll;
-int CS_LDK_register_l_lll_invoker(invoker_l_lll invoker) {
- js_invoke_function_l_lll = invoker;
+typedef void (*invoker_void_lll)(int obj_ptr, int fn_id, int64_t a, int64_t b, int64_t c);
+static invoker_void_lll js_invoke_function_void_lll;
+int CS_LDK_register_void_lll_invoker(invoker_void_lll invoker) {
+ js_invoke_function_void_lll = invoker;
return 0;
}
}
}
+static inline LDKBlindedFailure LDKBlindedFailure_from_cs(int32_t ord) {
+ switch (ord) {
+ case 0: return LDKBlindedFailure_FromIntroductionNode;
+ case 1: return LDKBlindedFailure_FromBlindedNode;
+ default: abort();
+ }
+}
+static inline int32_t LDKBlindedFailure_to_cs(LDKBlindedFailure val) {
+ switch (val) {
+ case LDKBlindedFailure_FromIntroductionNode: return 0;
+ case LDKBlindedFailure_FromBlindedNode: return 1;
+ default: abort();
+ }
+}
static inline LDKBolt11SemanticError LDKBolt11SemanticError_from_cs(int32_t ord) {
switch (ord) {
case 0: return LDKBolt11SemanticError_NoPaymentHash;
static inline LDKConfirmationTarget LDKConfirmationTarget_from_cs(int32_t ord) {
switch (ord) {
case 0: return LDKConfirmationTarget_OnChainSweep;
- case 1: return LDKConfirmationTarget_MaxAllowedNonAnchorChannelRemoteFee;
- case 2: return LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee;
- case 3: return LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee;
- case 4: return LDKConfirmationTarget_AnchorChannelFee;
- case 5: return LDKConfirmationTarget_NonAnchorChannelFee;
- case 6: return LDKConfirmationTarget_ChannelCloseMinimum;
+ case 1: return LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee;
+ case 2: return LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee;
+ case 3: return LDKConfirmationTarget_AnchorChannelFee;
+ case 4: return LDKConfirmationTarget_NonAnchorChannelFee;
+ case 5: return LDKConfirmationTarget_ChannelCloseMinimum;
default: abort();
}
}
static inline int32_t LDKConfirmationTarget_to_cs(LDKConfirmationTarget val) {
switch (val) {
case LDKConfirmationTarget_OnChainSweep: return 0;
- case LDKConfirmationTarget_MaxAllowedNonAnchorChannelRemoteFee: return 1;
- case LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee: return 2;
- case LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee: return 3;
- case LDKConfirmationTarget_AnchorChannelFee: return 4;
- case LDKConfirmationTarget_NonAnchorChannelFee: return 5;
- case LDKConfirmationTarget_ChannelCloseMinimum: return 6;
+ case LDKConfirmationTarget_MinAllowedAnchorChannelRemoteFee: return 1;
+ case LDKConfirmationTarget_MinAllowedNonAnchorChannelRemoteFee: return 2;
+ case LDKConfirmationTarget_AnchorChannelFee: return 3;
+ case LDKConfirmationTarget_NonAnchorChannelFee: return 4;
+ case LDKConfirmationTarget_ChannelCloseMinimum: return 5;
default: abort();
}
}
default: abort();
}
}
+static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) {
+ LDKCVec_u8Z ret = { .data = MALLOC(sizeof(int8_t) * orig->datalen, "LDKCVec_u8Z clone bytes"), .datalen = orig->datalen };
+ memcpy(ret.data, orig->data, sizeof(int8_t) * ret.datalen);
+ return ret;
+}
struct LDKThirtyTwoBytes BigEndianScalar_get_bytes (struct LDKBigEndianScalar* thing) {
LDKThirtyTwoBytes ret = { .data = *thing->big_endian_bytes };
return ret;
int8_t invalid_data_conv = obj->invalid_data;
return invalid_data_conv;
}
-static inline LDKCVec_u8Z CVec_u8Z_clone(const LDKCVec_u8Z *orig) {
- LDKCVec_u8Z ret = { .data = MALLOC(sizeof(int8_t) * orig->datalen, "LDKCVec_u8Z clone bytes"), .datalen = orig->datalen };
- memcpy(ret.data, orig->data, sizeof(int8_t) * ret.datalen);
- return ret;
-}
-struct LDKWitness TxIn_get_witness (struct LDKTxIn* thing) { return Witness_clone(&thing->witness);}int8_tArray CS_LDK_TxIn_get_witness(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- LDKWitness ret_var = TxIn_get_witness(thing_conv);
- int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
- memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
- Witness_free(ret_var);
- return ret_arr;
-}
-
-struct LDKCVec_u8Z TxIn_get_script_sig (struct LDKTxIn* thing) { return CVec_u8Z_clone(&thing->script_sig);}int8_tArray CS_LDK_TxIn_get_script_sig(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- LDKCVec_u8Z ret_var = TxIn_get_script_sig(thing_conv);
- int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
- memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
- CVec_u8Z_free(ret_var);
- return ret_arr;
-}
-
-LDKThirtyTwoBytes TxIn_get_previous_txid (struct LDKTxIn* thing) { return thing->previous_txid;}int8_tArray CS_LDK_TxIn_get_previous_txid(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
- memcpy(ret_arr->elems, TxIn_get_previous_txid(thing_conv).data, 32);
- return ret_arr;
-}
-
-uint32_t TxIn_get_previous_vout (struct LDKTxIn* thing) { return thing->previous_vout;}int32_t CS_LDK_TxIn_get_previous_vout(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- int32_t ret_conv = TxIn_get_previous_vout(thing_conv);
- return ret_conv;
-}
-
-uint32_t TxIn_get_sequence (struct LDKTxIn* thing) { return thing->sequence;}int32_t CS_LDK_TxIn_get_sequence(int64_t thing) {
- LDKTxIn* thing_conv = (LDKTxIn*)untag_ptr(thing);
- int32_t ret_conv = TxIn_get_sequence(thing_conv);
- return ret_conv;
-}
-
-struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing) { return CVec_u8Z_clone(&thing->script_pubkey);}int8_tArray CS_LDK_TxOut_get_script_pubkey(int64_t thing) {
- LDKTxOut* thing_conv = (LDKTxOut*)untag_ptr(thing);
- LDKCVec_u8Z ret_var = TxOut_get_script_pubkey(thing_conv);
- int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
- memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
- CVec_u8Z_free(ret_var);
- return ret_arr;
-}
-
-uint64_t TxOut_get_value (struct LDKTxOut* thing) { return thing->value;}int64_t CS_LDK_TxOut_get_value(int64_t thing) {
- LDKTxOut* thing_conv = (LDKTxOut*)untag_ptr(thing);
- int64_t ret_conv = TxOut_get_value(thing_conv);
- return ret_conv;
-}
-
uint32_t CS_LDK_LDKCOption_u64Z_ty_from_ptr(int64_t ptr) {
LDKCOption_u64Z *obj = (LDKCOption_u64Z*)untag_ptr(ptr);
switch(obj->tag) {
LDKTxOut* output_ref = &obj->static_output.output;
return tag_ptr(output_ref, false);
}
+int8_tArray CS_LDK_LDKSpendableOutputDescriptor_StaticOutput_get_channel_keys_id(int64_t ptr) {
+ LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKSpendableOutputDescriptor_StaticOutput);
+ int8_tArray channel_keys_id_arr = init_int8_tArray(32, __LINE__);
+ memcpy(channel_keys_id_arr->elems, obj->static_output.channel_keys_id.data, 32);
+ return channel_keys_id_arr;
+}
int64_t CS_LDK_LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(int64_t ptr) {
LDKSpendableOutputDescriptor *obj = (LDKSpendableOutputDescriptor*)untag_ptr(ptr);
CHECK(obj->tag == LDKSpendableOutputDescriptor_DelayedPaymentOutput);
int32_t some_conv = obj->some;
return some_conv;
}
-static inline struct LDKCVec_u8Z C2Tuple_CVec_u8ZusizeZ_get_a(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR owner){
+static inline struct LDKCVec_u8Z C2Tuple_CVec_u8Zu64Z_get_a(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR owner){
return CVec_u8Z_clone(&owner->a);
}
-int8_tArray CS_LDK_C2Tuple_CVec_u8ZusizeZ_get_a(int64_t owner) {
- LDKC2Tuple_CVec_u8ZusizeZ* owner_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(owner);
- LDKCVec_u8Z ret_var = C2Tuple_CVec_u8ZusizeZ_get_a(owner_conv);
+int8_tArray CS_LDK_C2Tuple_CVec_u8Zu64Z_get_a(int64_t owner) {
+ LDKC2Tuple_CVec_u8Zu64Z* owner_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(owner);
+ LDKCVec_u8Z ret_var = C2Tuple_CVec_u8Zu64Z_get_a(owner_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
CVec_u8Z_free(ret_var);
return ret_arr;
}
-static inline uintptr_t C2Tuple_CVec_u8ZusizeZ_get_b(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR owner){
+static inline uint64_t C2Tuple_CVec_u8Zu64Z_get_b(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR owner){
return owner->b;
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_get_b(int64_t owner) {
- LDKC2Tuple_CVec_u8ZusizeZ* owner_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(owner);
- int64_t ret_conv = C2Tuple_CVec_u8ZusizeZ_get_b(owner_conv);
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_get_b(int64_t owner) {
+ LDKC2Tuple_CVec_u8Zu64Z* owner_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(owner);
+ int64_t ret_conv = C2Tuple_CVec_u8Zu64Z_get_b(owner_conv);
return ret_conv;
}
-static inline struct LDKC2Tuple_CVec_u8ZusizeZ CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR owner){
+static inline struct LDKC2Tuple_CVec_u8Zu64Z CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return C2Tuple_CVec_u8ZusizeZ_clone(&*owner->contents.result);
+ return C2Tuple_CVec_u8Zu64Z_clone(&*owner->contents.result);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(int64_t owner) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(owner);
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(owner_conv);
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(owner);
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(owner_conv);
return tag_ptr(ret_conv, true);
}
-static inline void CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR owner){
+static inline void CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return *owner->contents.err;
}
-void CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(int64_t owner) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(owner);
- CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(owner_conv);
+void CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(int64_t owner) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* owner_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(owner);
+ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(owner_conv);
}
static inline struct LDKChannelDerivationParameters CResult_ChannelDerivationParametersDecodeErrorZ_get_ok(LDKCResult_ChannelDerivationParametersDecodeErrorZ *NONNULL_PTR owner){
CResult_NoneNoneZ_get_err(owner_conv);
}
-static inline struct LDKECDSASignature C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
- return owner->a;
-}
-int8_tArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(int64_t owner) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
- int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
- memcpy(ret_arr->elems, C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(owner_conv).compact_form, 64);
- return ret_arr;
-}
-
-static inline struct LDKCVec_ECDSASignatureZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
- return owner->b;
-}
-ptrArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(int64_t owner) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
- LDKCVec_ECDSASignatureZ ret_var = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(owner_conv);
- ptrArray ret_arr = NULL;
- ret_arr = init_ptrArray(ret_var.datalen, __LINE__);
- int8_tArray *ret_arr_ptr = (int8_tArray*)(((uint8_t*)ret_arr) + 8);
- for (size_t i = 0; i < ret_var.datalen; i++) {
- int8_tArray ret_conv_8_arr = init_int8_tArray(64, __LINE__);
- memcpy(ret_conv_8_arr->elems, ret_var.data[i].compact_form, 64);
- ret_arr_ptr[i] = ret_conv_8_arr;
- }
-
- return ret_arr;
-}
-
-static inline struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(&*owner->contents.result);
-}
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(int64_t owner) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(owner_conv);
- return tag_ptr(ret_conv, true);
-}
-
-static inline void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return *owner->contents.err;
-}
-void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(int64_t owner) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
- CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(owner_conv);
-}
-
-static inline struct LDKECDSASignature CResult_ECDSASignatureNoneZ_get_ok(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return *owner->contents.result;
-}
-int8_tArray CS_LDK_CResult_ECDSASignatureNoneZ_get_ok(int64_t owner) {
- LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
- int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
- memcpy(ret_arr->elems, CResult_ECDSASignatureNoneZ_get_ok(owner_conv).compact_form, 64);
- return ret_arr;
-}
-
-static inline void CResult_ECDSASignatureNoneZ_get_err(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return *owner->contents.err;
-}
-void CS_LDK_CResult_ECDSASignatureNoneZ_get_err(int64_t owner) {
- LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
- CResult_ECDSASignatureNoneZ_get_err(owner_conv);
-}
-
static inline struct LDKPublicKey CResult_PublicKeyNoneZ_get_ok(LDKCResult_PublicKeyNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
return *owner->contents.result;
CResult_SchnorrSignatureNoneZ_get_err(owner_conv);
}
+static inline struct LDKECDSASignature CResult_ECDSASignatureNoneZ_get_ok(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return *owner->contents.result;
+}
+int8_tArray CS_LDK_CResult_ECDSASignatureNoneZ_get_ok(int64_t owner) {
+ LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
+ memcpy(ret_arr->elems, CResult_ECDSASignatureNoneZ_get_ok(owner_conv).compact_form, 64);
+ return ret_arr;
+}
+
+static inline void CResult_ECDSASignatureNoneZ_get_err(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_ECDSASignatureNoneZ_get_err(int64_t owner) {
+ LDKCResult_ECDSASignatureNoneZ* owner_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(owner);
+ CResult_ECDSASignatureNoneZ_get_err(owner_conv);
+}
+
+static inline struct LDKECDSASignature C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
+ return owner->a;
+}
+int8_tArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(int64_t owner) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(64, __LINE__);
+ memcpy(ret_arr->elems, C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(owner_conv).compact_form, 64);
+ return ret_arr;
+}
+
+static inline struct LDKCVec_ECDSASignatureZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner){
+ return owner->b;
+}
+ptrArray CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(int64_t owner) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* owner_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(owner);
+ LDKCVec_ECDSASignatureZ ret_var = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(owner_conv);
+ ptrArray ret_arr = NULL;
+ ret_arr = init_ptrArray(ret_var.datalen, __LINE__);
+ int8_tArray *ret_arr_ptr = (int8_tArray*)(((uint8_t*)ret_arr) + 8);
+ for (size_t i = 0; i < ret_var.datalen; i++) {
+ int8_tArray ret_conv_8_arr = init_int8_tArray(64, __LINE__);
+ memcpy(ret_conv_8_arr->elems, ret_var.data[i].compact_form, 64);
+ ret_arr_ptr[i] = ret_conv_8_arr;
+ }
+
+ return ret_arr;
+}
+
+static inline struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(&*owner->contents.result);
+}
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(owner_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+static inline void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(int64_t owner) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* owner_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(owner);
+ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(owner_conv);
+}
+
typedef struct LDKChannelSigner_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
return ret_ref;
}
-LDKCResult_NoneNoneZ validate_holder_commitment_LDKChannelSigner_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx, LDKCVec_ThirtyTwoBytesZ preimages) {
+LDKCResult_NoneNoneZ validate_holder_commitment_LDKChannelSigner_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * holder_tx, LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages) {
LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) this_arg;
LDKHolderCommitmentTransaction holder_tx_var = *holder_tx;
int64_t holder_tx_ref = 0;
holder_tx_var = HolderCommitmentTransaction_clone(&holder_tx_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_var);
holder_tx_ref = tag_ptr(holder_tx_var.inner, holder_tx_var.is_owned);
- LDKCVec_ThirtyTwoBytesZ preimages_var = preimages;
- ptrArray preimages_arr = NULL;
- preimages_arr = init_ptrArray(preimages_var.datalen, __LINE__);
- int8_tArray *preimages_arr_ptr = (int8_tArray*)(((uint8_t*)preimages_arr) + 8);
- for (size_t i = 0; i < preimages_var.datalen; i++) {
- int8_tArray preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
- memcpy(preimages_conv_8_arr->elems, preimages_var.data[i].data, 32);
- preimages_arr_ptr[i] = preimages_conv_8_arr;
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_var = outbound_htlc_preimages;
+ ptrArray outbound_htlc_preimages_arr = NULL;
+ outbound_htlc_preimages_arr = init_ptrArray(outbound_htlc_preimages_var.datalen, __LINE__);
+ int8_tArray *outbound_htlc_preimages_arr_ptr = (int8_tArray*)(((uint8_t*)outbound_htlc_preimages_arr) + 8);
+ for (size_t i = 0; i < outbound_htlc_preimages_var.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
+ memcpy(outbound_htlc_preimages_conv_8_arr->elems, outbound_htlc_preimages_var.data[i].data, 32);
+ outbound_htlc_preimages_arr_ptr[i] = outbound_htlc_preimages_conv_8_arr;
}
- FREE(preimages_var.data);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 2, holder_tx_ref, (int64_t)preimages_arr);
+ FREE(outbound_htlc_preimages_var.data);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 2, holder_tx_ref, (int64_t)outbound_htlc_preimages_arr);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
+LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKChannelSigner_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) {
+ LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) this_arg;
+ int64_t idx_conv = idx;
+ int8_tArray secret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(secret_arr->elems, *secret, 32);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 3, idx_conv, (int64_t)secret_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
}
LDKThirtyTwoBytes channel_keys_id_LDKChannelSigner_jcall(const void* this_arg) {
LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 3);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 4);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
channel_parameters_var = ChannelTransactionParameters_clone(&channel_parameters_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_parameters_var);
channel_parameters_ref = tag_ptr(channel_parameters_var.inner, channel_parameters_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 4, channel_parameters_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 5, channel_parameters_ref);
}
static void LDKChannelSigner_JCalls_cloned(LDKChannelSigner* new_obj) {
LDKChannelSigner_JCalls *j_calls = (LDKChannelSigner_JCalls*) new_obj->this_arg;
.get_per_commitment_point = get_per_commitment_point_LDKChannelSigner_jcall,
.release_commitment_secret = release_commitment_secret_LDKChannelSigner_jcall,
.validate_holder_commitment = validate_holder_commitment_LDKChannelSigner_jcall,
+ .validate_counterparty_revocation = validate_counterparty_revocation_LDKChannelSigner_jcall,
.channel_keys_id = channel_keys_id_LDKChannelSigner_jcall,
.provide_channel_parameters = provide_channel_parameters_LDKChannelSigner_jcall,
.free = LDKChannelSigner_JCalls_free,
return ret_arr;
}
-int64_t CS_LDK_ChannelSigner_validate_holder_commitment(int64_t this_arg, int64_t holder_tx, ptrArray preimages) {
+int64_t CS_LDK_ChannelSigner_validate_holder_commitment(int64_t this_arg, int64_t holder_tx, ptrArray outbound_htlc_preimages) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKChannelSigner* this_arg_conv = (LDKChannelSigner*)this_arg_ptr;
holder_tx_conv.is_owned = ptr_is_owned(holder_tx);
CHECK_INNER_FIELD_ACCESS_OR_NULL(holder_tx_conv);
holder_tx_conv.is_owned = false;
- LDKCVec_ThirtyTwoBytesZ preimages_constr;
- preimages_constr.datalen = preimages->arr_len;
- if (preimages_constr.datalen > 0)
- preimages_constr.data = MALLOC(preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_constr;
+ outbound_htlc_preimages_constr.datalen = outbound_htlc_preimages->arr_len;
+ if (outbound_htlc_preimages_constr.datalen > 0)
+ outbound_htlc_preimages_constr.data = MALLOC(outbound_htlc_preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
else
- preimages_constr.data = NULL;
- int8_tArray* preimages_vals = (void*) preimages->elems;
- for (size_t i = 0; i < preimages_constr.datalen; i++) {
- int8_tArray preimages_conv_8 = preimages_vals[i];
- LDKThirtyTwoBytes preimages_conv_8_ref;
- CHECK(preimages_conv_8->arr_len == 32);
- memcpy(preimages_conv_8_ref.data, preimages_conv_8->elems, 32); FREE(preimages_conv_8);
- preimages_constr.data[i] = preimages_conv_8_ref;
- }
- FREE(preimages);
+ outbound_htlc_preimages_constr.data = NULL;
+ int8_tArray* outbound_htlc_preimages_vals = (void*) outbound_htlc_preimages->elems;
+ for (size_t i = 0; i < outbound_htlc_preimages_constr.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8 = outbound_htlc_preimages_vals[i];
+ LDKThirtyTwoBytes outbound_htlc_preimages_conv_8_ref;
+ CHECK(outbound_htlc_preimages_conv_8->arr_len == 32);
+ memcpy(outbound_htlc_preimages_conv_8_ref.data, outbound_htlc_preimages_conv_8->elems, 32); FREE(outbound_htlc_preimages_conv_8);
+ outbound_htlc_preimages_constr.data[i] = outbound_htlc_preimages_conv_8_ref;
+ }
+ FREE(outbound_htlc_preimages);
LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ");
- *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv, preimages_constr);
+ *ret_conv = (this_arg_conv->validate_holder_commitment)(this_arg_conv->this_arg, &holder_tx_conv, outbound_htlc_preimages_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_ChannelSigner_validate_counterparty_revocation(int64_t this_arg, int64_t idx, int8_tArray secret) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelSigner* this_arg_conv = (LDKChannelSigner*)this_arg_ptr;
+ uint8_t secret_arr[32];
+ CHECK(secret->arr_len == 32);
+ memcpy(secret_arr, secret->elems, 32); FREE(secret);
+ uint8_t (*secret_ref)[32] = &secret_arr;
+ LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ");
+ *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref);
return tag_ptr(ret_conv, true);
}
FREE(j_calls);
}
}
-LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment_LDKEcdsaChannelSigner_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx, LDKCVec_ThirtyTwoBytesZ preimages) {
+LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment_LDKEcdsaChannelSigner_jcall(const void* this_arg, const LDKCommitmentTransaction * commitment_tx, LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages, LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages) {
LDKEcdsaChannelSigner_JCalls *j_calls = (LDKEcdsaChannelSigner_JCalls*) this_arg;
LDKCommitmentTransaction commitment_tx_var = *commitment_tx;
int64_t commitment_tx_ref = 0;
commitment_tx_var = CommitmentTransaction_clone(&commitment_tx_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_var);
commitment_tx_ref = tag_ptr(commitment_tx_var.inner, commitment_tx_var.is_owned);
- LDKCVec_ThirtyTwoBytesZ preimages_var = preimages;
- ptrArray preimages_arr = NULL;
- preimages_arr = init_ptrArray(preimages_var.datalen, __LINE__);
- int8_tArray *preimages_arr_ptr = (int8_tArray*)(((uint8_t*)preimages_arr) + 8);
- for (size_t i = 0; i < preimages_var.datalen; i++) {
- int8_tArray preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
- memcpy(preimages_conv_8_arr->elems, preimages_var.data[i].data, 32);
- preimages_arr_ptr[i] = preimages_conv_8_arr;
+ LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages_var = inbound_htlc_preimages;
+ ptrArray inbound_htlc_preimages_arr = NULL;
+ inbound_htlc_preimages_arr = init_ptrArray(inbound_htlc_preimages_var.datalen, __LINE__);
+ int8_tArray *inbound_htlc_preimages_arr_ptr = (int8_tArray*)(((uint8_t*)inbound_htlc_preimages_arr) + 8);
+ for (size_t i = 0; i < inbound_htlc_preimages_var.datalen; i++) {
+ int8_tArray inbound_htlc_preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
+ memcpy(inbound_htlc_preimages_conv_8_arr->elems, inbound_htlc_preimages_var.data[i].data, 32);
+ inbound_htlc_preimages_arr_ptr[i] = inbound_htlc_preimages_conv_8_arr;
+ }
+
+ FREE(inbound_htlc_preimages_var.data);
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_var = outbound_htlc_preimages;
+ ptrArray outbound_htlc_preimages_arr = NULL;
+ outbound_htlc_preimages_arr = init_ptrArray(outbound_htlc_preimages_var.datalen, __LINE__);
+ int8_tArray *outbound_htlc_preimages_arr_ptr = (int8_tArray*)(((uint8_t*)outbound_htlc_preimages_arr) + 8);
+ for (size_t i = 0; i < outbound_htlc_preimages_var.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8_arr = init_int8_tArray(32, __LINE__);
+ memcpy(outbound_htlc_preimages_conv_8_arr->elems, outbound_htlc_preimages_var.data[i].data, 32);
+ outbound_htlc_preimages_arr_ptr[i] = outbound_htlc_preimages_conv_8_arr;
}
- FREE(preimages_var.data);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 5, commitment_tx_ref, (int64_t)preimages_arr);
+ FREE(outbound_htlc_preimages_var.data);
+ uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 6, commitment_tx_ref, (int64_t)inbound_htlc_preimages_arr, (int64_t)outbound_htlc_preimages_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ ret_conv = *(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_NoneNoneZ validate_counterparty_revocation_LDKEcdsaChannelSigner_jcall(const void* this_arg, uint64_t idx, const uint8_t (* secret)[32]) {
- LDKEcdsaChannelSigner_JCalls *j_calls = (LDKEcdsaChannelSigner_JCalls*) this_arg;
- int64_t idx_conv = idx;
- int8_tArray secret_arr = init_int8_tArray(32, __LINE__);
- memcpy(secret_arr->elems, *secret, 32);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 6, idx_conv, (int64_t)secret_arr);
- void* ret_ptr = untag_ptr(ret);
- CHECK_ACCESS(ret_ptr);
- LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
- FREE(untag_ptr(ret));
- return ret_conv;
-}
LDKCResult_ECDSASignatureNoneZ sign_holder_commitment_LDKEcdsaChannelSigner_jcall(const void* this_arg, const LDKHolderCommitmentTransaction * commitment_tx) {
LDKEcdsaChannelSigner_JCalls *j_calls = (LDKEcdsaChannelSigner_JCalls*) this_arg;
LDKHolderCommitmentTransaction commitment_tx_var = *commitment_tx;
LDKEcdsaChannelSigner ret = {
.this_arg = (void*) calls,
.sign_counterparty_commitment = sign_counterparty_commitment_LDKEcdsaChannelSigner_jcall,
- .validate_counterparty_revocation = validate_counterparty_revocation_LDKEcdsaChannelSigner_jcall,
.sign_holder_commitment = sign_holder_commitment_LDKEcdsaChannelSigner_jcall,
.sign_justice_revoked_output = sign_justice_revoked_output_LDKEcdsaChannelSigner_jcall,
.sign_justice_revoked_htlc = sign_justice_revoked_htlc_LDKEcdsaChannelSigner_jcall,
*res_ptr = LDKEcdsaChannelSigner_init(o, ChannelSigner, pubkeys);
return tag_ptr(res_ptr, true);
}
-int64_t CS_LDK_EcdsaChannelSigner_sign_counterparty_commitment(int64_t this_arg, int64_t commitment_tx, ptrArray preimages) {
+int64_t CS_LDK_EcdsaChannelSigner_sign_counterparty_commitment(int64_t this_arg, int64_t commitment_tx, ptrArray inbound_htlc_preimages, ptrArray outbound_htlc_preimages) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKEcdsaChannelSigner* this_arg_conv = (LDKEcdsaChannelSigner*)this_arg_ptr;
commitment_tx_conv.is_owned = ptr_is_owned(commitment_tx);
CHECK_INNER_FIELD_ACCESS_OR_NULL(commitment_tx_conv);
commitment_tx_conv.is_owned = false;
- LDKCVec_ThirtyTwoBytesZ preimages_constr;
- preimages_constr.datalen = preimages->arr_len;
- if (preimages_constr.datalen > 0)
- preimages_constr.data = MALLOC(preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
+ LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages_constr;
+ inbound_htlc_preimages_constr.datalen = inbound_htlc_preimages->arr_len;
+ if (inbound_htlc_preimages_constr.datalen > 0)
+ inbound_htlc_preimages_constr.data = MALLOC(inbound_htlc_preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
else
- preimages_constr.data = NULL;
- int8_tArray* preimages_vals = (void*) preimages->elems;
- for (size_t i = 0; i < preimages_constr.datalen; i++) {
- int8_tArray preimages_conv_8 = preimages_vals[i];
- LDKThirtyTwoBytes preimages_conv_8_ref;
- CHECK(preimages_conv_8->arr_len == 32);
- memcpy(preimages_conv_8_ref.data, preimages_conv_8->elems, 32); FREE(preimages_conv_8);
- preimages_constr.data[i] = preimages_conv_8_ref;
- }
- FREE(preimages);
+ inbound_htlc_preimages_constr.data = NULL;
+ int8_tArray* inbound_htlc_preimages_vals = (void*) inbound_htlc_preimages->elems;
+ for (size_t i = 0; i < inbound_htlc_preimages_constr.datalen; i++) {
+ int8_tArray inbound_htlc_preimages_conv_8 = inbound_htlc_preimages_vals[i];
+ LDKThirtyTwoBytes inbound_htlc_preimages_conv_8_ref;
+ CHECK(inbound_htlc_preimages_conv_8->arr_len == 32);
+ memcpy(inbound_htlc_preimages_conv_8_ref.data, inbound_htlc_preimages_conv_8->elems, 32); FREE(inbound_htlc_preimages_conv_8);
+ inbound_htlc_preimages_constr.data[i] = inbound_htlc_preimages_conv_8_ref;
+ }
+ FREE(inbound_htlc_preimages);
+ LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages_constr;
+ outbound_htlc_preimages_constr.datalen = outbound_htlc_preimages->arr_len;
+ if (outbound_htlc_preimages_constr.datalen > 0)
+ outbound_htlc_preimages_constr.data = MALLOC(outbound_htlc_preimages_constr.datalen * sizeof(LDKThirtyTwoBytes), "LDKCVec_ThirtyTwoBytesZ Elements");
+ else
+ outbound_htlc_preimages_constr.data = NULL;
+ int8_tArray* outbound_htlc_preimages_vals = (void*) outbound_htlc_preimages->elems;
+ for (size_t i = 0; i < outbound_htlc_preimages_constr.datalen; i++) {
+ int8_tArray outbound_htlc_preimages_conv_8 = outbound_htlc_preimages_vals[i];
+ LDKThirtyTwoBytes outbound_htlc_preimages_conv_8_ref;
+ CHECK(outbound_htlc_preimages_conv_8->arr_len == 32);
+ memcpy(outbound_htlc_preimages_conv_8_ref.data, outbound_htlc_preimages_conv_8->elems, 32); FREE(outbound_htlc_preimages_conv_8);
+ outbound_htlc_preimages_constr.data[i] = outbound_htlc_preimages_conv_8_ref;
+ }
+ FREE(outbound_htlc_preimages);
LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv, preimages_constr);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_EcdsaChannelSigner_validate_counterparty_revocation(int64_t this_arg, int64_t idx, int8_tArray secret) {
- void* this_arg_ptr = untag_ptr(this_arg);
- if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
- LDKEcdsaChannelSigner* this_arg_conv = (LDKEcdsaChannelSigner*)this_arg_ptr;
- uint8_t secret_arr[32];
- CHECK(secret->arr_len == 32);
- memcpy(secret_arr, secret->elems, 32); FREE(secret);
- uint8_t (*secret_ref)[32] = &secret_arr;
- LDKCResult_NoneNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneNoneZ), "LDKCResult_NoneNoneZ");
- *ret_conv = (this_arg_conv->validate_counterparty_revocation)(this_arg_conv->this_arg, idx, secret_ref);
+ *ret_conv = (this_arg_conv->sign_counterparty_commitment)(this_arg_conv->this_arg, &commitment_tx_conv, inbound_htlc_preimages_constr, outbound_htlc_preimages_constr);
return tag_ptr(ret_conv, true);
}
jboolean some_conv = obj->some;
return some_conv;
}
-static inline LDKCVec_CVec_u8ZZ CVec_CVec_u8ZZ_clone(const LDKCVec_CVec_u8ZZ *orig) {
- LDKCVec_CVec_u8ZZ ret = { .data = MALLOC(sizeof(LDKCVec_u8Z) * orig->datalen, "LDKCVec_CVec_u8ZZ clone bytes"), .datalen = orig->datalen };
- for (size_t i = 0; i < ret.datalen; i++) {
- ret.data[i] = CVec_u8Z_clone(&orig->data[i]);
- }
- return ret;
-}
-static inline struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){
+static inline struct LDKWitness CResult_WitnessNoneZ_get_ok(LDKCResult_WitnessNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return CVec_CVec_u8ZZ_clone(&*owner->contents.result);
+ return Witness_clone(&*owner->contents.result);
}
-ptrArray CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_get_ok(int64_t owner) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(owner);
- LDKCVec_CVec_u8ZZ ret_var = CResult_CVec_CVec_u8ZZNoneZ_get_ok(owner_conv);
- ptrArray ret_arr = NULL;
- ret_arr = init_ptrArray(ret_var.datalen, __LINE__);
- int8_tArray *ret_arr_ptr = (int8_tArray*)(((uint8_t*)ret_arr) + 8);
- for (size_t i = 0; i < ret_var.datalen; i++) {
- LDKCVec_u8Z ret_conv_8_var = ret_var.data[i];
- int8_tArray ret_conv_8_arr = init_int8_tArray(ret_conv_8_var.datalen, __LINE__);
- memcpy(ret_conv_8_arr->elems, ret_conv_8_var.data, ret_conv_8_var.datalen);
- CVec_u8Z_free(ret_conv_8_var);
- ret_arr_ptr[i] = ret_conv_8_arr;
- }
-
- FREE(ret_var.data);
+int8_tArray CS_LDK_CResult_WitnessNoneZ_get_ok(int64_t owner) {
+ LDKCResult_WitnessNoneZ* owner_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(owner);
+ LDKWitness ret_var = CResult_WitnessNoneZ_get_ok(owner_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ Witness_free(ret_var);
return ret_arr;
}
-static inline void CResult_CVec_CVec_u8ZZNoneZ_get_err(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner){
+static inline void CResult_WitnessNoneZ_get_err(LDKCResult_WitnessNoneZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return *owner->contents.err;
}
-void CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_get_err(int64_t owner) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* owner_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(owner);
- CResult_CVec_CVec_u8ZZNoneZ_get_err(owner_conv);
+void CS_LDK_CResult_WitnessNoneZ_get_err(int64_t owner) {
+ LDKCResult_WitnessNoneZ* owner_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(owner);
+ CResult_WitnessNoneZ_get_err(owner_conv);
}
static inline struct LDKInMemorySigner CResult_InMemorySignerDecodeErrorZ_get_ok(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner){
CResult_TransactionNoneZ_get_err(owner_conv);
}
+uint32_t CS_LDK_LDKCandidateRouteHop_ty_from_ptr(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ switch(obj->tag) {
+ case LDKCandidateRouteHop_FirstHop: return 0;
+ case LDKCandidateRouteHop_PublicHop: return 1;
+ case LDKCandidateRouteHop_PrivateHop: return 2;
+ case LDKCandidateRouteHop_Blinded: return 3;
+ case LDKCandidateRouteHop_OneHopBlinded: return 4;
+ default: abort();
+ }
+}
+int64_t CS_LDK_LDKCandidateRouteHop_FirstHop_get_first_hop(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_FirstHop);
+ LDKFirstHopCandidate first_hop_var = obj->first_hop;
+ int64_t first_hop_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hop_var);
+ first_hop_ref = tag_ptr(first_hop_var.inner, false);
+ return first_hop_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_PublicHop_get_public_hop(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_PublicHop);
+ LDKPublicHopCandidate public_hop_var = obj->public_hop;
+ int64_t public_hop_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(public_hop_var);
+ public_hop_ref = tag_ptr(public_hop_var.inner, false);
+ return public_hop_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_PrivateHop_get_private_hop(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_PrivateHop);
+ LDKPrivateHopCandidate private_hop_var = obj->private_hop;
+ int64_t private_hop_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(private_hop_var);
+ private_hop_ref = tag_ptr(private_hop_var.inner, false);
+ return private_hop_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_Blinded_get_blinded(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_Blinded);
+ LDKBlindedPathCandidate blinded_var = obj->blinded;
+ int64_t blinded_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(blinded_var);
+ blinded_ref = tag_ptr(blinded_var.inner, false);
+ return blinded_ref;
+}
+int64_t CS_LDK_LDKCandidateRouteHop_OneHopBlinded_get_one_hop_blinded(int64_t ptr) {
+ LDKCandidateRouteHop *obj = (LDKCandidateRouteHop*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKCandidateRouteHop_OneHopBlinded);
+ LDKOneHopBlindedPathCandidate one_hop_blinded_var = obj->one_hop_blinded;
+ int64_t one_hop_blinded_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(one_hop_blinded_var);
+ one_hop_blinded_ref = tag_ptr(one_hop_blinded_var.inner, false);
+ return one_hop_blinded_ref;
+}
typedef struct LDKScoreLookUp_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
FREE(j_calls);
}
}
-uint64_t channel_penalty_msat_LDKScoreLookUp_jcall(const void* this_arg, uint64_t short_channel_id, const LDKNodeId * source, const LDKNodeId * target, LDKChannelUsage usage, const LDKProbabilisticScoringFeeParameters * score_params) {
+uint64_t channel_penalty_msat_LDKScoreLookUp_jcall(const void* this_arg, const LDKCandidateRouteHop * candidate, LDKChannelUsage usage, const LDKProbabilisticScoringFeeParameters * score_params) {
LDKScoreLookUp_JCalls *j_calls = (LDKScoreLookUp_JCalls*) this_arg;
- int64_t short_channel_id_conv = short_channel_id;
- LDKNodeId source_var = *source;
- int64_t source_ref = 0;
- source_var = NodeId_clone(&source_var);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(source_var);
- source_ref = tag_ptr(source_var.inner, source_var.is_owned);
- LDKNodeId target_var = *target;
- int64_t target_ref = 0;
- target_var = NodeId_clone(&target_var);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(target_var);
- target_ref = tag_ptr(target_var.inner, target_var.is_owned);
+ LDKCandidateRouteHop *ret_candidate = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop ret conversion");
+ *ret_candidate = CandidateRouteHop_clone(candidate);
+ int64_t ref_candidate = tag_ptr(ret_candidate, true);
LDKChannelUsage usage_var = usage;
int64_t usage_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(usage_var);
score_params_var = ProbabilisticScoringFeeParameters_clone(&score_params_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(score_params_var);
score_params_ref = tag_ptr(score_params_var.inner, score_params_var.is_owned);
- return js_invoke_function_l_lllll(j_calls->instance_ptr, 16, short_channel_id_conv, source_ref, target_ref, usage_ref, score_params_ref);
+ return js_invoke_function_l_lll(j_calls->instance_ptr, 16, ref_candidate, usage_ref, score_params_ref);
}
static void LDKScoreLookUp_JCalls_cloned(LDKScoreLookUp* new_obj) {
LDKScoreLookUp_JCalls *j_calls = (LDKScoreLookUp_JCalls*) new_obj->this_arg;
*res_ptr = LDKScoreLookUp_init(o);
return tag_ptr(res_ptr, true);
}
-int64_t CS_LDK_ScoreLookUp_channel_penalty_msat(int64_t this_arg, int64_t short_channel_id, int64_t source, int64_t target, int64_t usage, int64_t score_params) {
+int64_t CS_LDK_ScoreLookUp_channel_penalty_msat(int64_t this_arg, int64_t candidate, int64_t usage, int64_t score_params) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreLookUp* this_arg_conv = (LDKScoreLookUp*)this_arg_ptr;
- LDKNodeId source_conv;
- source_conv.inner = untag_ptr(source);
- source_conv.is_owned = ptr_is_owned(source);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(source_conv);
- source_conv.is_owned = false;
- LDKNodeId target_conv;
- target_conv.inner = untag_ptr(target);
- target_conv.is_owned = ptr_is_owned(target);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(target_conv);
- target_conv.is_owned = false;
+ LDKCandidateRouteHop* candidate_conv = (LDKCandidateRouteHop*)untag_ptr(candidate);
LDKChannelUsage usage_conv;
usage_conv.inner = untag_ptr(usage);
usage_conv.is_owned = ptr_is_owned(usage);
score_params_conv.is_owned = ptr_is_owned(score_params);
CHECK_INNER_FIELD_ACCESS_OR_NULL(score_params_conv);
score_params_conv.is_owned = false;
- int64_t ret_conv = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, short_channel_id, &source_conv, &target_conv, usage_conv, &score_params_conv);
+ int64_t ret_conv = (this_arg_conv->channel_penalty_msat)(this_arg_conv->this_arg, candidate_conv, usage_conv, &score_params_conv);
return ret_conv;
}
FREE(j_calls);
}
}
-void payment_path_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id) {
+void payment_path_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
int64_t short_channel_id_conv = short_channel_id;
- js_invoke_function_void_ll(j_calls->instance_ptr, 17, path_ref, short_channel_id_conv);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_lll(j_calls->instance_ptr, 17, path_ref, short_channel_id_conv, duration_since_epoch_conv);
}
-void payment_path_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path) {
+void payment_path_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
path_var = Path_clone(&path_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 18, path_ref);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_ll(j_calls->instance_ptr, 18, path_ref, duration_since_epoch_conv);
}
-void probe_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id) {
+void probe_failed_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t short_channel_id, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
int64_t short_channel_id_conv = short_channel_id;
- js_invoke_function_void_ll(j_calls->instance_ptr, 19, path_ref, short_channel_id_conv);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_lll(j_calls->instance_ptr, 19, path_ref, short_channel_id_conv, duration_since_epoch_conv);
}
-void probe_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path) {
+void probe_successful_LDKScoreUpdate_jcall(void* this_arg, const LDKPath * path, uint64_t duration_since_epoch) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
LDKPath path_var = *path;
int64_t path_ref = 0;
path_var = Path_clone(&path_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_var);
path_ref = tag_ptr(path_var.inner, path_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 20, path_ref);
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_ll(j_calls->instance_ptr, 20, path_ref, duration_since_epoch_conv);
+}
+void time_passed_LDKScoreUpdate_jcall(void* this_arg, uint64_t duration_since_epoch) {
+ LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) this_arg;
+ int64_t duration_since_epoch_conv = duration_since_epoch;
+ js_invoke_function_void_l(j_calls->instance_ptr, 21, duration_since_epoch_conv);
}
static void LDKScoreUpdate_JCalls_cloned(LDKScoreUpdate* new_obj) {
LDKScoreUpdate_JCalls *j_calls = (LDKScoreUpdate_JCalls*) new_obj->this_arg;
.payment_path_successful = payment_path_successful_LDKScoreUpdate_jcall,
.probe_failed = probe_failed_LDKScoreUpdate_jcall,
.probe_successful = probe_successful_LDKScoreUpdate_jcall,
+ .time_passed = time_passed_LDKScoreUpdate_jcall,
.free = LDKScoreUpdate_JCalls_free,
};
return ret;
*res_ptr = LDKScoreUpdate_init(o);
return tag_ptr(res_ptr, true);
}
-void CS_LDK_ScoreUpdate_payment_path_failed(int64_t this_arg, int64_t path, int64_t short_channel_id) {
+void CS_LDK_ScoreUpdate_payment_path_failed(int64_t this_arg, int64_t path, int64_t short_channel_id, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id);
+ (this_arg_conv->payment_path_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id, duration_since_epoch);
}
-void CS_LDK_ScoreUpdate_payment_path_successful(int64_t this_arg, int64_t path) {
+void CS_LDK_ScoreUpdate_payment_path_successful(int64_t this_arg, int64_t path, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, &path_conv);
+ (this_arg_conv->payment_path_successful)(this_arg_conv->this_arg, &path_conv, duration_since_epoch);
}
-void CS_LDK_ScoreUpdate_probe_failed(int64_t this_arg, int64_t path, int64_t short_channel_id) {
+void CS_LDK_ScoreUpdate_probe_failed(int64_t this_arg, int64_t path, int64_t short_channel_id, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->probe_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id);
+ (this_arg_conv->probe_failed)(this_arg_conv->this_arg, &path_conv, short_channel_id, duration_since_epoch);
}
-void CS_LDK_ScoreUpdate_probe_successful(int64_t this_arg, int64_t path) {
+void CS_LDK_ScoreUpdate_probe_successful(int64_t this_arg, int64_t path, int64_t duration_since_epoch) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
path_conv.is_owned = ptr_is_owned(path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
path_conv.is_owned = false;
- (this_arg_conv->probe_successful)(this_arg_conv->this_arg, &path_conv);
+ (this_arg_conv->probe_successful)(this_arg_conv->this_arg, &path_conv, duration_since_epoch);
+}
+
+void CS_LDK_ScoreUpdate_time_passed(int64_t this_arg, int64_t duration_since_epoch) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKScoreUpdate* this_arg_conv = (LDKScoreUpdate*)this_arg_ptr;
+ (this_arg_conv->time_passed)(this_arg_conv->this_arg, duration_since_epoch);
}
typedef struct LDKLockableScore_JCalls {
}
LDKScoreLookUp read_lock_LDKLockableScore_jcall(const void* this_arg) {
LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 21);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 22);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKScoreLookUp ret_conv = *(LDKScoreLookUp*)(ret_ptr);
}
LDKScoreUpdate write_lock_LDKLockableScore_jcall(const void* this_arg) {
LDKLockableScore_JCalls *j_calls = (LDKLockableScore_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 22);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 23);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKScoreUpdate ret_conv = *(LDKScoreUpdate*)(ret_ptr);
}
LDKCVec_u8Z write_LDKWriteableScore_jcall(const void* this_arg) {
LDKWriteableScore_JCalls *j_calls = (LDKWriteableScore_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 23);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 24);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
return ret_ref;
}
+static inline struct LDKBlindedPayInfo C2Tuple_BlindedPayInfoBlindedPathZ_get_a(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
+ LDKBlindedPayInfo ret = owner->a;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_a(int64_t owner) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
+ LDKBlindedPayInfo ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_a(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKBlindedPath C2Tuple_BlindedPayInfoBlindedPathZ_get_b(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
+ LDKBlindedPath ret = owner->b;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_b(int64_t owner) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
+ LDKBlindedPath ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_b(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_clone(const LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ *orig) {
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ) * orig->datalen, "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ clone bytes"), .datalen = orig->datalen };
+ for (size_t i = 0; i < ret.datalen; i++) {
+ ret.data[i] = C2Tuple_BlindedPayInfoBlindedPathZ_clone(&orig->data[i]);
+ }
+ return ret;
+}
+static inline struct LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_clone(&*owner->contents.result);
+}
+int64_tArray CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* owner_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(owner);
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ ret_var = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(owner_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t l = 0; l < ret_var.datalen; l++) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv_37_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv_37_conv = ret_var.data[l];
+ ret_arr_ptr[l] = tag_ptr(ret_conv_37_conv, true);
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+static inline void CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(int64_t owner) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* owner_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(owner);
+ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(owner_conv);
+}
+
+static inline struct LDKOnionMessagePath CResult_OnionMessagePathNoneZ_get_ok(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
+ LDKOnionMessagePath ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_get_ok(int64_t owner) {
+ LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
+ LDKOnionMessagePath ret_var = CResult_OnionMessagePathNoneZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline void CResult_OnionMessagePathNoneZ_get_err(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_OnionMessagePathNoneZ_get_err(int64_t owner) {
+ LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
+ CResult_OnionMessagePathNoneZ_get_err(owner_conv);
+}
+
+static inline struct LDKCVec_BlindedPathZ CResult_CVec_BlindedPathZNoneZ_get_ok(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return CVec_BlindedPathZ_clone(&*owner->contents.result);
+}
+int64_tArray CS_LDK_CResult_CVec_BlindedPathZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_CVec_BlindedPathZNoneZ* owner_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(owner);
+ LDKCVec_BlindedPathZ ret_var = CResult_CVec_BlindedPathZNoneZ_get_ok(owner_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t n = 0; n < ret_var.datalen; n++) {
+ LDKBlindedPath ret_conv_13_var = ret_var.data[n];
+ int64_t ret_conv_13_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_conv_13_var);
+ ret_conv_13_ref = tag_ptr(ret_conv_13_var.inner, ret_conv_13_var.is_owned);
+ ret_arr_ptr[n] = ret_conv_13_ref;
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+static inline void CResult_CVec_BlindedPathZNoneZ_get_err(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return *owner->contents.err;
+}
+void CS_LDK_CResult_CVec_BlindedPathZNoneZ_get_err(int64_t owner) {
+ LDKCResult_CVec_BlindedPathZNoneZ* owner_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(owner);
+ CResult_CVec_BlindedPathZNoneZ_get_err(owner_conv);
+}
+
static inline struct LDKInFlightHtlcs CResult_InFlightHtlcsDecodeErrorZ_get_ok(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR owner){
LDKInFlightHtlcs ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
-static inline struct LDKBlindedPayInfo C2Tuple_BlindedPayInfoBlindedPathZ_get_a(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
- LDKBlindedPayInfo ret = owner->a;
- ret.is_owned = false;
- return ret;
-}
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_a(int64_t owner) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
- LDKBlindedPayInfo ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_a(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
-}
-
-static inline struct LDKBlindedPath C2Tuple_BlindedPayInfoBlindedPathZ_get_b(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner){
- LDKBlindedPath ret = owner->b;
- ret.is_owned = false;
- return ret;
-}
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_b(int64_t owner) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* owner_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(owner);
- LDKBlindedPath ret_var = C2Tuple_BlindedPayInfoBlindedPathZ_get_b(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
-}
-
-static inline LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_clone(const LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ *orig) {
- LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ) * orig->datalen, "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ clone bytes"), .datalen = orig->datalen };
- for (size_t i = 0; i < ret.datalen; i++) {
- ret.data[i] = C2Tuple_BlindedPayInfoBlindedPathZ_clone(&orig->data[i]);
- }
- return ret;
-}
static inline LDKCVec_RouteHintZ CVec_RouteHintZ_clone(const LDKCVec_RouteHintZ *orig) {
LDKCVec_RouteHintZ ret = { .data = MALLOC(sizeof(LDKRouteHint) * orig->datalen, "LDKCVec_RouteHintZ clone bytes"), .datalen = orig->datalen };
for (size_t i = 0; i < ret.datalen; i++) {
FREE(j_calls);
}
}
-void log_LDKLogger_jcall(const void* this_arg, const LDKRecord * record) {
+void log_LDKLogger_jcall(const void* this_arg, LDKRecord record) {
LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) this_arg;
- LDKRecord record_var = *record;
+ LDKRecord record_var = record;
int64_t record_ref = 0;
- record_var = Record_clone(&record_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(record_var);
record_ref = tag_ptr(record_var.inner, record_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 24, record_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 25, record_ref);
}
static void LDKLogger_JCalls_cloned(LDKLogger* new_obj) {
LDKLogger_JCalls *j_calls = (LDKLogger_JCalls*) new_obj->this_arg;
}
return ret;
}
-static inline struct LDKThirtyTwoBytes C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
+static inline struct LDKThirtyTwoBytes C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
return ThirtyTwoBytes_clone(&owner->a);
}
-int8_tArray CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(int64_t owner) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* owner_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(owner);
+int8_tArray CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(owner);
int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
- memcpy(ret_arr->elems, C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(owner_conv).data, 32);
+ memcpy(ret_arr->elems, C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(owner_conv).data, 32);
return ret_arr;
}
-static inline struct LDKCOption_ThirtyTwoBytesZ C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
- return COption_ThirtyTwoBytesZ_clone(&owner->b);
+static inline uint32_t C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
+ return owner->b;
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(int64_t owner) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* owner_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(owner);
+int32_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(owner);
+ int32_t ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(owner_conv);
+ return ret_conv;
+}
+
+static inline struct LDKCOption_ThirtyTwoBytesZ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner){
+ return COption_ThirtyTwoBytesZ_clone(&owner->c);
+}
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(owner);
LDKCOption_ThirtyTwoBytesZ *ret_copy = MALLOC(sizeof(LDKCOption_ThirtyTwoBytesZ), "LDKCOption_ThirtyTwoBytesZ");
- *ret_copy = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(owner_conv);
+ *ret_copy = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(owner_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
-static inline LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_clone(const LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ *orig) {
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ) * orig->datalen, "LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ clone bytes"), .datalen = orig->datalen };
+static inline LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_clone(const LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ *orig) {
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret = { .data = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ) * orig->datalen, "LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ clone bytes"), .datalen = orig->datalen };
for (size_t i = 0; i < ret.datalen; i++) {
- ret.data[i] = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(&orig->data[i]);
+ ret.data[i] = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(&orig->data[i]);
}
return ret;
}
int8_tArray chain_hash_arr = init_int8_tArray(32, __LINE__);
memcpy(chain_hash_arr->elems, *chain_hash, 32);
int64_t short_channel_id_conv = short_channel_id;
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 25, (int64_t)chain_hash_arr, short_channel_id_conv);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 26, (int64_t)chain_hash_arr, short_channel_id_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKUtxoResult ret_conv = *(LDKUtxoResult*)(ret_ptr);
case LDKMessageSendEvent_SendOpenChannelV2: return 3;
case LDKMessageSendEvent_SendFundingCreated: return 4;
case LDKMessageSendEvent_SendFundingSigned: return 5;
- case LDKMessageSendEvent_SendTxAddInput: return 6;
- case LDKMessageSendEvent_SendTxAddOutput: return 7;
- case LDKMessageSendEvent_SendTxRemoveInput: return 8;
- case LDKMessageSendEvent_SendTxRemoveOutput: return 9;
- case LDKMessageSendEvent_SendTxComplete: return 10;
- case LDKMessageSendEvent_SendTxSignatures: return 11;
- case LDKMessageSendEvent_SendTxInitRbf: return 12;
- case LDKMessageSendEvent_SendTxAckRbf: return 13;
- case LDKMessageSendEvent_SendTxAbort: return 14;
- case LDKMessageSendEvent_SendChannelReady: return 15;
- case LDKMessageSendEvent_SendAnnouncementSignatures: return 16;
- case LDKMessageSendEvent_UpdateHTLCs: return 17;
- case LDKMessageSendEvent_SendRevokeAndACK: return 18;
- case LDKMessageSendEvent_SendClosingSigned: return 19;
- case LDKMessageSendEvent_SendShutdown: return 20;
- case LDKMessageSendEvent_SendChannelReestablish: return 21;
- case LDKMessageSendEvent_SendChannelAnnouncement: return 22;
- case LDKMessageSendEvent_BroadcastChannelAnnouncement: return 23;
- case LDKMessageSendEvent_BroadcastChannelUpdate: return 24;
- case LDKMessageSendEvent_BroadcastNodeAnnouncement: return 25;
- case LDKMessageSendEvent_SendChannelUpdate: return 26;
- case LDKMessageSendEvent_HandleError: return 27;
- case LDKMessageSendEvent_SendChannelRangeQuery: return 28;
- case LDKMessageSendEvent_SendShortIdsQuery: return 29;
- case LDKMessageSendEvent_SendReplyChannelRange: return 30;
- case LDKMessageSendEvent_SendGossipTimestampFilter: return 31;
+ case LDKMessageSendEvent_SendStfu: return 6;
+ case LDKMessageSendEvent_SendSplice: return 7;
+ case LDKMessageSendEvent_SendSpliceAck: return 8;
+ case LDKMessageSendEvent_SendSpliceLocked: return 9;
+ case LDKMessageSendEvent_SendTxAddInput: return 10;
+ case LDKMessageSendEvent_SendTxAddOutput: return 11;
+ case LDKMessageSendEvent_SendTxRemoveInput: return 12;
+ case LDKMessageSendEvent_SendTxRemoveOutput: return 13;
+ case LDKMessageSendEvent_SendTxComplete: return 14;
+ case LDKMessageSendEvent_SendTxSignatures: return 15;
+ case LDKMessageSendEvent_SendTxInitRbf: return 16;
+ case LDKMessageSendEvent_SendTxAckRbf: return 17;
+ case LDKMessageSendEvent_SendTxAbort: return 18;
+ case LDKMessageSendEvent_SendChannelReady: return 19;
+ case LDKMessageSendEvent_SendAnnouncementSignatures: return 20;
+ case LDKMessageSendEvent_UpdateHTLCs: return 21;
+ case LDKMessageSendEvent_SendRevokeAndACK: return 22;
+ case LDKMessageSendEvent_SendClosingSigned: return 23;
+ case LDKMessageSendEvent_SendShutdown: return 24;
+ case LDKMessageSendEvent_SendChannelReestablish: return 25;
+ case LDKMessageSendEvent_SendChannelAnnouncement: return 26;
+ case LDKMessageSendEvent_BroadcastChannelAnnouncement: return 27;
+ case LDKMessageSendEvent_BroadcastChannelUpdate: return 28;
+ case LDKMessageSendEvent_BroadcastNodeAnnouncement: return 29;
+ case LDKMessageSendEvent_SendChannelUpdate: return 30;
+ case LDKMessageSendEvent_HandleError: return 31;
+ case LDKMessageSendEvent_SendChannelRangeQuery: return 32;
+ case LDKMessageSendEvent_SendShortIdsQuery: return 33;
+ case LDKMessageSendEvent_SendReplyChannelRange: return 34;
+ case LDKMessageSendEvent_SendGossipTimestampFilter: return 35;
default: abort();
}
}
msg_ref = tag_ptr(msg_var.inner, false);
return msg_ref;
}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendStfu_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendStfu);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_stfu.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendStfu_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendStfu);
+ LDKStfu msg_var = obj->send_stfu.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendSplice_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSplice);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_splice.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendSplice_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSplice);
+ LDKSplice msg_var = obj->send_splice.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendSpliceAck_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceAck);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_splice_ack.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendSpliceAck_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceAck);
+ LDKSpliceAck msg_var = obj->send_splice_ack.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
+int8_tArray CS_LDK_LDKMessageSendEvent_SendSpliceLocked_get_node_id(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceLocked);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->send_splice_locked.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_t CS_LDK_LDKMessageSendEvent_SendSpliceLocked_get_msg(int64_t ptr) {
+ LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKMessageSendEvent_SendSpliceLocked);
+ LDKSpliceLocked msg_var = obj->send_splice_locked.msg;
+ int64_t msg_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, false);
+ return msg_ref;
+}
int8_tArray CS_LDK_LDKMessageSendEvent_SendTxAddInput_get_node_id(int64_t ptr) {
LDKMessageSendEvent *obj = (LDKMessageSendEvent*)untag_ptr(ptr);
CHECK(obj->tag == LDKMessageSendEvent_SendTxAddInput);
return some_arr;
}
+static inline struct LDKPendingHTLCInfo CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR owner){
+ LDKPendingHTLCInfo ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(int64_t owner) {
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* owner_conv = (LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)untag_ptr(owner);
+ LDKPendingHTLCInfo ret_var = CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKInboundHTLCErr CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR owner){
+ LDKInboundHTLCErr ret = *owner->contents.err;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(int64_t owner) {
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* owner_conv = (LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)untag_ptr(owner);
+ LDKInboundHTLCErr ret_var = CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
static inline LDKCVec_HTLCOutputInCommitmentZ CVec_HTLCOutputInCommitmentZ_clone(const LDKCVec_HTLCOutputInCommitmentZ *orig) {
LDKCVec_HTLCOutputInCommitmentZ ret = { .data = MALLOC(sizeof(LDKHTLCOutputInCommitment) * orig->datalen, "LDKCVec_HTLCOutputInCommitmentZ clone bytes"), .datalen = orig->datalen };
for (size_t i = 0; i < ret.datalen; i++) {
return ret_ref;
}
+static inline struct LDKBlindedForward CResult_BlindedForwardDecodeErrorZ_get_ok(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR owner){
+ LDKBlindedForward ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_BlindedForwardDecodeErrorZ* owner_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(owner);
+ LDKBlindedForward ret_var = CResult_BlindedForwardDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_BlindedForwardDecodeErrorZ_get_err(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_BlindedForwardDecodeErrorZ* owner_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_BlindedForwardDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+uint32_t CS_LDK_LDKPendingHTLCRouting_ty_from_ptr(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ switch(obj->tag) {
+ case LDKPendingHTLCRouting_Forward: return 0;
+ case LDKPendingHTLCRouting_Receive: return 1;
+ case LDKPendingHTLCRouting_ReceiveKeysend: return 2;
+ default: abort();
+ }
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Forward_get_onion_packet(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Forward);
+ LDKOnionPacket onion_packet_var = obj->forward.onion_packet;
+ int64_t onion_packet_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(onion_packet_var);
+ onion_packet_ref = tag_ptr(onion_packet_var.inner, false);
+ return onion_packet_ref;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Forward_get_short_channel_id(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Forward);
+ int64_t short_channel_id_conv = obj->forward.short_channel_id;
+ return short_channel_id_conv;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Forward_get_blinded(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Forward);
+ LDKBlindedForward blinded_var = obj->forward.blinded;
+ int64_t blinded_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(blinded_var);
+ blinded_ref = tag_ptr(blinded_var.inner, false);
+ return blinded_ref;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Receive_get_payment_data(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ LDKFinalOnionHopData payment_data_var = obj->receive.payment_data;
+ int64_t payment_data_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_var);
+ payment_data_ref = tag_ptr(payment_data_var.inner, false);
+ return payment_data_ref;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_Receive_get_payment_metadata(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ int64_t payment_metadata_ref = tag_ptr(&obj->receive.payment_metadata, false);
+ return payment_metadata_ref;
+}
+int32_t CS_LDK_LDKPendingHTLCRouting_Receive_get_incoming_cltv_expiry(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ int32_t incoming_cltv_expiry_conv = obj->receive.incoming_cltv_expiry;
+ return incoming_cltv_expiry_conv;
+}
+int8_tArray CS_LDK_LDKPendingHTLCRouting_Receive_get_phantom_shared_secret(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ int8_tArray phantom_shared_secret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(phantom_shared_secret_arr->elems, obj->receive.phantom_shared_secret.data, 32);
+ return phantom_shared_secret_arr;
+}
+int64_tArray CS_LDK_LDKPendingHTLCRouting_Receive_get_custom_tlvs(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_var = obj->receive.custom_tlvs;
+ int64_tArray custom_tlvs_arr = NULL;
+ custom_tlvs_arr = init_int64_tArray(custom_tlvs_var.datalen, __LINE__);
+ int64_t *custom_tlvs_arr_ptr = (int64_t*)(((uint8_t*)custom_tlvs_arr) + 8);
+ for (size_t x = 0; x < custom_tlvs_var.datalen; x++) {
+ LDKC2Tuple_u64CVec_u8ZZ* custom_tlvs_conv_23_conv = MALLOC(sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKC2Tuple_u64CVec_u8ZZ");
+ *custom_tlvs_conv_23_conv = custom_tlvs_var.data[x];
+ *custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone(custom_tlvs_conv_23_conv);
+ custom_tlvs_arr_ptr[x] = tag_ptr(custom_tlvs_conv_23_conv, true);
+ }
+
+ return custom_tlvs_arr;
+}
+jboolean CS_LDK_LDKPendingHTLCRouting_Receive_get_requires_blinded_error(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_Receive);
+ jboolean requires_blinded_error_conv = obj->receive.requires_blinded_error;
+ return requires_blinded_error_conv;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_data(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ LDKFinalOnionHopData payment_data_var = obj->receive_keysend.payment_data;
+ int64_t payment_data_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_var);
+ payment_data_ref = tag_ptr(payment_data_var.inner, false);
+ return payment_data_ref;
+}
+int8_tArray CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_preimage(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ int8_tArray payment_preimage_arr = init_int8_tArray(32, __LINE__);
+ memcpy(payment_preimage_arr->elems, obj->receive_keysend.payment_preimage.data, 32);
+ return payment_preimage_arr;
+}
+int64_t CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_metadata(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ int64_t payment_metadata_ref = tag_ptr(&obj->receive_keysend.payment_metadata, false);
+ return payment_metadata_ref;
+}
+int32_t CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_incoming_cltv_expiry(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ int32_t incoming_cltv_expiry_conv = obj->receive_keysend.incoming_cltv_expiry;
+ return incoming_cltv_expiry_conv;
+}
+int64_tArray CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_custom_tlvs(int64_t ptr) {
+ LDKPendingHTLCRouting *obj = (LDKPendingHTLCRouting*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKPendingHTLCRouting_ReceiveKeysend);
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_var = obj->receive_keysend.custom_tlvs;
+ int64_tArray custom_tlvs_arr = NULL;
+ custom_tlvs_arr = init_int64_tArray(custom_tlvs_var.datalen, __LINE__);
+ int64_t *custom_tlvs_arr_ptr = (int64_t*)(((uint8_t*)custom_tlvs_arr) + 8);
+ for (size_t x = 0; x < custom_tlvs_var.datalen; x++) {
+ LDKC2Tuple_u64CVec_u8ZZ* custom_tlvs_conv_23_conv = MALLOC(sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKC2Tuple_u64CVec_u8ZZ");
+ *custom_tlvs_conv_23_conv = custom_tlvs_var.data[x];
+ *custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone(custom_tlvs_conv_23_conv);
+ custom_tlvs_arr_ptr[x] = tag_ptr(custom_tlvs_conv_23_conv, true);
+ }
+
+ return custom_tlvs_arr;
+}
+static inline struct LDKPendingHTLCRouting CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return PendingHTLCRouting_clone(&*owner->contents.result);
+}
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(owner);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_PendingHTLCRoutingDecodeErrorZ_get_err(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_PendingHTLCRoutingDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKPendingHTLCInfo CResult_PendingHTLCInfoDecodeErrorZ_get_ok(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR owner){
+ LDKPendingHTLCInfo ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(owner);
+ LDKPendingHTLCInfo ret_var = CResult_PendingHTLCInfoDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_PendingHTLCInfoDecodeErrorZ_get_err(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* owner_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_PendingHTLCInfoDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline enum LDKBlindedFailure CResult_BlindedFailureDecodeErrorZ_get_ok(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR owner){
+CHECK(owner->result_ok);
+ return BlindedFailure_clone(&*owner->contents.result);
+}
+int32_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_BlindedFailureDecodeErrorZ* owner_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(owner);
+ int32_t ret_conv = LDKBlindedFailure_to_cs(CResult_BlindedFailureDecodeErrorZ_get_ok(owner_conv));
+ return ret_conv;
+}
+
+static inline struct LDKDecodeError CResult_BlindedFailureDecodeErrorZ_get_err(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_BlindedFailureDecodeErrorZ* owner_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_BlindedFailureDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline enum LDKChannelShutdownState CResult_ChannelShutdownStateDecodeErrorZ_get_ok(LDKCResult_ChannelShutdownStateDecodeErrorZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
return ChannelShutdownState_clone(&*owner->contents.result);
int64_t monitor_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(monitor_var);
monitor_ref = tag_ptr(monitor_var.inner, monitor_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 26, funding_txo_ref, monitor_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 27, funding_txo_ref, monitor_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ChannelMonitorUpdateStatusNoneZ ret_conv = *(LDKCResult_ChannelMonitorUpdateStatusNoneZ*)(ret_ptr);
update_var = ChannelMonitorUpdate_clone(&update_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(update_var);
update_ref = tag_ptr(update_var.inner, update_var.is_owned);
- uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_ll(j_calls->instance_ptr, 27, funding_txo_ref, update_ref);
+ uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_ll(j_calls->instance_ptr, 28, funding_txo_ref, update_ref);
LDKChannelMonitorUpdateStatus ret_conv = LDKChannelMonitorUpdateStatus_from_cs(ret);
return ret_conv;
}
LDKCVec_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZZ release_pending_monitor_events_LDKWatch_jcall(const void* this_arg) {
LDKWatch_JCalls *j_calls = (LDKWatch_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 28);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 29);
LDKCVec_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
}
FREE(txs_var.data);
- js_invoke_function_void_l(j_calls->instance_ptr, 29, (int64_t)txs_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 30, (int64_t)txs_arr);
}
static void LDKBroadcasterInterface_JCalls_cloned(LDKBroadcasterInterface* new_obj) {
LDKBroadcasterInterface_JCalls *j_calls = (LDKBroadcasterInterface_JCalls*) new_obj->this_arg;
}
LDKThirtyTwoBytes get_secure_random_bytes_LDKEntropySource_jcall(const void* this_arg) {
LDKEntropySource_JCalls *j_calls = (LDKEntropySource_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 30);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 31);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
}
LDKThirtyTwoBytes get_inbound_payment_key_material_LDKNodeSigner_jcall(const void* this_arg) {
LDKNodeSigner_JCalls *j_calls = (LDKNodeSigner_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 31);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 32);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
LDKCResult_PublicKeyNoneZ get_node_id_LDKNodeSigner_jcall(const void* this_arg, LDKRecipient recipient) {
LDKNodeSigner_JCalls *j_calls = (LDKNodeSigner_JCalls*) this_arg;
int32_t recipient_conv = LDKRecipient_to_cs(recipient);
- uint64_t ret = js_invoke_function_l_Recipient(j_calls->instance_ptr, 32, recipient_conv);
+ uint64_t ret = js_invoke_function_l_Recipient(j_calls->instance_ptr, 33, recipient_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_PublicKeyNoneZ ret_conv = *(LDKCResult_PublicKeyNoneZ*)(ret_ptr);
LDKCOption_BigEndianScalarZ *tweak_copy = MALLOC(sizeof(LDKCOption_BigEndianScalarZ), "LDKCOption_BigEndianScalarZ");
*tweak_copy = tweak;
int64_t tweak_ref = tag_ptr(tweak_copy, true);
- uint64_t ret = js_invoke_function_l_Recipientll(j_calls->instance_ptr, 33, recipient_conv, (int64_t)other_key_arr, tweak_ref);
+ uint64_t ret = js_invoke_function_l_Recipientll(j_calls->instance_ptr, 34, recipient_conv, (int64_t)other_key_arr, tweak_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ThirtyTwoBytesNoneZ ret_conv = *(LDKCResult_ThirtyTwoBytesNoneZ*)(ret_ptr);
FREE(invoice_data_var.data);
int32_t recipient_conv = LDKRecipient_to_cs(recipient);
- uint64_t ret = js_invoke_function_l_llRecipient(j_calls->instance_ptr, 34, (int64_t)hrp_bytes_arr, (int64_t)invoice_data_arr, recipient_conv);
+ uint64_t ret = js_invoke_function_l_llRecipient(j_calls->instance_ptr, 35, (int64_t)hrp_bytes_arr, (int64_t)invoice_data_arr, recipient_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_RecoverableSignatureNoneZ ret_conv = *(LDKCResult_RecoverableSignatureNoneZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKUnsignedInvoiceRequest
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_request_var);
invoice_request_ref = tag_ptr(invoice_request_var.inner, invoice_request_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 35, invoice_request_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 36, invoice_request_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_SchnorrSignatureNoneZ ret_conv = *(LDKCResult_SchnorrSignatureNoneZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKUnsignedBolt12Invoice
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_var);
invoice_ref = tag_ptr(invoice_var.inner, invoice_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 36, invoice_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 37, invoice_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_SchnorrSignatureNoneZ ret_conv = *(LDKCResult_SchnorrSignatureNoneZ*)(ret_ptr);
LDKUnsignedGossipMessage *msg_copy = MALLOC(sizeof(LDKUnsignedGossipMessage), "LDKUnsignedGossipMessage");
*msg_copy = msg;
int64_t msg_ref = tag_ptr(msg_copy, true);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 37, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 38, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ECDSASignatureNoneZ ret_conv = *(LDKCResult_ECDSASignatureNoneZ*)(ret_ptr);
int64_t channel_value_satoshis_conv = channel_value_satoshis;
int8_tArray user_channel_id_arr = init_int8_tArray(16, __LINE__);
memcpy(user_channel_id_arr->elems, user_channel_id.le_bytes, 16);
- int8_tArray ret = (int8_tArray)js_invoke_function_l_bll(j_calls->instance_ptr, 38, inbound_conv, channel_value_satoshis_conv, (int64_t)user_channel_id_arr);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_bll(j_calls->instance_ptr, 39, inbound_conv, channel_value_satoshis_conv, (int64_t)user_channel_id_arr);
LDKThirtyTwoBytes ret_ref;
CHECK(ret->arr_len == 32);
memcpy(ret_ref.data, ret->elems, 32); FREE(ret);
int64_t channel_value_satoshis_conv = channel_value_satoshis;
int8_tArray channel_keys_id_arr = init_int8_tArray(32, __LINE__);
memcpy(channel_keys_id_arr->elems, channel_keys_id.data, 32);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 39, channel_value_satoshis_conv, (int64_t)channel_keys_id_arr);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 40, channel_value_satoshis_conv, (int64_t)channel_keys_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKWriteableEcdsaChannelSigner ret_conv = *(LDKWriteableEcdsaChannelSigner*)(ret_ptr);
LDKu8slice reader_var = reader;
int8_tArray reader_arr = init_int8_tArray(reader_var.datalen, __LINE__);
memcpy(reader_arr->elems, reader_var.data, reader_var.datalen);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 40, (int64_t)reader_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 41, (int64_t)reader_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ ret_conv = *(LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_CVec_u8ZNoneZ get_destination_script_LDKSignerProvider_jcall(const void* this_arg) {
+LDKCResult_CVec_u8ZNoneZ get_destination_script_LDKSignerProvider_jcall(const void* this_arg, LDKThirtyTwoBytes channel_keys_id) {
LDKSignerProvider_JCalls *j_calls = (LDKSignerProvider_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 41);
+ int8_tArray channel_keys_id_arr = init_int8_tArray(32, __LINE__);
+ memcpy(channel_keys_id_arr->elems, channel_keys_id.data, 32);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 42, (int64_t)channel_keys_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_u8ZNoneZ ret_conv = *(LDKCResult_CVec_u8ZNoneZ*)(ret_ptr);
}
LDKCResult_ShutdownScriptNoneZ get_shutdown_scriptpubkey_LDKSignerProvider_jcall(const void* this_arg) {
LDKSignerProvider_JCalls *j_calls = (LDKSignerProvider_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 42);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 43);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_ShutdownScriptNoneZ ret_conv = *(LDKCResult_ShutdownScriptNoneZ*)(ret_ptr);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_SignerProvider_get_destination_script(int64_t this_arg) {
+int64_t CS_LDK_SignerProvider_get_destination_script(int64_t this_arg, int8_tArray channel_keys_id) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKSignerProvider* this_arg_conv = (LDKSignerProvider*)this_arg_ptr;
+ LDKThirtyTwoBytes channel_keys_id_ref;
+ CHECK(channel_keys_id->arr_len == 32);
+ memcpy(channel_keys_id_ref.data, channel_keys_id->elems, 32); FREE(channel_keys_id);
LDKCResult_CVec_u8ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_u8ZNoneZ), "LDKCResult_CVec_u8ZNoneZ");
- *ret_conv = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg);
+ *ret_conv = (this_arg_conv->get_destination_script)(this_arg_conv->this_arg, channel_keys_id_ref);
return tag_ptr(ret_conv, true);
}
uint32_t get_est_sat_per_1000_weight_LDKFeeEstimator_jcall(const void* this_arg, LDKConfirmationTarget confirmation_target) {
LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) this_arg;
int32_t confirmation_target_conv = LDKConfirmationTarget_to_cs(confirmation_target);
- return js_invoke_function_i_ConfirmationTarget(j_calls->instance_ptr, 43, confirmation_target_conv);
+ return js_invoke_function_i_ConfirmationTarget(j_calls->instance_ptr, 44, confirmation_target_conv);
}
static void LDKFeeEstimator_JCalls_cloned(LDKFeeEstimator* new_obj) {
LDKFeeEstimator_JCalls *j_calls = (LDKFeeEstimator_JCalls*) new_obj->this_arg;
return ret_conv;
}
+typedef struct LDKMessageRouter_JCalls {
+ atomic_size_t refcnt;
+ uint32_t instance_ptr;
+} LDKMessageRouter_JCalls;
+static void LDKMessageRouter_JCalls_free(void* this_arg) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
+ if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) {
+ FREE(j_calls);
+ }
+}
+LDKCResult_OnionMessagePathNoneZ find_path_LDKMessageRouter_jcall(const void* this_arg, LDKPublicKey sender, LDKCVec_PublicKeyZ peers, LDKDestination destination) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
+ int8_tArray sender_arr = init_int8_tArray(33, __LINE__);
+ memcpy(sender_arr->elems, sender.compressed_form, 33);
+ LDKCVec_PublicKeyZ peers_var = peers;
+ ptrArray peers_arr = NULL;
+ peers_arr = init_ptrArray(peers_var.datalen, __LINE__);
+ int8_tArray *peers_arr_ptr = (int8_tArray*)(((uint8_t*)peers_arr) + 8);
+ for (size_t i = 0; i < peers_var.datalen; i++) {
+ int8_tArray peers_conv_8_arr = init_int8_tArray(33, __LINE__);
+ memcpy(peers_conv_8_arr->elems, peers_var.data[i].compressed_form, 33);
+ peers_arr_ptr[i] = peers_conv_8_arr;
+ }
+
+ FREE(peers_var.data);
+ LDKDestination *destination_copy = MALLOC(sizeof(LDKDestination), "LDKDestination");
+ *destination_copy = destination;
+ int64_t destination_ref = tag_ptr(destination_copy, true);
+ uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 45, (int64_t)sender_arr, (int64_t)peers_arr, destination_ref);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_OnionMessagePathNoneZ ret_conv = *(LDKCResult_OnionMessagePathNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
+LDKCResult_CVec_BlindedPathZNoneZ create_blinded_paths_LDKMessageRouter_jcall(const void* this_arg, LDKPublicKey recipient, LDKCVec_PublicKeyZ peers) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
+ int8_tArray recipient_arr = init_int8_tArray(33, __LINE__);
+ memcpy(recipient_arr->elems, recipient.compressed_form, 33);
+ LDKCVec_PublicKeyZ peers_var = peers;
+ ptrArray peers_arr = NULL;
+ peers_arr = init_ptrArray(peers_var.datalen, __LINE__);
+ int8_tArray *peers_arr_ptr = (int8_tArray*)(((uint8_t*)peers_arr) + 8);
+ for (size_t i = 0; i < peers_var.datalen; i++) {
+ int8_tArray peers_conv_8_arr = init_int8_tArray(33, __LINE__);
+ memcpy(peers_conv_8_arr->elems, peers_var.data[i].compressed_form, 33);
+ peers_arr_ptr[i] = peers_conv_8_arr;
+ }
+
+ FREE(peers_var.data);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 46, (int64_t)recipient_arr, (int64_t)peers_arr);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_CVec_BlindedPathZNoneZ ret_conv = *(LDKCResult_CVec_BlindedPathZNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
+static void LDKMessageRouter_JCalls_cloned(LDKMessageRouter* new_obj) {
+ LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) new_obj->this_arg;
+ atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
+}
+static inline LDKMessageRouter LDKMessageRouter_init (int64_t o) {
+ LDKMessageRouter_JCalls *calls = MALLOC(sizeof(LDKMessageRouter_JCalls), "LDKMessageRouter_JCalls");
+ atomic_init(&calls->refcnt, 1);
+ calls->instance_ptr = o;
+
+ LDKMessageRouter ret = {
+ .this_arg = (void*) calls,
+ .find_path = find_path_LDKMessageRouter_jcall,
+ .create_blinded_paths = create_blinded_paths_LDKMessageRouter_jcall,
+ .free = LDKMessageRouter_JCalls_free,
+ };
+ return ret;
+}
+uint64_t CS_LDK_LDKMessageRouter_new(int32_t o) {
+ LDKMessageRouter *res_ptr = MALLOC(sizeof(LDKMessageRouter), "LDKMessageRouter");
+ *res_ptr = LDKMessageRouter_init(o);
+ return tag_ptr(res_ptr, true);
+}
+int64_t CS_LDK_MessageRouter_find_path(int64_t this_arg, int8_tArray sender, ptrArray peers, int64_t destination) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKMessageRouter* this_arg_conv = (LDKMessageRouter*)this_arg_ptr;
+ LDKPublicKey sender_ref;
+ CHECK(sender->arr_len == 33);
+ memcpy(sender_ref.compressed_form, sender->elems, 33); FREE(sender);
+ LDKCVec_PublicKeyZ peers_constr;
+ peers_constr.datalen = peers->arr_len;
+ if (peers_constr.datalen > 0)
+ peers_constr.data = MALLOC(peers_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
+ else
+ peers_constr.data = NULL;
+ int8_tArray* peers_vals = (void*) peers->elems;
+ for (size_t i = 0; i < peers_constr.datalen; i++) {
+ int8_tArray peers_conv_8 = peers_vals[i];
+ LDKPublicKey peers_conv_8_ref;
+ CHECK(peers_conv_8->arr_len == 33);
+ memcpy(peers_conv_8_ref.compressed_form, peers_conv_8->elems, 33); FREE(peers_conv_8);
+ peers_constr.data[i] = peers_conv_8_ref;
+ }
+ FREE(peers);
+ void* destination_ptr = untag_ptr(destination);
+ CHECK_ACCESS(destination_ptr);
+ LDKDestination destination_conv = *(LDKDestination*)(destination_ptr);
+ destination_conv = Destination_clone((LDKDestination*)untag_ptr(destination));
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = (this_arg_conv->find_path)(this_arg_conv->this_arg, sender_ref, peers_constr, destination_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_MessageRouter_create_blinded_paths(int64_t this_arg, int8_tArray recipient, ptrArray peers) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKMessageRouter* this_arg_conv = (LDKMessageRouter*)this_arg_ptr;
+ LDKPublicKey recipient_ref;
+ CHECK(recipient->arr_len == 33);
+ memcpy(recipient_ref.compressed_form, recipient->elems, 33); FREE(recipient);
+ LDKCVec_PublicKeyZ peers_constr;
+ peers_constr.datalen = peers->arr_len;
+ if (peers_constr.datalen > 0)
+ peers_constr.data = MALLOC(peers_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
+ else
+ peers_constr.data = NULL;
+ int8_tArray* peers_vals = (void*) peers->elems;
+ for (size_t i = 0; i < peers_constr.datalen; i++) {
+ int8_tArray peers_conv_8 = peers_vals[i];
+ LDKPublicKey peers_conv_8_ref;
+ CHECK(peers_conv_8->arr_len == 33);
+ memcpy(peers_conv_8_ref.compressed_form, peers_conv_8->elems, 33); FREE(peers_conv_8);
+ peers_constr.data[i] = peers_conv_8_ref;
+ }
+ FREE(peers);
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = (this_arg_conv->create_blinded_paths)(this_arg_conv->this_arg, recipient_ref, peers_constr);
+ return tag_ptr(ret_conv, true);
+}
+
typedef struct LDKRouter_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
+ LDKMessageRouter_JCalls* MessageRouter;
} LDKRouter_JCalls;
static void LDKRouter_JCalls_free(void* this_arg) {
LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg;
int64_t inflight_htlcs_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(inflight_htlcs_var);
inflight_htlcs_ref = tag_ptr(inflight_htlcs_var.inner, inflight_htlcs_var.is_owned);
- uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 44, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref);
+ uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 47, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_RouteLightningErrorZ ret_conv = *(LDKCResult_RouteLightningErrorZ*)(ret_ptr);
memcpy(_payment_hash_arr->elems, _payment_hash.data, 32);
int8_tArray _payment_id_arr = init_int8_tArray(32, __LINE__);
memcpy(_payment_id_arr->elems, _payment_id.data, 32);
- uint64_t ret = js_invoke_function_l_llllll(j_calls->instance_ptr, 45, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref, (int64_t)_payment_hash_arr, (int64_t)_payment_id_arr);
+ uint64_t ret = js_invoke_function_l_llllll(j_calls->instance_ptr, 48, (int64_t)payer_arr, route_params_ref, (int64_t)first_hops_arr, inflight_htlcs_ref, (int64_t)_payment_hash_arr, (int64_t)_payment_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_RouteLightningErrorZ ret_conv = *(LDKCResult_RouteLightningErrorZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
+LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ create_blinded_payment_paths_LDKRouter_jcall(const void* this_arg, LDKPublicKey recipient, LDKCVec_ChannelDetailsZ first_hops, LDKReceiveTlvs tlvs, uint64_t amount_msats) {
+ LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) this_arg;
+ int8_tArray recipient_arr = init_int8_tArray(33, __LINE__);
+ memcpy(recipient_arr->elems, recipient.compressed_form, 33);
+ LDKCVec_ChannelDetailsZ first_hops_var = first_hops;
+ int64_tArray first_hops_arr = NULL;
+ first_hops_arr = init_int64_tArray(first_hops_var.datalen, __LINE__);
+ int64_t *first_hops_arr_ptr = (int64_t*)(((uint8_t*)first_hops_arr) + 8);
+ for (size_t q = 0; q < first_hops_var.datalen; q++) {
+ LDKChannelDetails first_hops_conv_16_var = first_hops_var.data[q];
+ int64_t first_hops_conv_16_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_var);
+ first_hops_conv_16_ref = tag_ptr(first_hops_conv_16_var.inner, first_hops_conv_16_var.is_owned);
+ first_hops_arr_ptr[q] = first_hops_conv_16_ref;
+ }
+
+ FREE(first_hops_var.data);
+ LDKReceiveTlvs tlvs_var = tlvs;
+ int64_t tlvs_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(tlvs_var);
+ tlvs_ref = tag_ptr(tlvs_var.inner, tlvs_var.is_owned);
+ int64_t amount_msats_conv = amount_msats;
+ uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 49, (int64_t)recipient_arr, (int64_t)first_hops_arr, tlvs_ref, amount_msats_conv);
+ void* ret_ptr = untag_ptr(ret);
+ CHECK_ACCESS(ret_ptr);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret_conv = *(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)(ret_ptr);
+ FREE(untag_ptr(ret));
+ return ret_conv;
+}
static void LDKRouter_JCalls_cloned(LDKRouter* new_obj) {
LDKRouter_JCalls *j_calls = (LDKRouter_JCalls*) new_obj->this_arg;
atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
+ atomic_fetch_add_explicit(&j_calls->MessageRouter->refcnt, 1, memory_order_release);
}
-static inline LDKRouter LDKRouter_init (int64_t o) {
+static inline LDKRouter LDKRouter_init (int64_t o, int64_t MessageRouter) {
LDKRouter_JCalls *calls = MALLOC(sizeof(LDKRouter_JCalls), "LDKRouter_JCalls");
atomic_init(&calls->refcnt, 1);
calls->instance_ptr = o;
.this_arg = (void*) calls,
.find_route = find_route_LDKRouter_jcall,
.find_route_with_id = find_route_with_id_LDKRouter_jcall,
+ .create_blinded_payment_paths = create_blinded_payment_paths_LDKRouter_jcall,
.free = LDKRouter_JCalls_free,
+ .MessageRouter = LDKMessageRouter_init(MessageRouter),
};
+ calls->MessageRouter = ret.MessageRouter.this_arg;
return ret;
}
-uint64_t CS_LDK_LDKRouter_new(int32_t o) {
+uint64_t CS_LDK_LDKRouter_new(int32_t o, int32_t MessageRouter) {
LDKRouter *res_ptr = MALLOC(sizeof(LDKRouter), "LDKRouter");
- *res_ptr = LDKRouter_init(o);
+ *res_ptr = LDKRouter_init(o, MessageRouter);
return tag_ptr(res_ptr, true);
}
int64_t CS_LDK_Router_find_route(int64_t this_arg, int8_tArray payer, int64_t route_params, int64_tArray first_hops, int64_t inflight_htlcs) {
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_Router_create_blinded_payment_paths(int64_t this_arg, int8_tArray recipient, int64_tArray first_hops, int64_t tlvs, int64_t amount_msats) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKRouter* this_arg_conv = (LDKRouter*)this_arg_ptr;
+ LDKPublicKey recipient_ref;
+ CHECK(recipient->arr_len == 33);
+ memcpy(recipient_ref.compressed_form, recipient->elems, 33); FREE(recipient);
+ LDKCVec_ChannelDetailsZ first_hops_constr;
+ first_hops_constr.datalen = first_hops->arr_len;
+ if (first_hops_constr.datalen > 0)
+ first_hops_constr.data = MALLOC(first_hops_constr.datalen * sizeof(LDKChannelDetails), "LDKCVec_ChannelDetailsZ Elements");
+ else
+ first_hops_constr.data = NULL;
+ int64_t* first_hops_vals = first_hops->elems;
+ for (size_t q = 0; q < first_hops_constr.datalen; q++) {
+ int64_t first_hops_conv_16 = first_hops_vals[q];
+ LDKChannelDetails first_hops_conv_16_conv;
+ first_hops_conv_16_conv.inner = untag_ptr(first_hops_conv_16);
+ first_hops_conv_16_conv.is_owned = ptr_is_owned(first_hops_conv_16);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(first_hops_conv_16_conv);
+ first_hops_conv_16_conv = ChannelDetails_clone(&first_hops_conv_16_conv);
+ first_hops_constr.data[q] = first_hops_conv_16_conv;
+ }
+ FREE(first_hops);
+ LDKReceiveTlvs tlvs_conv;
+ tlvs_conv.inner = untag_ptr(tlvs);
+ tlvs_conv.is_owned = ptr_is_owned(tlvs);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(tlvs_conv);
+ tlvs_conv = ReceiveTlvs_clone(&tlvs_conv);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = (this_arg_conv->create_blinded_payment_paths)(this_arg_conv->this_arg, recipient_ref, first_hops_constr, tlvs_conv, amount_msats);
+ return tag_ptr(ret_conv, true);
+}
+
static inline struct LDKThirtyTwoBytes C2Tuple_ThirtyTwoBytesChannelManagerZ_get_a(LDKC2Tuple_ThirtyTwoBytesChannelManagerZ *NONNULL_PTR owner){
return ThirtyTwoBytes_clone(&owner->a);
}
}
uint16_t type_id_LDKType_jcall(const void* this_arg) {
LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg;
- return js_invoke_function_s_(j_calls->instance_ptr, 46);
+ return js_invoke_function_s_(j_calls->instance_ptr, 50);
}
LDKStr debug_str_LDKType_jcall(const void* this_arg) {
LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg;
- jstring ret = (jstring)js_invoke_function_l_(j_calls->instance_ptr, 47);
+ jstring ret = (jstring)js_invoke_function_l_(j_calls->instance_ptr, 51);
LDKStr ret_conv = str_ref_to_owned_c(ret);
return ret_conv;
}
LDKCVec_u8Z write_LDKType_jcall(const void* this_arg) {
LDKType_JCalls *j_calls = (LDKType_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 48);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 52);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
}
return ret;
}
+static inline struct LDKPublicKey C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR owner){
+ return owner->a;
+}
+int8_tArray CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(int64_t owner) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* owner_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(owner_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+static inline struct LDKCVec_SocketAddressZ C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR owner){
+ return CVec_SocketAddressZ_clone(&owner->b);
+}
+int64_tArray CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(int64_t owner) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* owner_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(owner);
+ LDKCVec_SocketAddressZ ret_var = C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(owner_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t p = 0; p < ret_var.datalen; p++) {
+ LDKSocketAddress *ret_conv_15_copy = MALLOC(sizeof(LDKSocketAddress), "LDKSocketAddress");
+ *ret_conv_15_copy = ret_var.data[p];
+ int64_t ret_conv_15_ref = tag_ptr(ret_conv_15_copy, true);
+ ret_arr_ptr[p] = ret_conv_15_ref;
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+static inline LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_clone(const LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ *orig) {
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ ret = { .data = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ) * orig->datalen, "LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ clone bytes"), .datalen = orig->datalen };
+ for (size_t i = 0; i < ret.datalen; i++) {
+ ret.data[i] = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(&orig->data[i]);
+ }
+ return ret;
+}
typedef struct LDKOnionMessageContents_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
}
uint64_t tlv_type_LDKOnionMessageContents_jcall(const void* this_arg) {
LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) this_arg;
- return js_invoke_function_l_(j_calls->instance_ptr, 49);
+ return js_invoke_function_l_(j_calls->instance_ptr, 53);
}
LDKCVec_u8Z write_LDKOnionMessageContents_jcall(const void* this_arg) {
LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 50);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 54);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
memcpy(ret_ref.data, ret->elems, ret_ref.datalen); FREE(ret);
return ret_ref;
}
+LDKStr debug_str_LDKOnionMessageContents_jcall(const void* this_arg) {
+ LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) this_arg;
+ jstring ret = (jstring)js_invoke_function_l_(j_calls->instance_ptr, 55);
+ LDKStr ret_conv = str_ref_to_owned_c(ret);
+ return ret_conv;
+}
static void LDKOnionMessageContents_JCalls_cloned(LDKOnionMessageContents* new_obj) {
LDKOnionMessageContents_JCalls *j_calls = (LDKOnionMessageContents_JCalls*) new_obj->this_arg;
atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
.this_arg = (void*) calls,
.tlv_type = tlv_type_LDKOnionMessageContents_jcall,
.write = write_LDKOnionMessageContents_jcall,
+ .debug_str = debug_str_LDKOnionMessageContents_jcall,
.cloned = LDKOnionMessageContents_JCalls_cloned,
.free = LDKOnionMessageContents_JCalls_free,
};
return ret_arr;
}
+jstring CS_LDK_OnionMessageContents_debug_str(int64_t this_arg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKOnionMessageContents* this_arg_conv = (LDKOnionMessageContents*)this_arg_ptr;
+ LDKStr ret_str = (this_arg_conv->debug_str)(this_arg_conv->this_arg);
+ jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
+ Str_free(ret_str);
+ return ret_conv;
+}
+
uint32_t CS_LDK_LDKCOption_OnionMessageContentsZ_ty_from_ptr(int64_t ptr) {
LDKCOption_OnionMessageContentsZ *obj = (LDKCOption_OnionMessageContentsZ*)untag_ptr(ptr);
switch(obj->tag) {
return ret_ref;
}
+static inline struct LDKStfu CResult_StfuDecodeErrorZ_get_ok(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR owner){
+ LDKStfu ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_StfuDecodeErrorZ* owner_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(owner);
+ LDKStfu ret_var = CResult_StfuDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_StfuDecodeErrorZ_get_err(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_StfuDecodeErrorZ* owner_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_StfuDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKSplice CResult_SpliceDecodeErrorZ_get_ok(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR owner){
+ LDKSplice ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SpliceDecodeErrorZ* owner_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(owner);
+ LDKSplice ret_var = CResult_SpliceDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_SpliceDecodeErrorZ_get_err(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_SpliceDecodeErrorZ* owner_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_SpliceDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKSpliceAck CResult_SpliceAckDecodeErrorZ_get_ok(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR owner){
+ LDKSpliceAck ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SpliceAckDecodeErrorZ* owner_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(owner);
+ LDKSpliceAck ret_var = CResult_SpliceAckDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_SpliceAckDecodeErrorZ_get_err(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_SpliceAckDecodeErrorZ* owner_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_SpliceAckDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKSpliceLocked CResult_SpliceLockedDecodeErrorZ_get_ok(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR owner){
+ LDKSpliceLocked ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SpliceLockedDecodeErrorZ* owner_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(owner);
+ LDKSpliceLocked ret_var = CResult_SpliceLockedDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_SpliceLockedDecodeErrorZ_get_err(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_SpliceLockedDecodeErrorZ* owner_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_SpliceLockedDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline struct LDKTxAddInput CResult_TxAddInputDecodeErrorZ_get_ok(LDKCResult_TxAddInputDecodeErrorZ *NONNULL_PTR owner){
LDKTxAddInput ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
+static inline struct LDKOnionPacket CResult_OnionPacketDecodeErrorZ_get_ok(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR owner){
+ LDKOnionPacket ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_OnionPacketDecodeErrorZ* owner_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(owner);
+ LDKOnionPacket ret_var = CResult_OnionPacketDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_OnionPacketDecodeErrorZ_get_err(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_OnionPacketDecodeErrorZ* owner_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_OnionPacketDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline struct LDKUpdateAddHTLC CResult_UpdateAddHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner){
LDKUpdateAddHTLC ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
+static inline struct LDKFinalOnionHopData CResult_FinalOnionHopDataDecodeErrorZ_get_ok(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR owner){
+ LDKFinalOnionHopData ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* owner_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(owner);
+ LDKFinalOnionHopData ret_var = CResult_FinalOnionHopDataDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_FinalOnionHopDataDecodeErrorZ_get_err(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* owner_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_FinalOnionHopDataDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
static inline struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner){
LDKPing ret = *owner->contents.result;
ret.is_owned = false;
case LDKEvent_FundingGenerationReady: return 0;
case LDKEvent_PaymentClaimable: return 1;
case LDKEvent_PaymentClaimed: return 2;
- case LDKEvent_InvoiceRequestFailed: return 3;
- case LDKEvent_PaymentSent: return 4;
- case LDKEvent_PaymentFailed: return 5;
- case LDKEvent_PaymentPathSuccessful: return 6;
- case LDKEvent_PaymentPathFailed: return 7;
- case LDKEvent_ProbeSuccessful: return 8;
- case LDKEvent_ProbeFailed: return 9;
- case LDKEvent_PendingHTLCsForwardable: return 10;
- case LDKEvent_HTLCIntercepted: return 11;
- case LDKEvent_SpendableOutputs: return 12;
- case LDKEvent_PaymentForwarded: return 13;
- case LDKEvent_ChannelPending: return 14;
- case LDKEvent_ChannelReady: return 15;
- case LDKEvent_ChannelClosed: return 16;
- case LDKEvent_DiscardFunding: return 17;
- case LDKEvent_OpenChannelRequest: return 18;
- case LDKEvent_HTLCHandlingFailed: return 19;
- case LDKEvent_BumpTransaction: return 20;
+ case LDKEvent_ConnectionNeeded: return 3;
+ case LDKEvent_InvoiceRequestFailed: return 4;
+ case LDKEvent_PaymentSent: return 5;
+ case LDKEvent_PaymentFailed: return 6;
+ case LDKEvent_PaymentPathSuccessful: return 7;
+ case LDKEvent_PaymentPathFailed: return 8;
+ case LDKEvent_ProbeSuccessful: return 9;
+ case LDKEvent_ProbeFailed: return 10;
+ case LDKEvent_PendingHTLCsForwardable: return 11;
+ case LDKEvent_HTLCIntercepted: return 12;
+ case LDKEvent_SpendableOutputs: return 13;
+ case LDKEvent_PaymentForwarded: return 14;
+ case LDKEvent_ChannelPending: return 15;
+ case LDKEvent_ChannelReady: return 16;
+ case LDKEvent_ChannelClosed: return 17;
+ case LDKEvent_DiscardFunding: return 18;
+ case LDKEvent_OpenChannelRequest: return 19;
+ case LDKEvent_HTLCHandlingFailed: return 20;
+ case LDKEvent_BumpTransaction: return 21;
default: abort();
}
}
int64_t sender_intended_total_msat_ref = tag_ptr(&obj->payment_claimed.sender_intended_total_msat, false);
return sender_intended_total_msat_ref;
}
+int8_tArray CS_LDK_LDKEvent_ConnectionNeeded_get_node_id(int64_t ptr) {
+ LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKEvent_ConnectionNeeded);
+ int8_tArray node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(node_id_arr->elems, obj->connection_needed.node_id.compressed_form, 33);
+ return node_id_arr;
+}
+int64_tArray CS_LDK_LDKEvent_ConnectionNeeded_get_addresses(int64_t ptr) {
+ LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKEvent_ConnectionNeeded);
+ LDKCVec_SocketAddressZ addresses_var = obj->connection_needed.addresses;
+ int64_tArray addresses_arr = NULL;
+ addresses_arr = init_int64_tArray(addresses_var.datalen, __LINE__);
+ int64_t *addresses_arr_ptr = (int64_t*)(((uint8_t*)addresses_arr) + 8);
+ for (size_t p = 0; p < addresses_var.datalen; p++) {
+ int64_t addresses_conv_15_ref = tag_ptr(&addresses_var.data[p], false);
+ addresses_arr_ptr[p] = addresses_conv_15_ref;
+ }
+
+ return addresses_arr;
+}
int8_tArray CS_LDK_LDKEvent_InvoiceRequestFailed_get_payment_id(int64_t ptr) {
LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
CHECK(obj->tag == LDKEvent_InvoiceRequestFailed);
int64_t channel_capacity_sats_ref = tag_ptr(&obj->channel_closed.channel_capacity_sats, false);
return channel_capacity_sats_ref;
}
+int64_t CS_LDK_LDKEvent_ChannelClosed_get_channel_funding_txo(int64_t ptr) {
+ LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKEvent_ChannelClosed);
+ LDKOutPoint channel_funding_txo_var = obj->channel_closed.channel_funding_txo;
+ int64_t channel_funding_txo_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_funding_txo_var);
+ channel_funding_txo_ref = tag_ptr(channel_funding_txo_var.inner, false);
+ return channel_funding_txo_ref;
+}
int8_tArray CS_LDK_LDKEvent_DiscardFunding_get_channel_id(int64_t ptr) {
LDKEvent *obj = (LDKEvent*)untag_ptr(ptr);
CHECK(obj->tag == LDKEvent_DiscardFunding);
return ret_ref;
}
-static inline struct LDKReceiveTlvs CResult_ReceiveTlvsDecodeErrorZ_get_ok(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR owner){
- LDKReceiveTlvs ret = *owner->contents.result;
- ret.is_owned = false;
- return ret;
+static inline struct LDKThirtyTwoBytes C2Tuple__u832u16Z_get_a(LDKC2Tuple__u832u16Z *NONNULL_PTR owner){
+ return ThirtyTwoBytes_clone(&owner->a);
}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_get_ok(int64_t owner) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* owner_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(owner);
- LDKReceiveTlvs ret_var = CResult_ReceiveTlvsDecodeErrorZ_get_ok(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
+int8_tArray CS_LDK_C2Tuple__u832u16Z_get_a(int64_t owner) {
+ LDKC2Tuple__u832u16Z* owner_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(owner);
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, C2Tuple__u832u16Z_get_a(owner_conv).data, 32);
+ return ret_arr;
}
-static inline struct LDKDecodeError CResult_ReceiveTlvsDecodeErrorZ_get_err(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return DecodeError_clone(&*owner->contents.err);
+static inline uint16_t C2Tuple__u832u16Z_get_b(LDKC2Tuple__u832u16Z *NONNULL_PTR owner){
+ return owner->b;
}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_get_err(int64_t owner) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* owner_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(owner);
- LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
- *ret_copy = CResult_ReceiveTlvsDecodeErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
+int16_t CS_LDK_C2Tuple__u832u16Z_get_b(int64_t owner) {
+ LDKC2Tuple__u832u16Z* owner_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(owner);
+ int16_t ret_conv = C2Tuple__u832u16Z_get_b(owner_conv);
+ return ret_conv;
}
static inline struct LDKPaymentRelay CResult_PaymentRelayDecodeErrorZ_get_ok(LDKCResult_PaymentRelayDecodeErrorZ *NONNULL_PTR owner){
return ret_ref;
}
-uint32_t CS_LDK_LDKPaymentError_ty_from_ptr(int64_t ptr) {
- LDKPaymentError *obj = (LDKPaymentError*)untag_ptr(ptr);
- switch(obj->tag) {
- case LDKPaymentError_Invoice: return 0;
- case LDKPaymentError_Sending: return 1;
- default: abort();
- }
-}
-jstring CS_LDK_LDKPaymentError_Invoice_get_invoice(int64_t ptr) {
- LDKPaymentError *obj = (LDKPaymentError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKPaymentError_Invoice);
- LDKStr invoice_str = obj->invoice;
- jstring invoice_conv = str_ref_to_cs(invoice_str.chars, invoice_str.len);
- return invoice_conv;
-}
-int32_t CS_LDK_LDKPaymentError_Sending_get_sending(int64_t ptr) {
- LDKPaymentError *obj = (LDKPaymentError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKPaymentError_Sending);
- int32_t sending_conv = LDKRetryableSendFailure_to_cs(obj->sending);
- return sending_conv;
-}
-static inline struct LDKThirtyTwoBytes CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return ThirtyTwoBytes_clone(&*owner->contents.result);
+static inline struct LDKThirtyTwoBytes C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner){
+ return ThirtyTwoBytes_clone(&owner->a);
}
-int8_tArray CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(int64_t owner) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* owner_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(owner);
+int8_tArray CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(owner);
int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
- memcpy(ret_arr->elems, CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(owner_conv).data, 32);
+ memcpy(ret_arr->elems, C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(owner_conv).data, 32);
return ret_arr;
}
-static inline struct LDKPaymentError CResult_ThirtyTwoBytesPaymentErrorZ_get_err(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return PaymentError_clone(&*owner->contents.err);
+static inline struct LDKRecipientOnionFields C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner){
+ LDKRecipientOnionFields ret = owner->b;
+ ret.is_owned = false;
+ return ret;
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_get_err(int64_t owner) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* owner_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(owner);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = CResult_ThirtyTwoBytesPaymentErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(owner);
+ LDKRecipientOnionFields ret_var = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-static inline void CResult_NonePaymentErrorZ_get_ok(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner){
-CHECK(owner->result_ok);
- return *owner->contents.result;
-}
-void CS_LDK_CResult_NonePaymentErrorZ_get_ok(int64_t owner) {
- LDKCResult_NonePaymentErrorZ* owner_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(owner);
- CResult_NonePaymentErrorZ_get_ok(owner_conv);
-}
-
-static inline struct LDKPaymentError CResult_NonePaymentErrorZ_get_err(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return PaymentError_clone(&*owner->contents.err);
+static inline struct LDKRouteParameters C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner){
+ LDKRouteParameters ret = owner->c;
+ ret.is_owned = false;
+ return ret;
}
-int64_t CS_LDK_CResult_NonePaymentErrorZ_get_err(int64_t owner) {
- LDKCResult_NonePaymentErrorZ* owner_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(owner);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = CResult_NonePaymentErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(int64_t owner) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* owner_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(owner);
+ LDKRouteParameters ret_var = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-uint32_t CS_LDK_LDKProbingError_ty_from_ptr(int64_t ptr) {
- LDKProbingError *obj = (LDKProbingError*)untag_ptr(ptr);
- switch(obj->tag) {
- case LDKProbingError_Invoice: return 0;
- case LDKProbingError_Sending: return 1;
- default: abort();
- }
-}
-jstring CS_LDK_LDKProbingError_Invoice_get_invoice(int64_t ptr) {
- LDKProbingError *obj = (LDKProbingError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKProbingError_Invoice);
- LDKStr invoice_str = obj->invoice;
- jstring invoice_conv = str_ref_to_cs(invoice_str.chars, invoice_str.len);
- return invoice_conv;
-}
-int64_t CS_LDK_LDKProbingError_Sending_get_sending(int64_t ptr) {
- LDKProbingError *obj = (LDKProbingError*)untag_ptr(ptr);
- CHECK(obj->tag == LDKProbingError_Sending);
- int64_t sending_ref = tag_ptr(&obj->sending, false);
- return sending_ref;
-}
-static inline struct LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR owner){
+static inline struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ_clone(&*owner->contents.result);
+ return C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(&*owner->contents.result);
}
-int64_tArray CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(int64_t owner) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* owner_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(owner);
- LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ ret_var = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(owner_conv);
- int64_tArray ret_arr = NULL;
- ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
- int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
- for (size_t o = 0; o < ret_var.datalen; o++) {
- LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ), "LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ");
- *ret_conv_40_conv = ret_var.data[o];
- ret_arr_ptr[o] = tag_ptr(ret_conv_40_conv, true);
- }
-
- FREE(ret_var.data);
- return ret_arr;
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(int64_t owner) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* owner_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(owner);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(owner_conv);
+ return tag_ptr(ret_conv, true);
}
-static inline struct LDKProbingError CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR owner){
+static inline void CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
- return ProbingError_clone(&*owner->contents.err);
+ return *owner->contents.err;
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(int64_t owner) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* owner_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(owner);
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(owner_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
+void CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(int64_t owner) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* owner_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(owner);
+ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(owner_conv);
}
static inline struct LDKStr CResult_StrSecp256k1ErrorZ_get_ok(LDKCResult_StrSecp256k1ErrorZ *NONNULL_PTR owner){
return ret_conv;
}
-static inline struct LDKOnionMessagePath CResult_OnionMessagePathNoneZ_get_ok(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
- LDKOnionMessagePath ret = *owner->contents.result;
- ret.is_owned = false;
- return ret;
-}
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_get_ok(int64_t owner) {
- LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
- LDKOnionMessagePath ret_var = CResult_OnionMessagePathNoneZ_get_ok(owner_conv);
- int64_t ret_ref = 0;
- CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
- ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
- return ret_ref;
-}
-
-static inline void CResult_OnionMessagePathNoneZ_get_err(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner){
-CHECK(!owner->result_ok);
- return *owner->contents.err;
-}
-void CS_LDK_CResult_OnionMessagePathNoneZ_get_err(int64_t owner) {
- LDKCResult_OnionMessagePathNoneZ* owner_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(owner);
- CResult_OnionMessagePathNoneZ_get_err(owner_conv);
-}
-
-static inline struct LDKPublicKey C2Tuple_PublicKeyOnionMessageZ_get_a(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR owner){
+static inline struct LDKPublicKey C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner){
return owner->a;
}
-int8_tArray CS_LDK_C2Tuple_PublicKeyOnionMessageZ_get_a(int64_t owner) {
- LDKC2Tuple_PublicKeyOnionMessageZ* owner_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(owner);
+int8_tArray CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(int64_t owner) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* owner_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(owner);
int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, C2Tuple_PublicKeyOnionMessageZ_get_a(owner_conv).compressed_form, 33);
+ memcpy(ret_arr->elems, C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(owner_conv).compressed_form, 33);
return ret_arr;
}
-static inline struct LDKOnionMessage C2Tuple_PublicKeyOnionMessageZ_get_b(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR owner){
+static inline struct LDKOnionMessage C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner){
LDKOnionMessage ret = owner->b;
ret.is_owned = false;
return ret;
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_get_b(int64_t owner) {
- LDKC2Tuple_PublicKeyOnionMessageZ* owner_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(owner);
- LDKOnionMessage ret_var = C2Tuple_PublicKeyOnionMessageZ_get_b(owner_conv);
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(int64_t owner) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* owner_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(owner);
+ LDKOnionMessage ret_var = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(owner_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
+static inline struct LDKCOption_CVec_SocketAddressZZ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner){
+ return COption_CVec_SocketAddressZZ_clone(&owner->c);
+}
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(int64_t owner) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* owner_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(owner);
+ LDKCOption_CVec_SocketAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_SocketAddressZZ), "LDKCOption_CVec_SocketAddressZZ");
+ *ret_copy = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
uint32_t CS_LDK_LDKSendError_ty_from_ptr(int64_t ptr) {
LDKSendError *obj = (LDKSendError*)untag_ptr(ptr);
switch(obj->tag) {
case LDKSendError_TooBigPacket: return 1;
case LDKSendError_TooFewBlindedHops: return 2;
case LDKSendError_InvalidFirstHop: return 3;
- case LDKSendError_InvalidMessage: return 4;
- case LDKSendError_BufferFull: return 5;
- case LDKSendError_GetNodeIdFailed: return 6;
- case LDKSendError_BlindedPathAdvanceFailed: return 7;
+ case LDKSendError_PathNotFound: return 4;
+ case LDKSendError_InvalidMessage: return 5;
+ case LDKSendError_BufferFull: return 6;
+ case LDKSendError_GetNodeIdFailed: return 7;
+ case LDKSendError_BlindedPathAdvanceFailed: return 8;
default: abort();
}
}
int32_t secp256k1_conv = LDKSecp256k1Error_to_cs(obj->secp256k1);
return secp256k1_conv;
}
-static inline struct LDKC2Tuple_PublicKeyOnionMessageZ CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR owner){
+int8_tArray CS_LDK_LDKSendError_InvalidFirstHop_get_invalid_first_hop(int64_t ptr) {
+ LDKSendError *obj = (LDKSendError*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKSendError_InvalidFirstHop);
+ int8_tArray invalid_first_hop_arr = init_int8_tArray(33, __LINE__);
+ memcpy(invalid_first_hop_arr->elems, obj->invalid_first_hop.compressed_form, 33);
+ return invalid_first_hop_arr;
+}
+static inline struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return C2Tuple_PublicKeyOnionMessageZ_clone(&*owner->contents.result);
+ return C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(&*owner->contents.result);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(int64_t owner) {
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* owner_conv = (LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)untag_ptr(owner);
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(owner_conv);
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(int64_t owner) {
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* owner_conv = (LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)untag_ptr(owner);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(owner_conv);
return tag_ptr(ret_conv, true);
}
-static inline struct LDKSendError CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR owner){
+static inline struct LDKSendError CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return SendError_clone(&*owner->contents.err);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(int64_t owner) {
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* owner_conv = (LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)untag_ptr(owner);
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(int64_t owner) {
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* owner_conv = (LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)untag_ptr(owner);
LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
- *ret_copy = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(owner_conv);
+ *ret_copy = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(owner_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
CResult_PeeledOnionNoneZ_get_err(owner_conv);
}
-static inline void CResult_NoneSendErrorZ_get_ok(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner){
+uint32_t CS_LDK_LDKSendSuccess_ty_from_ptr(int64_t ptr) {
+ LDKSendSuccess *obj = (LDKSendSuccess*)untag_ptr(ptr);
+ switch(obj->tag) {
+ case LDKSendSuccess_Buffered: return 0;
+ case LDKSendSuccess_BufferedAwaitingConnection: return 1;
+ default: abort();
+ }
+}
+int8_tArray CS_LDK_LDKSendSuccess_BufferedAwaitingConnection_get_buffered_awaiting_connection(int64_t ptr) {
+ LDKSendSuccess *obj = (LDKSendSuccess*)untag_ptr(ptr);
+ CHECK(obj->tag == LDKSendSuccess_BufferedAwaitingConnection);
+ int8_tArray buffered_awaiting_connection_arr = init_int8_tArray(33, __LINE__);
+ memcpy(buffered_awaiting_connection_arr->elems, obj->buffered_awaiting_connection.compressed_form, 33);
+ return buffered_awaiting_connection_arr;
+}
+static inline struct LDKSendSuccess CResult_SendSuccessSendErrorZ_get_ok(LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR owner){
CHECK(owner->result_ok);
- return *owner->contents.result;
+ return SendSuccess_clone(&*owner->contents.result);
}
-void CS_LDK_CResult_NoneSendErrorZ_get_ok(int64_t owner) {
- LDKCResult_NoneSendErrorZ* owner_conv = (LDKCResult_NoneSendErrorZ*)untag_ptr(owner);
- CResult_NoneSendErrorZ_get_ok(owner_conv);
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_get_ok(int64_t owner) {
+ LDKCResult_SendSuccessSendErrorZ* owner_conv = (LDKCResult_SendSuccessSendErrorZ*)untag_ptr(owner);
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = CResult_SendSuccessSendErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
}
-static inline struct LDKSendError CResult_NoneSendErrorZ_get_err(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner){
+static inline struct LDKSendError CResult_SendSuccessSendErrorZ_get_err(LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR owner){
CHECK(!owner->result_ok);
return SendError_clone(&*owner->contents.err);
}
-int64_t CS_LDK_CResult_NoneSendErrorZ_get_err(int64_t owner) {
- LDKCResult_NoneSendErrorZ* owner_conv = (LDKCResult_NoneSendErrorZ*)untag_ptr(owner);
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_get_err(int64_t owner) {
+ LDKCResult_SendSuccessSendErrorZ* owner_conv = (LDKCResult_SendSuccessSendErrorZ*)untag_ptr(owner);
LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
- *ret_copy = CResult_NoneSendErrorZ_get_err(owner_conv);
+ *ret_copy = CResult_SendSuccessSendErrorZ_get_err(owner_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_get_err(owner_conv);
}
+static inline LDKCVec_ForwardNodeZ CVec_ForwardNodeZ_clone(const LDKCVec_ForwardNodeZ *orig) {
+ LDKCVec_ForwardNodeZ ret = { .data = MALLOC(sizeof(LDKForwardNode) * orig->datalen, "LDKCVec_ForwardNodeZ clone bytes"), .datalen = orig->datalen };
+ for (size_t i = 0; i < ret.datalen; i++) {
+ ret.data[i] = ForwardNode_clone(&orig->data[i]);
+ }
+ return ret;
+}
static inline struct LDKBlindedPath CResult_BlindedPathDecodeErrorZ_get_ok(LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR owner){
LDKBlindedPath ret = *owner->contents.result;
ret.is_owned = false;
return ret_ref;
}
+static inline struct LDKDelayedPaymentBasepoint CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR owner){
+ LDKDelayedPaymentBasepoint ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDelayedPaymentBasepoint ret_var = CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKDelayedPaymentKey CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR owner){
+ LDKDelayedPaymentKey ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDelayedPaymentKey ret_var = CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_DelayedPaymentKeyDecodeErrorZ_get_err(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* owner_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_DelayedPaymentKeyDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKHtlcBasepoint CResult_HtlcBasepointDecodeErrorZ_get_ok(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR owner){
+ LDKHtlcBasepoint ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* owner_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKHtlcBasepoint ret_var = CResult_HtlcBasepointDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_HtlcBasepointDecodeErrorZ_get_err(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* owner_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_HtlcBasepointDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKHtlcKey CResult_HtlcKeyDecodeErrorZ_get_ok(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR owner){
+ LDKHtlcKey ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_HtlcKeyDecodeErrorZ* owner_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKHtlcKey ret_var = CResult_HtlcKeyDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_HtlcKeyDecodeErrorZ_get_err(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_HtlcKeyDecodeErrorZ* owner_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_HtlcKeyDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKRevocationBasepoint CResult_RevocationBasepointDecodeErrorZ_get_ok(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR owner){
+ LDKRevocationBasepoint ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* owner_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKRevocationBasepoint ret_var = CResult_RevocationBasepointDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_RevocationBasepointDecodeErrorZ_get_err(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* owner_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_RevocationBasepointDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+static inline struct LDKRevocationKey CResult_RevocationKeyDecodeErrorZ_get_ok(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR owner){
+ LDKRevocationKey ret = *owner->contents.result;
+ ret.is_owned = false;
+ return ret;
+}
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_get_ok(int64_t owner) {
+ LDKCResult_RevocationKeyDecodeErrorZ* owner_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKRevocationKey ret_var = CResult_RevocationKeyDecodeErrorZ_get_ok(owner_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline struct LDKDecodeError CResult_RevocationKeyDecodeErrorZ_get_err(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR owner){
+CHECK(!owner->result_ok);
+ return DecodeError_clone(&*owner->contents.err);
+}
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_get_err(int64_t owner) {
+ LDKCResult_RevocationKeyDecodeErrorZ* owner_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(owner);
+ LDKDecodeError *ret_copy = MALLOC(sizeof(LDKDecodeError), "LDKDecodeError");
+ *ret_copy = CResult_RevocationKeyDecodeErrorZ_get_err(owner_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
typedef struct LDKFilter_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
LDKu8slice script_pubkey_var = script_pubkey;
int8_tArray script_pubkey_arr = init_int8_tArray(script_pubkey_var.datalen, __LINE__);
memcpy(script_pubkey_arr->elems, script_pubkey_var.data, script_pubkey_var.datalen);
- js_invoke_function_void_ll(j_calls->instance_ptr, 51, (int64_t)txid_arr, (int64_t)script_pubkey_arr);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 56, (int64_t)txid_arr, (int64_t)script_pubkey_arr);
}
void register_output_LDKFilter_jcall(const void* this_arg, LDKWatchedOutput output) {
LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) this_arg;
int64_t output_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(output_var);
output_ref = tag_ptr(output_var.inner, output_var.is_owned);
- js_invoke_function_void_l(j_calls->instance_ptr, 52, output_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 57, output_ref);
}
static void LDKFilter_JCalls_cloned(LDKFilter* new_obj) {
LDKFilter_JCalls *j_calls = (LDKFilter_JCalls*) new_obj->this_arg;
LDKStr key_str = key;
jstring key_conv = str_ref_to_cs(key_str.chars, key_str.len);
Str_free(key_str);
- uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 53, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv);
+ uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 58, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_u8ZIOErrorZ ret_conv = *(LDKCResult_CVec_u8ZIOErrorZ*)(ret_ptr);
LDKu8slice buf_var = buf;
int8_tArray buf_arr = init_int8_tArray(buf_var.datalen, __LINE__);
memcpy(buf_arr->elems, buf_var.data, buf_var.datalen);
- uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 54, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, (int64_t)buf_arr);
+ uint64_t ret = js_invoke_function_l_llll(j_calls->instance_ptr, 59, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, (int64_t)buf_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
jstring key_conv = str_ref_to_cs(key_str.chars, key_str.len);
Str_free(key_str);
jboolean lazy_conv = lazy;
- uint64_t ret = js_invoke_function_l_lllb(j_calls->instance_ptr, 55, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, lazy_conv);
+ uint64_t ret = js_invoke_function_l_lllb(j_calls->instance_ptr, 60, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv, (int64_t)key_conv, lazy_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
LDKStr secondary_namespace_str = secondary_namespace;
jstring secondary_namespace_conv = str_ref_to_cs(secondary_namespace_str.chars, secondary_namespace_str.len);
Str_free(secondary_namespace_str);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 56, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 61, (int64_t)primary_namespace_conv, (int64_t)secondary_namespace_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_StrZIOErrorZ ret_conv = *(LDKCResult_CVec_StrZIOErrorZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKChannelManager
CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_manager_var);
channel_manager_ref = tag_ptr(channel_manager_var.inner, channel_manager_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 57, channel_manager_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 62, channel_manager_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
// WARNING: we may need a move here but no clone is available for LDKNetworkGraph
CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_var);
network_graph_ref = tag_ptr(network_graph_var.inner, network_graph_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 58, network_graph_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 63, network_graph_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
LDKPersister_JCalls *j_calls = (LDKPersister_JCalls*) this_arg;
// WARNING: This object doesn't live past this scope, needs clone!
int64_t ret_scorer = tag_ptr(scorer, false);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 59, ret_scorer);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 64, ret_scorer);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneIOErrorZ ret_conv = *(LDKCResult_NoneIOErrorZ*)(ret_ptr);
int64_t update_id_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var);
update_id_ref = tag_ptr(update_id_var.inner, update_id_var.is_owned);
- uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_lll(j_calls->instance_ptr, 60, channel_id_ref, data_ref, update_id_ref);
+ uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_lll(j_calls->instance_ptr, 65, channel_id_ref, data_ref, update_id_ref);
LDKChannelMonitorUpdateStatus ret_conv = LDKChannelMonitorUpdateStatus_from_cs(ret);
return ret_conv;
}
int64_t update_id_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(update_id_var);
update_id_ref = tag_ptr(update_id_var.inner, update_id_var.is_owned);
- uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_llll(j_calls->instance_ptr, 61, channel_id_ref, update_ref, data_ref, update_id_ref);
+ uint64_t ret = js_invoke_function_ChannelMonitorUpdateStatus_llll(j_calls->instance_ptr, 66, channel_id_ref, update_ref, data_ref, update_id_ref);
LDKChannelMonitorUpdateStatus ret_conv = LDKChannelMonitorUpdateStatus_from_cs(ret);
return ret_conv;
}
}
void call_LDKFutureCallback_jcall(const void* this_arg) {
LDKFutureCallback_JCalls *j_calls = (LDKFutureCallback_JCalls*) this_arg;
- js_invoke_function_void_(j_calls->instance_ptr, 62);
+ js_invoke_function_void_(j_calls->instance_ptr, 67);
}
static void LDKFutureCallback_JCalls_cloned(LDKFutureCallback* new_obj) {
LDKFutureCallback_JCalls *j_calls = (LDKFutureCallback_JCalls*) new_obj->this_arg;
FREE(txdata_var.data);
int32_t height_conv = height;
- js_invoke_function_void_lli(j_calls->instance_ptr, 63, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
+ js_invoke_function_void_lli(j_calls->instance_ptr, 68, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
}
void block_connected_LDKListen_jcall(const void* this_arg, LDKu8slice block, uint32_t height) {
LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg;
int8_tArray block_arr = init_int8_tArray(block_var.datalen, __LINE__);
memcpy(block_arr->elems, block_var.data, block_var.datalen);
int32_t height_conv = height;
- js_invoke_function_void_li(j_calls->instance_ptr, 64, (int64_t)block_arr, height_conv);
+ js_invoke_function_void_li(j_calls->instance_ptr, 69, (int64_t)block_arr, height_conv);
}
void block_disconnected_LDKListen_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) {
LDKListen_JCalls *j_calls = (LDKListen_JCalls*) this_arg;
int8_tArray header_arr = init_int8_tArray(80, __LINE__);
memcpy(header_arr->elems, *header, 80);
int32_t height_conv = height;
- js_invoke_function_void_li(j_calls->instance_ptr, 65, (int64_t)header_arr, height_conv);
+ js_invoke_function_void_li(j_calls->instance_ptr, 70, (int64_t)header_arr, height_conv);
}
static void LDKListen_JCalls_cloned(LDKListen* new_obj) {
LDKListen_JCalls *j_calls = (LDKListen_JCalls*) new_obj->this_arg;
FREE(txdata_var.data);
int32_t height_conv = height;
- js_invoke_function_void_lli(j_calls->instance_ptr, 66, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
+ js_invoke_function_void_lli(j_calls->instance_ptr, 71, (int64_t)header_arr, (int64_t)txdata_arr, height_conv);
}
void transaction_unconfirmed_LDKConfirm_jcall(const void* this_arg, const uint8_t (* txid)[32]) {
LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg;
int8_tArray txid_arr = init_int8_tArray(32, __LINE__);
memcpy(txid_arr->elems, *txid, 32);
- js_invoke_function_void_l(j_calls->instance_ptr, 67, (int64_t)txid_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 72, (int64_t)txid_arr);
}
void best_block_updated_LDKConfirm_jcall(const void* this_arg, const uint8_t (* header)[80], uint32_t height) {
LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg;
int8_tArray header_arr = init_int8_tArray(80, __LINE__);
memcpy(header_arr->elems, *header, 80);
int32_t height_conv = height;
- js_invoke_function_void_li(j_calls->instance_ptr, 68, (int64_t)header_arr, height_conv);
+ js_invoke_function_void_li(j_calls->instance_ptr, 73, (int64_t)header_arr, height_conv);
}
-LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) {
+LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ get_relevant_txids_LDKConfirm_jcall(const void* this_arg) {
LDKConfirm_JCalls *j_calls = (LDKConfirm_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 69);
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret_constr;
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 74);
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
- ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ Elements");
+ ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ Elements");
else
ret_constr.data = NULL;
int64_t* ret_vals = ret->elems;
- for (size_t x = 0; x < ret_constr.datalen; x++) {
- int64_t ret_conv_49 = ret_vals[x];
- void* ret_conv_49_ptr = untag_ptr(ret_conv_49);
- CHECK_ACCESS(ret_conv_49_ptr);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ ret_conv_49_conv = *(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)(ret_conv_49_ptr);
- FREE(untag_ptr(ret_conv_49));
- ret_constr.data[x] = ret_conv_49_conv;
+ for (size_t c = 0; c < ret_constr.datalen; c++) {
+ int64_t ret_conv_54 = ret_vals[c];
+ void* ret_conv_54_ptr = untag_ptr(ret_conv_54);
+ CHECK_ACCESS(ret_conv_54_ptr);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ ret_conv_54_conv = *(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)(ret_conv_54_ptr);
+ FREE(untag_ptr(ret_conv_54));
+ ret_constr.data[c] = ret_conv_54_conv;
}
FREE(ret);
return ret_constr;
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKConfirm* this_arg_conv = (LDKConfirm*)this_arg_ptr;
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg);
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret_var = (this_arg_conv->get_relevant_txids)(this_arg_conv->this_arg);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
- for (size_t x = 0; x < ret_var.datalen; x++) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv_49_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv_49_conv = ret_var.data[x];
- ret_arr_ptr[x] = tag_ptr(ret_conv_49_conv, true);
+ for (size_t c = 0; c < ret_var.datalen; c++) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv_54_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv_54_conv = ret_var.data[c];
+ ret_arr_ptr[c] = tag_ptr(ret_conv_54_conv, true);
}
FREE(ret_var.data);
LDKEvent *event_copy = MALLOC(sizeof(LDKEvent), "LDKEvent");
*event_copy = event;
int64_t event_ref = tag_ptr(event_copy, true);
- js_invoke_function_void_l(j_calls->instance_ptr, 70, event_ref);
+ js_invoke_function_void_l(j_calls->instance_ptr, 75, event_ref);
}
static void LDKEventHandler_JCalls_cloned(LDKEventHandler* new_obj) {
LDKEventHandler_JCalls *j_calls = (LDKEventHandler_JCalls*) new_obj->this_arg;
LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) this_arg;
LDKEventHandler* handler_ret = MALLOC(sizeof(LDKEventHandler), "LDKEventHandler");
*handler_ret = handler;
- js_invoke_function_void_l(j_calls->instance_ptr, 71, tag_ptr(handler_ret, true));
+ js_invoke_function_void_l(j_calls->instance_ptr, 76, tag_ptr(handler_ret, true));
}
static void LDKEventsProvider_JCalls_cloned(LDKEventsProvider* new_obj) {
LDKEventsProvider_JCalls *j_calls = (LDKEventsProvider_JCalls*) new_obj->this_arg;
}
LDKCVec_MessageSendEventZ get_and_clear_pending_msg_events_LDKMessageSendEventsProvider_jcall(const void* this_arg) {
LDKMessageSendEventsProvider_JCalls *j_calls = (LDKMessageSendEventsProvider_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 72);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 77);
LDKCVec_MessageSendEventZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
msg_var = OpenChannel_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 73, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 78, (int64_t)their_node_id_arr, msg_ref);
}
void handle_open_channel_v2_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKOpenChannelV2 * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = OpenChannelV2_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 74, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 79, (int64_t)their_node_id_arr, msg_ref);
}
void handle_accept_channel_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAcceptChannel * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = AcceptChannel_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 75, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 80, (int64_t)their_node_id_arr, msg_ref);
}
void handle_accept_channel_v2_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAcceptChannelV2 * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = AcceptChannelV2_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 76, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 81, (int64_t)their_node_id_arr, msg_ref);
}
void handle_funding_created_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingCreated * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = FundingCreated_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 77, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 82, (int64_t)their_node_id_arr, msg_ref);
}
void handle_funding_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKFundingSigned * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = FundingSigned_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 78, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 83, (int64_t)their_node_id_arr, msg_ref);
}
void handle_channel_ready_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelReady * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ChannelReady_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 79, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 84, (int64_t)their_node_id_arr, msg_ref);
}
void handle_shutdown_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKShutdown * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = Shutdown_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 80, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 85, (int64_t)their_node_id_arr, msg_ref);
}
void handle_closing_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKClosingSigned * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ClosingSigned_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 81, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 86, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_stfu_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKStfu * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKStfu msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = Stfu_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 87, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_splice_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKSplice * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKSplice msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = Splice_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 88, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_splice_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKSpliceAck * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKSpliceAck msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = SpliceAck_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 89, (int64_t)their_node_id_arr, msg_ref);
+}
+void handle_splice_locked_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKSpliceLocked * msg) {
+ LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
+ int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
+ memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
+ LDKSpliceLocked msg_var = *msg;
+ int64_t msg_ref = 0;
+ msg_var = SpliceLocked_clone(&msg_var);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
+ msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 90, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_add_input_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAddInput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAddInput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 82, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 91, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_add_output_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAddOutput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAddOutput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 83, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 92, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_remove_input_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxRemoveInput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxRemoveInput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 84, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 93, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_remove_output_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxRemoveOutput * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxRemoveOutput_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 85, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 94, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_complete_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxComplete * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxComplete_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 86, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 95, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxSignatures * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxSignatures_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 87, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 96, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_init_rbf_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxInitRbf * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxInitRbf_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 88, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 97, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_ack_rbf_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAckRbf * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAckRbf_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 89, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 98, (int64_t)their_node_id_arr, msg_ref);
}
void handle_tx_abort_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKTxAbort * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = TxAbort_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 90, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 99, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_add_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateAddHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateAddHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 91, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 100, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fulfill_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFulfillHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFulfillHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 92, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 101, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fail_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFailHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 93, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 102, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fail_malformed_htlc_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFailMalformedHTLC * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFailMalformedHTLC_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 94, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 103, (int64_t)their_node_id_arr, msg_ref);
}
void handle_commitment_signed_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKCommitmentSigned * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = CommitmentSigned_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 95, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 104, (int64_t)their_node_id_arr, msg_ref);
}
void handle_revoke_and_ack_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKRevokeAndACK * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = RevokeAndACK_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 96, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 105, (int64_t)their_node_id_arr, msg_ref);
}
void handle_update_fee_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKUpdateFee * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = UpdateFee_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 97, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 106, (int64_t)their_node_id_arr, msg_ref);
}
void handle_announcement_signatures_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKAnnouncementSignatures * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = AnnouncementSignatures_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 98, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 107, (int64_t)their_node_id_arr, msg_ref);
}
void peer_disconnected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- js_invoke_function_void_l(j_calls->instance_ptr, 99, (int64_t)their_node_id_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 108, (int64_t)their_node_id_arr);
}
LDKCResult_NoneNoneZ peer_connected_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKInit * msg, bool inbound) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
jboolean inbound_conv = inbound;
- uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 100, (int64_t)their_node_id_arr, msg_ref, inbound_conv);
+ uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 109, (int64_t)their_node_id_arr, msg_ref, inbound_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
msg_var = ChannelReestablish_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 101, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 110, (int64_t)their_node_id_arr, msg_ref);
}
void handle_channel_update_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKChannelUpdate * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ChannelUpdate_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 102, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 111, (int64_t)their_node_id_arr, msg_ref);
}
void handle_error_LDKChannelMessageHandler_jcall(const void* this_arg, LDKPublicKey their_node_id, const LDKErrorMessage * msg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
msg_var = ErrorMessage_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 103, (int64_t)their_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 112, (int64_t)their_node_id_arr, msg_ref);
}
LDKNodeFeatures provided_node_features_LDKChannelMessageHandler_jcall(const void* this_arg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 104);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 113);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 105, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 114, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
}
LDKCOption_CVec_ThirtyTwoBytesZZ get_chain_hashes_LDKChannelMessageHandler_jcall(const void* this_arg) {
LDKChannelMessageHandler_JCalls *j_calls = (LDKChannelMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 106);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 115);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_CVec_ThirtyTwoBytesZZ ret_conv = *(LDKCOption_CVec_ThirtyTwoBytesZZ*)(ret_ptr);
.handle_channel_ready = handle_channel_ready_LDKChannelMessageHandler_jcall,
.handle_shutdown = handle_shutdown_LDKChannelMessageHandler_jcall,
.handle_closing_signed = handle_closing_signed_LDKChannelMessageHandler_jcall,
+ .handle_stfu = handle_stfu_LDKChannelMessageHandler_jcall,
+ .handle_splice = handle_splice_LDKChannelMessageHandler_jcall,
+ .handle_splice_ack = handle_splice_ack_LDKChannelMessageHandler_jcall,
+ .handle_splice_locked = handle_splice_locked_LDKChannelMessageHandler_jcall,
.handle_tx_add_input = handle_tx_add_input_LDKChannelMessageHandler_jcall,
.handle_tx_add_output = handle_tx_add_output_LDKChannelMessageHandler_jcall,
.handle_tx_remove_input = handle_tx_remove_input_LDKChannelMessageHandler_jcall,
(this_arg_conv->handle_closing_signed)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
}
+void CS_LDK_ChannelMessageHandler_handle_stfu(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKStfu msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_stfu)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
+void CS_LDK_ChannelMessageHandler_handle_splice(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKSplice msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_splice)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
+void CS_LDK_ChannelMessageHandler_handle_splice_ack(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKSpliceAck msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_splice_ack)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
+void CS_LDK_ChannelMessageHandler_handle_splice_locked(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKChannelMessageHandler* this_arg_conv = (LDKChannelMessageHandler*)this_arg_ptr;
+ LDKPublicKey their_node_id_ref;
+ CHECK(their_node_id->arr_len == 33);
+ memcpy(their_node_id_ref.compressed_form, their_node_id->elems, 33); FREE(their_node_id);
+ LDKSpliceLocked msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ (this_arg_conv->handle_splice_locked)(this_arg_conv->this_arg, their_node_id_ref, &msg_conv);
+}
+
void CS_LDK_ChannelMessageHandler_handle_tx_add_input(int64_t this_arg, int8_tArray their_node_id, int64_t msg) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKOffersMessage *message_copy = MALLOC(sizeof(LDKOffersMessage), "LDKOffersMessage");
*message_copy = message;
int64_t message_ref = tag_ptr(message_copy, true);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 107, message_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 116, message_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_OffersMessageZ ret_conv = *(LDKCOption_OffersMessageZ*)(ret_ptr);
}
LDKCVec_C3Tuple_OffersMessageDestinationBlindedPathZZ release_pending_messages_LDKOffersMessageHandler_jcall(const void* this_arg) {
LDKOffersMessageHandler_JCalls *j_calls = (LDKOffersMessageHandler_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 108);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 117);
LDKCVec_C3Tuple_OffersMessageDestinationBlindedPathZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
msg_var = NodeAnnouncement_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 109, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 118, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr);
msg_var = ChannelAnnouncement_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 110, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 119, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr);
msg_var = ChannelUpdate_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 111, msg_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 120, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_boolLightningErrorZ ret_conv = *(LDKCResult_boolLightningErrorZ*)(ret_ptr);
LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcement_LDKRoutingMessageHandler_jcall(const void* this_arg, uint64_t starting_point) {
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
int64_t starting_point_conv = starting_point;
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 112, starting_point_conv);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 121, starting_point_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret_conv = *(LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ*)(ret_ptr);
int64_t starting_point_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(starting_point_var);
starting_point_ref = tag_ptr(starting_point_var.inner, starting_point_var.is_owned);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 113, starting_point_ref);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 122, starting_point_ref);
LDKNodeAnnouncement ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var);
init_ref = tag_ptr(init_var.inner, init_var.is_owned);
jboolean inbound_conv = inbound;
- uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 114, (int64_t)their_node_id_arr, init_ref, inbound_conv);
+ uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 123, (int64_t)their_node_id_arr, init_ref, inbound_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 115, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 124, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 116, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 125, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 117, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 126, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
int64_t msg_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 118, (int64_t)their_node_id_arr, msg_ref);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 127, (int64_t)their_node_id_arr, msg_ref);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
}
bool processing_queue_high_LDKRoutingMessageHandler_jcall(const void* this_arg) {
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
- return js_invoke_function_b_(j_calls->instance_ptr, 119);
+ return js_invoke_function_b_(j_calls->instance_ptr, 128);
}
LDKNodeFeatures provided_node_features_LDKRoutingMessageHandler_jcall(const void* this_arg) {
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 120);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 129);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKRoutingMessageHandler_JCalls *j_calls = (LDKRoutingMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 121, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 130, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
FREE(j_calls);
}
}
+LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ get_and_clear_connections_needed_LDKOnionMessageHandler_jcall(const void* this_arg) {
+ LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 131);
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ ret_constr;
+ ret_constr.datalen = ret->arr_len;
+ if (ret_constr.datalen > 0)
+ ret_constr.data = MALLOC(ret_constr.datalen * sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ Elements");
+ else
+ ret_constr.data = NULL;
+ int64_t* ret_vals = ret->elems;
+ for (size_t o = 0; o < ret_constr.datalen; o++) {
+ int64_t ret_conv_40 = ret_vals[o];
+ void* ret_conv_40_ptr = untag_ptr(ret_conv_40);
+ CHECK_ACCESS(ret_conv_40_ptr);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ ret_conv_40_conv = *(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)(ret_conv_40_ptr);
+ FREE(untag_ptr(ret_conv_40));
+ ret_constr.data[o] = ret_conv_40_conv;
+ }
+ FREE(ret);
+ return ret_constr;
+}
void handle_onion_message_LDKOnionMessageHandler_jcall(const void* this_arg, LDKPublicKey peer_node_id, const LDKOnionMessage * msg) {
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray peer_node_id_arr = init_int8_tArray(33, __LINE__);
msg_var = OnionMessage_clone(&msg_var);
CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_var);
msg_ref = tag_ptr(msg_var.inner, msg_var.is_owned);
- js_invoke_function_void_ll(j_calls->instance_ptr, 122, (int64_t)peer_node_id_arr, msg_ref);
+ js_invoke_function_void_ll(j_calls->instance_ptr, 132, (int64_t)peer_node_id_arr, msg_ref);
}
LDKOnionMessage next_onion_message_for_peer_LDKOnionMessageHandler_jcall(const void* this_arg, LDKPublicKey peer_node_id) {
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray peer_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(peer_node_id_arr->elems, peer_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 123, (int64_t)peer_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 133, (int64_t)peer_node_id_arr);
LDKOnionMessage ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
CHECK_INNER_FIELD_ACCESS_OR_NULL(init_var);
init_ref = tag_ptr(init_var.inner, init_var.is_owned);
jboolean inbound_conv = inbound;
- uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 124, (int64_t)their_node_id_arr, init_ref, inbound_conv);
+ uint64_t ret = js_invoke_function_l_llb(j_calls->instance_ptr, 134, (int64_t)their_node_id_arr, init_ref, inbound_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneNoneZ ret_conv = *(LDKCResult_NoneNoneZ*)(ret_ptr);
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- js_invoke_function_void_l(j_calls->instance_ptr, 125, (int64_t)their_node_id_arr);
+ js_invoke_function_void_l(j_calls->instance_ptr, 135, (int64_t)their_node_id_arr);
+}
+void timer_tick_occurred_LDKOnionMessageHandler_jcall(const void* this_arg) {
+ LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
+ js_invoke_function_void_(j_calls->instance_ptr, 136);
}
LDKNodeFeatures provided_node_features_LDKOnionMessageHandler_jcall(const void* this_arg) {
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 126);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 137);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKOnionMessageHandler_JCalls *j_calls = (LDKOnionMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 127, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 138, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKOnionMessageHandler ret = {
.this_arg = (void*) calls,
+ .get_and_clear_connections_needed = get_and_clear_connections_needed_LDKOnionMessageHandler_jcall,
.handle_onion_message = handle_onion_message_LDKOnionMessageHandler_jcall,
.next_onion_message_for_peer = next_onion_message_for_peer_LDKOnionMessageHandler_jcall,
.peer_connected = peer_connected_LDKOnionMessageHandler_jcall,
.peer_disconnected = peer_disconnected_LDKOnionMessageHandler_jcall,
+ .timer_tick_occurred = timer_tick_occurred_LDKOnionMessageHandler_jcall,
.provided_node_features = provided_node_features_LDKOnionMessageHandler_jcall,
.provided_init_features = provided_init_features_LDKOnionMessageHandler_jcall,
.free = LDKOnionMessageHandler_JCalls_free,
*res_ptr = LDKOnionMessageHandler_init(o);
return tag_ptr(res_ptr, true);
}
+int64_tArray CS_LDK_OnionMessageHandler_get_and_clear_connections_needed(int64_t this_arg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKOnionMessageHandler* this_arg_conv = (LDKOnionMessageHandler*)this_arg_ptr;
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ ret_var = (this_arg_conv->get_and_clear_connections_needed)(this_arg_conv->this_arg);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t o = 0; o < ret_var.datalen; o++) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv_40_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv_40_conv = ret_var.data[o];
+ ret_arr_ptr[o] = tag_ptr(ret_conv_40_conv, true);
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
void CS_LDK_OnionMessageHandler_handle_onion_message(int64_t this_arg, int8_tArray peer_node_id, int64_t msg) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
(this_arg_conv->peer_disconnected)(this_arg_conv->this_arg, their_node_id_ref);
}
+void CS_LDK_OnionMessageHandler_timer_tick_occurred(int64_t this_arg) {
+ void* this_arg_ptr = untag_ptr(this_arg);
+ if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
+ LDKOnionMessageHandler* this_arg_conv = (LDKOnionMessageHandler*)this_arg_ptr;
+ (this_arg_conv->timer_tick_occurred)(this_arg_conv->this_arg);
+}
+
int64_t CS_LDK_OnionMessageHandler_provided_node_features(int64_t this_arg) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKu8slice buffer_var = buffer;
int8_tArray buffer_arr = init_int8_tArray(buffer_var.datalen, __LINE__);
memcpy(buffer_arr->elems, buffer_var.data, buffer_var.datalen);
- uint64_t ret = js_invoke_function_l_sl(j_calls->instance_ptr, 128, message_type_conv, (int64_t)buffer_arr);
+ uint64_t ret = js_invoke_function_l_sl(j_calls->instance_ptr, 139, message_type_conv, (int64_t)buffer_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_COption_TypeZDecodeErrorZ ret_conv = *(LDKCResult_COption_TypeZDecodeErrorZ*)(ret_ptr);
*msg_ret = msg;
int8_tArray sender_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(sender_node_id_arr->elems, sender_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 129, tag_ptr(msg_ret, true), (int64_t)sender_node_id_arr);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 140, tag_ptr(msg_ret, true), (int64_t)sender_node_id_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_NoneLightningErrorZ ret_conv = *(LDKCResult_NoneLightningErrorZ*)(ret_ptr);
}
LDKCVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg_LDKCustomMessageHandler_jcall(const void* this_arg) {
LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 130);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 141);
LDKCVec_C2Tuple_PublicKeyTypeZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
}
LDKNodeFeatures provided_node_features_LDKCustomMessageHandler_jcall(const void* this_arg) {
LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 131);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 142);
LDKNodeFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKCustomMessageHandler_JCalls *j_calls = (LDKCustomMessageHandler_JCalls*) this_arg;
int8_tArray their_node_id_arr = init_int8_tArray(33, __LINE__);
memcpy(their_node_id_arr->elems, their_node_id.compressed_form, 33);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 132, (int64_t)their_node_id_arr);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 143, (int64_t)their_node_id_arr);
LDKInitFeatures ret_conv;
ret_conv.inner = untag_ptr(ret);
ret_conv.is_owned = ptr_is_owned(ret);
LDKCustomOnionMessageHandler_JCalls *j_calls = (LDKCustomOnionMessageHandler_JCalls*) this_arg;
LDKOnionMessageContents* msg_ret = MALLOC(sizeof(LDKOnionMessageContents), "LDKOnionMessageContents");
*msg_ret = msg;
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 133, tag_ptr(msg_ret, true));
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 144, tag_ptr(msg_ret, true));
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCOption_OnionMessageContentsZ ret_conv = *(LDKCOption_OnionMessageContentsZ*)(ret_ptr);
LDKu8slice buffer_var = buffer;
int8_tArray buffer_arr = init_int8_tArray(buffer_var.datalen, __LINE__);
memcpy(buffer_arr->elems, buffer_var.data, buffer_var.datalen);
- uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 134, message_type_conv, (int64_t)buffer_arr);
+ uint64_t ret = js_invoke_function_l_ll(j_calls->instance_ptr, 145, message_type_conv, (int64_t)buffer_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_COption_OnionMessageContentsZDecodeErrorZ ret_conv = *(LDKCResult_COption_OnionMessageContentsZDecodeErrorZ*)(ret_ptr);
}
LDKCVec_C3Tuple_OnionMessageContentsDestinationBlindedPathZZ release_pending_custom_messages_LDKCustomOnionMessageHandler_jcall(const void* this_arg) {
LDKCustomOnionMessageHandler_JCalls *j_calls = (LDKCustomOnionMessageHandler_JCalls*) this_arg;
- int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 135);
+ int64_tArray ret = (int64_tArray)js_invoke_function_l_(j_calls->instance_ptr, 146);
LDKCVec_C3Tuple_OnionMessageContentsDestinationBlindedPathZZ ret_constr;
ret_constr.datalen = ret->arr_len;
if (ret_constr.datalen > 0)
int8_tArray data_arr = init_int8_tArray(data_var.datalen, __LINE__);
memcpy(data_arr->elems, data_var.data, data_var.datalen);
jboolean resume_read_conv = resume_read;
- return js_invoke_function_l_lb(j_calls->instance_ptr, 136, (int64_t)data_arr, resume_read_conv);
+ return js_invoke_function_l_lb(j_calls->instance_ptr, 147, (int64_t)data_arr, resume_read_conv);
}
void disconnect_socket_LDKSocketDescriptor_jcall(void* this_arg) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg;
- js_invoke_function_void_(j_calls->instance_ptr, 137);
+ js_invoke_function_void_(j_calls->instance_ptr, 148);
}
bool eq_LDKSocketDescriptor_jcall(const void* this_arg, const LDKSocketDescriptor * other_arg) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg;
LDKSocketDescriptor *other_arg_clone = MALLOC(sizeof(LDKSocketDescriptor), "LDKSocketDescriptor");
*other_arg_clone = SocketDescriptor_clone(other_arg);
- return js_invoke_function_b_l(j_calls->instance_ptr, 138, tag_ptr(other_arg_clone, true));
+ return js_invoke_function_b_l(j_calls->instance_ptr, 149, tag_ptr(other_arg_clone, true));
}
uint64_t hash_LDKSocketDescriptor_jcall(const void* this_arg) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) this_arg;
- return js_invoke_function_l_(j_calls->instance_ptr, 139);
+ return js_invoke_function_l_(j_calls->instance_ptr, 150);
}
static void LDKSocketDescriptor_JCalls_cloned(LDKSocketDescriptor* new_obj) {
LDKSocketDescriptor_JCalls *j_calls = (LDKSocketDescriptor_JCalls*) new_obj->this_arg;
}
LDKCVec_u8Z write_LDKScore_jcall(const void* this_arg) {
LDKScore_JCalls *j_calls = (LDKScore_JCalls*) this_arg;
- int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 140);
+ int8_tArray ret = (int8_tArray)js_invoke_function_l_(j_calls->instance_ptr, 151);
LDKCVec_u8Z ret_ref;
ret_ref.datalen = ret->arr_len;
ret_ref.data = MALLOC(ret_ref.datalen, "LDKCVec_u8Z Bytes");
return ret_arr;
}
-typedef struct LDKMessageRouter_JCalls {
- atomic_size_t refcnt;
- uint32_t instance_ptr;
-} LDKMessageRouter_JCalls;
-static void LDKMessageRouter_JCalls_free(void* this_arg) {
- LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
- if (atomic_fetch_sub_explicit(&j_calls->refcnt, 1, memory_order_acquire) == 1) {
- FREE(j_calls);
- }
-}
-LDKCResult_OnionMessagePathNoneZ find_path_LDKMessageRouter_jcall(const void* this_arg, LDKPublicKey sender, LDKCVec_PublicKeyZ peers, LDKDestination destination) {
- LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) this_arg;
- int8_tArray sender_arr = init_int8_tArray(33, __LINE__);
- memcpy(sender_arr->elems, sender.compressed_form, 33);
- LDKCVec_PublicKeyZ peers_var = peers;
- ptrArray peers_arr = NULL;
- peers_arr = init_ptrArray(peers_var.datalen, __LINE__);
- int8_tArray *peers_arr_ptr = (int8_tArray*)(((uint8_t*)peers_arr) + 8);
- for (size_t i = 0; i < peers_var.datalen; i++) {
- int8_tArray peers_conv_8_arr = init_int8_tArray(33, __LINE__);
- memcpy(peers_conv_8_arr->elems, peers_var.data[i].compressed_form, 33);
- peers_arr_ptr[i] = peers_conv_8_arr;
- }
-
- FREE(peers_var.data);
- LDKDestination *destination_copy = MALLOC(sizeof(LDKDestination), "LDKDestination");
- *destination_copy = destination;
- int64_t destination_ref = tag_ptr(destination_copy, true);
- uint64_t ret = js_invoke_function_l_lll(j_calls->instance_ptr, 141, (int64_t)sender_arr, (int64_t)peers_arr, destination_ref);
- void* ret_ptr = untag_ptr(ret);
- CHECK_ACCESS(ret_ptr);
- LDKCResult_OnionMessagePathNoneZ ret_conv = *(LDKCResult_OnionMessagePathNoneZ*)(ret_ptr);
- FREE(untag_ptr(ret));
- return ret_conv;
-}
-static void LDKMessageRouter_JCalls_cloned(LDKMessageRouter* new_obj) {
- LDKMessageRouter_JCalls *j_calls = (LDKMessageRouter_JCalls*) new_obj->this_arg;
- atomic_fetch_add_explicit(&j_calls->refcnt, 1, memory_order_release);
-}
-static inline LDKMessageRouter LDKMessageRouter_init (int64_t o) {
- LDKMessageRouter_JCalls *calls = MALLOC(sizeof(LDKMessageRouter_JCalls), "LDKMessageRouter_JCalls");
- atomic_init(&calls->refcnt, 1);
- calls->instance_ptr = o;
-
- LDKMessageRouter ret = {
- .this_arg = (void*) calls,
- .find_path = find_path_LDKMessageRouter_jcall,
- .free = LDKMessageRouter_JCalls_free,
- };
- return ret;
-}
-uint64_t CS_LDK_LDKMessageRouter_new(int32_t o) {
- LDKMessageRouter *res_ptr = MALLOC(sizeof(LDKMessageRouter), "LDKMessageRouter");
- *res_ptr = LDKMessageRouter_init(o);
- return tag_ptr(res_ptr, true);
-}
-int64_t CS_LDK_MessageRouter_find_path(int64_t this_arg, int8_tArray sender, ptrArray peers, int64_t destination) {
- void* this_arg_ptr = untag_ptr(this_arg);
- if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
- LDKMessageRouter* this_arg_conv = (LDKMessageRouter*)this_arg_ptr;
- LDKPublicKey sender_ref;
- CHECK(sender->arr_len == 33);
- memcpy(sender_ref.compressed_form, sender->elems, 33); FREE(sender);
- LDKCVec_PublicKeyZ peers_constr;
- peers_constr.datalen = peers->arr_len;
- if (peers_constr.datalen > 0)
- peers_constr.data = MALLOC(peers_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
- else
- peers_constr.data = NULL;
- int8_tArray* peers_vals = (void*) peers->elems;
- for (size_t i = 0; i < peers_constr.datalen; i++) {
- int8_tArray peers_conv_8 = peers_vals[i];
- LDKPublicKey peers_conv_8_ref;
- CHECK(peers_conv_8->arr_len == 33);
- memcpy(peers_conv_8_ref.compressed_form, peers_conv_8->elems, 33); FREE(peers_conv_8);
- peers_constr.data[i] = peers_conv_8_ref;
- }
- FREE(peers);
- void* destination_ptr = untag_ptr(destination);
- CHECK_ACCESS(destination_ptr);
- LDKDestination destination_conv = *(LDKDestination*)(destination_ptr);
- destination_conv = Destination_clone((LDKDestination*)untag_ptr(destination));
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = (this_arg_conv->find_path)(this_arg_conv->this_arg, sender_ref, peers_constr, destination_conv);
- return tag_ptr(ret_conv, true);
-}
-
typedef struct LDKCoinSelectionSource_JCalls {
atomic_size_t refcnt;
uint32_t instance_ptr;
FREE(must_pay_to_var.data);
int32_t target_feerate_sat_per_1000_weight_conv = target_feerate_sat_per_1000_weight;
- uint64_t ret = js_invoke_function_l_llli(j_calls->instance_ptr, 142, (int64_t)claim_id_arr, (int64_t)must_spend_arr, (int64_t)must_pay_to_arr, target_feerate_sat_per_1000_weight_conv);
+ uint64_t ret = js_invoke_function_l_llli(j_calls->instance_ptr, 152, (int64_t)claim_id_arr, (int64_t)must_spend_arr, (int64_t)must_pay_to_arr, target_feerate_sat_per_1000_weight_conv);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CoinSelectionNoneZ ret_conv = *(LDKCResult_CoinSelectionNoneZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_TransactionNoneZ sign_tx_LDKCoinSelectionSource_jcall(const void* this_arg, LDKTransaction tx) {
+LDKCResult_TransactionNoneZ sign_psbt_LDKCoinSelectionSource_jcall(const void* this_arg, LDKCVec_u8Z psbt) {
LDKCoinSelectionSource_JCalls *j_calls = (LDKCoinSelectionSource_JCalls*) this_arg;
- LDKTransaction tx_var = tx;
- int8_tArray tx_arr = init_int8_tArray(tx_var.datalen, __LINE__);
- memcpy(tx_arr->elems, tx_var.data, tx_var.datalen);
- Transaction_free(tx_var);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 143, (int64_t)tx_arr);
+ LDKCVec_u8Z psbt_var = psbt;
+ int8_tArray psbt_arr = init_int8_tArray(psbt_var.datalen, __LINE__);
+ memcpy(psbt_arr->elems, psbt_var.data, psbt_var.datalen);
+ CVec_u8Z_free(psbt_var);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 153, (int64_t)psbt_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_TransactionNoneZ ret_conv = *(LDKCResult_TransactionNoneZ*)(ret_ptr);
LDKCoinSelectionSource ret = {
.this_arg = (void*) calls,
.select_confirmed_utxos = select_confirmed_utxos_LDKCoinSelectionSource_jcall,
- .sign_tx = sign_tx_LDKCoinSelectionSource_jcall,
+ .sign_psbt = sign_psbt_LDKCoinSelectionSource_jcall,
.free = LDKCoinSelectionSource_JCalls_free,
};
return ret;
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CoinSelectionSource_sign_tx(int64_t this_arg, int8_tArray tx) {
+int64_t CS_LDK_CoinSelectionSource_sign_psbt(int64_t this_arg, int8_tArray psbt) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKCoinSelectionSource* this_arg_conv = (LDKCoinSelectionSource*)this_arg_ptr;
- LDKTransaction tx_ref;
- tx_ref.datalen = tx->arr_len;
- tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes");
- memcpy(tx_ref.data, tx->elems, tx_ref.datalen); FREE(tx);
- tx_ref.data_is_owned = true;
+ LDKCVec_u8Z psbt_ref;
+ psbt_ref.datalen = psbt->arr_len;
+ psbt_ref.data = MALLOC(psbt_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(psbt_ref.data, psbt->elems, psbt_ref.datalen); FREE(psbt);
LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ");
- *ret_conv = (this_arg_conv->sign_tx)(this_arg_conv->this_arg, tx_ref);
+ *ret_conv = (this_arg_conv->sign_psbt)(this_arg_conv->this_arg, psbt_ref);
return tag_ptr(ret_conv, true);
}
}
LDKCResult_CVec_UtxoZNoneZ list_confirmed_utxos_LDKWalletSource_jcall(const void* this_arg) {
LDKWalletSource_JCalls *j_calls = (LDKWalletSource_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 144);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 154);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_UtxoZNoneZ ret_conv = *(LDKCResult_CVec_UtxoZNoneZ*)(ret_ptr);
}
LDKCResult_CVec_u8ZNoneZ get_change_script_LDKWalletSource_jcall(const void* this_arg) {
LDKWalletSource_JCalls *j_calls = (LDKWalletSource_JCalls*) this_arg;
- uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 145);
+ uint64_t ret = js_invoke_function_l_(j_calls->instance_ptr, 155);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_CVec_u8ZNoneZ ret_conv = *(LDKCResult_CVec_u8ZNoneZ*)(ret_ptr);
FREE(untag_ptr(ret));
return ret_conv;
}
-LDKCResult_TransactionNoneZ sign_tx_LDKWalletSource_jcall(const void* this_arg, LDKTransaction tx) {
+LDKCResult_TransactionNoneZ sign_psbt_LDKWalletSource_jcall(const void* this_arg, LDKCVec_u8Z psbt) {
LDKWalletSource_JCalls *j_calls = (LDKWalletSource_JCalls*) this_arg;
- LDKTransaction tx_var = tx;
- int8_tArray tx_arr = init_int8_tArray(tx_var.datalen, __LINE__);
- memcpy(tx_arr->elems, tx_var.data, tx_var.datalen);
- Transaction_free(tx_var);
- uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 146, (int64_t)tx_arr);
+ LDKCVec_u8Z psbt_var = psbt;
+ int8_tArray psbt_arr = init_int8_tArray(psbt_var.datalen, __LINE__);
+ memcpy(psbt_arr->elems, psbt_var.data, psbt_var.datalen);
+ CVec_u8Z_free(psbt_var);
+ uint64_t ret = js_invoke_function_l_l(j_calls->instance_ptr, 156, (int64_t)psbt_arr);
void* ret_ptr = untag_ptr(ret);
CHECK_ACCESS(ret_ptr);
LDKCResult_TransactionNoneZ ret_conv = *(LDKCResult_TransactionNoneZ*)(ret_ptr);
.this_arg = (void*) calls,
.list_confirmed_utxos = list_confirmed_utxos_LDKWalletSource_jcall,
.get_change_script = get_change_script_LDKWalletSource_jcall,
- .sign_tx = sign_tx_LDKWalletSource_jcall,
+ .sign_psbt = sign_psbt_LDKWalletSource_jcall,
.free = LDKWalletSource_JCalls_free,
};
return ret;
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_WalletSource_sign_tx(int64_t this_arg, int8_tArray tx) {
+int64_t CS_LDK_WalletSource_sign_psbt(int64_t this_arg, int8_tArray psbt) {
void* this_arg_ptr = untag_ptr(this_arg);
if (ptr_is_owned(this_arg)) { CHECK_ACCESS(this_arg_ptr); }
LDKWalletSource* this_arg_conv = (LDKWalletSource*)this_arg_ptr;
- LDKTransaction tx_ref;
- tx_ref.datalen = tx->arr_len;
- tx_ref.data = MALLOC(tx_ref.datalen, "LDKTransaction Bytes");
- memcpy(tx_ref.data, tx->elems, tx_ref.datalen); FREE(tx);
- tx_ref.data_is_owned = true;
+ LDKCVec_u8Z psbt_ref;
+ psbt_ref.datalen = psbt->arr_len;
+ psbt_ref.data = MALLOC(psbt_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(psbt_ref.data, psbt->elems, psbt_ref.datalen); FREE(psbt);
LDKCResult_TransactionNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_TransactionNoneZ), "LDKCResult_TransactionNoneZ");
- *ret_conv = (this_arg_conv->sign_tx)(this_arg_conv->this_arg, tx_ref);
+ *ret_conv = (this_arg_conv->sign_psbt)(this_arg_conv->this_arg, psbt_ref);
return tag_ptr(ret_conv, true);
}
return ret_arr;
}
+int64_t CS_LDK_WitnessProgram_new(int8_t version, int8_tArray program) {
+
+ LDKCVec_u8Z program_ref;
+ program_ref.datalen = program->arr_len;
+ program_ref.data = MALLOC(program_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(program_ref.data, program->elems, program_ref.datalen); FREE(program);
+ LDKWitnessProgram* ret_ref = MALLOC(sizeof(LDKWitnessProgram), "LDKWitnessProgram");
+ *ret_ref = WitnessProgram_new((LDKWitnessVersion){ ._0 = version }, program_ref);
+ return tag_ptr(ret_ref, true);
+}
+
+int8_t CS_LDK_WitnessProgram_get_version(int64_t prog) {
+ LDKWitnessProgram* prog_conv = (LDKWitnessProgram*)untag_ptr(prog);
+ uint8_t ret_val = WitnessProgram_get_version(prog_conv)._0;
+ return ret_val;
+}
+
+int8_tArray CS_LDK_WitnessProgram_get_program(int64_t prog) {
+ LDKWitnessProgram* prog_conv = (LDKWitnessProgram*)untag_ptr(prog);
+ LDKu8slice ret_var = WitnessProgram_get_program(prog_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ return ret_arr;
+}
+
+static inline uint64_t WitnessProgram_clone_ptr(LDKWitnessProgram *NONNULL_PTR arg) {
+ LDKWitnessProgram* ret_ref = MALLOC(sizeof(LDKWitnessProgram), "LDKWitnessProgram");
+ *ret_ref = WitnessProgram_clone(arg);
+ return tag_ptr(ret_ref, true);
+}
+int64_t CS_LDK_WitnessProgram_clone_ptr(int64_t arg) {
+ LDKWitnessProgram* arg_conv = (LDKWitnessProgram*)untag_ptr(arg);
+ int64_t ret_conv = WitnessProgram_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_WitnessProgram_clone(int64_t orig) {
+ LDKWitnessProgram* orig_conv = (LDKWitnessProgram*)untag_ptr(orig);
+ LDKWitnessProgram* ret_ref = MALLOC(sizeof(LDKWitnessProgram), "LDKWitnessProgram");
+ *ret_ref = WitnessProgram_clone(orig_conv);
+ return tag_ptr(ret_ref, true);
+}
+
+void CS_LDK_WitnessProgram_free(int64_t o) {
+ if (!ptr_is_owned(o)) return;
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKWitnessProgram o_conv = *(LDKWitnessProgram*)(o_ptr);
+ FREE(untag_ptr(o));
+ WitnessProgram_free(o_conv);
+}
+
int64_t CS_LDK_BigEndianScalar_new(int8_tArray big_endian_bytes) {
LDKThirtyTwoBytes big_endian_bytes_ref;
CHECK(big_endian_bytes->arr_len == 32);
Witness_free(_res_ref);
}
-void CS_LDK_TxIn_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKTxIn _res_conv = *(LDKTxIn*)(_res_ptr);
- FREE(untag_ptr(_res));
- TxIn_free(_res_conv);
-}
-
int64_t CS_LDK_TxIn_new(int8_tArray witness, int8_tArray script_sig, int32_t sequence, int8_tArray previous_txid, int32_t previous_vout) {
LDKWitness witness_ref;
witness_ref.datalen = witness->arr_len;
return tag_ptr(ret_ref, true);
}
+int8_tArray CS_LDK_TxIn_get_witness(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ LDKWitness ret_var = TxIn_get_witness(txin_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ Witness_free(ret_var);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_TxIn_get_script_sig(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ LDKu8slice ret_var = TxIn_get_script_sig(txin_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ return ret_arr;
+}
+
+int32_t CS_LDK_TxIn_get_sequence(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ int32_t ret_conv = TxIn_get_sequence(txin_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_TxIn_get_previous_txid(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, TxIn_get_previous_txid(txin_conv).data, 32);
+ return ret_arr;
+}
+
+int32_t CS_LDK_TxIn_get_previous_vout(int64_t txin) {
+ LDKTxIn* txin_conv = (LDKTxIn*)untag_ptr(txin);
+ int32_t ret_conv = TxIn_get_previous_vout(txin_conv);
+ return ret_conv;
+}
+
+void CS_LDK_TxIn_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKTxIn _res_conv = *(LDKTxIn*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ TxIn_free(_res_conv);
+}
+
int64_t CS_LDK_TxOut_new(int8_tArray script_pubkey, int64_t value) {
LDKCVec_u8Z script_pubkey_ref;
script_pubkey_ref.datalen = script_pubkey->arr_len;
return tag_ptr(ret_ref, true);
}
+int8_tArray CS_LDK_TxOut_get_script_pubkey(int64_t txout) {
+ LDKTxOut* txout_conv = (LDKTxOut*)untag_ptr(txout);
+ LDKu8slice ret_var = TxOut_get_script_pubkey(txout_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ return ret_arr;
+}
+
+int64_t CS_LDK_TxOut_get_value(int64_t txout) {
+ LDKTxOut* txout_conv = (LDKTxOut*)untag_ptr(txout);
+ int64_t ret_conv = TxOut_get_value(txout_conv);
+ return ret_conv;
+}
+
void CS_LDK_TxOut_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
return ret_ref;
}
-static inline uint64_t C2Tuple_CVec_u8ZusizeZ_clone_ptr(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR arg) {
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = C2Tuple_CVec_u8ZusizeZ_clone(arg);
+static inline uint64_t C2Tuple_CVec_u8Zu64Z_clone_ptr(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR arg) {
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = C2Tuple_CVec_u8Zu64Z_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_CVec_u8ZusizeZ* arg_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_CVec_u8ZusizeZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_clone_ptr(int64_t arg) {
+ LDKC2Tuple_CVec_u8Zu64Z* arg_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_CVec_u8Zu64Z_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_clone(int64_t orig) {
- LDKC2Tuple_CVec_u8ZusizeZ* orig_conv = (LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(orig);
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = C2Tuple_CVec_u8ZusizeZ_clone(orig_conv);
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_clone(int64_t orig) {
+ LDKC2Tuple_CVec_u8Zu64Z* orig_conv = (LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(orig);
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = C2Tuple_CVec_u8Zu64Z_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_CVec_u8ZusizeZ_new(int8_tArray a, int64_t b) {
+int64_t CS_LDK_C2Tuple_CVec_u8Zu64Z_new(int8_tArray a, int64_t b) {
LDKCVec_u8Z a_ref;
a_ref.datalen = a->arr_len;
a_ref.data = MALLOC(a_ref.datalen, "LDKCVec_u8Z Bytes");
memcpy(a_ref.data, a->elems, a_ref.datalen); FREE(a);
- LDKC2Tuple_CVec_u8ZusizeZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8ZusizeZ), "LDKC2Tuple_CVec_u8ZusizeZ");
- *ret_conv = C2Tuple_CVec_u8ZusizeZ_new(a_ref, b);
+ LDKC2Tuple_CVec_u8Zu64Z* ret_conv = MALLOC(sizeof(LDKC2Tuple_CVec_u8Zu64Z), "LDKC2Tuple_CVec_u8Zu64Z");
+ *ret_conv = C2Tuple_CVec_u8Zu64Z_new(a_ref, b);
return tag_ptr(ret_conv, true);
}
-void CS_LDK_C2Tuple_CVec_u8ZusizeZ_free(int64_t _res) {
+void CS_LDK_C2Tuple_CVec_u8Zu64Z_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_CVec_u8ZusizeZ _res_conv = *(LDKC2Tuple_CVec_u8ZusizeZ*)(_res_ptr);
+ LDKC2Tuple_CVec_u8Zu64Z _res_conv = *(LDKC2Tuple_CVec_u8Zu64Z*)(_res_ptr);
FREE(untag_ptr(_res));
- C2Tuple_CVec_u8ZusizeZ_free(_res_conv);
+ C2Tuple_CVec_u8Zu64Z_free(_res_conv);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(int64_t o) {
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
- LDKC2Tuple_CVec_u8ZusizeZ o_conv = *(LDKC2Tuple_CVec_u8ZusizeZ*)(o_ptr);
- o_conv = C2Tuple_CVec_u8ZusizeZ_clone((LDKC2Tuple_CVec_u8ZusizeZ*)untag_ptr(o));
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(o_conv);
+ LDKC2Tuple_CVec_u8Zu64Z o_conv = *(LDKC2Tuple_CVec_u8Zu64Z*)(o_ptr);
+ o_conv = C2Tuple_CVec_u8Zu64Z_clone((LDKC2Tuple_CVec_u8Zu64Z*)untag_ptr(o));
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err() {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err();
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err() {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err();
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(int64_t o) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* o_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(int64_t o) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* o_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(int64_t _res) {
+void CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ _res_conv = *(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)(_res_ptr);
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ _res_conv = *(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(_res_conv);
+ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(_res_conv);
}
-static inline uint64_t CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR arg) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(arg);
+static inline uint64_t CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* arg_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(arg_conv);
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* arg_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(int64_t orig) {
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* orig_conv = (LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ*)untag_ptr(orig);
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
- *ret_conv = CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(orig_conv);
+int64_t CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(int64_t orig) {
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* orig_conv = (LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ*)untag_ptr(orig);
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
+ *ret_conv = CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
-void CS_LDK_CVec_ECDSASignatureZ_free(ptrArray _res) {
- LDKCVec_ECDSASignatureZ _res_constr;
- _res_constr.datalen = _res->arr_len;
- if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
- else
- _res_constr.data = NULL;
- int8_tArray* _res_vals = (void*) _res->elems;
- for (size_t i = 0; i < _res_constr.datalen; i++) {
- int8_tArray _res_conv_8 = _res_vals[i];
- LDKECDSASignature _res_conv_8_ref;
- CHECK(_res_conv_8->arr_len == 64);
- memcpy(_res_conv_8_ref.compact_form, _res_conv_8->elems, 64); FREE(_res_conv_8);
- _res_constr.data[i] = _res_conv_8_ref;
- }
- FREE(_res);
- CVec_ECDSASignatureZ_free(_res_constr);
-}
-
-static inline uint64_t C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR arg) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* arg_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(int64_t orig) {
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* orig_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(orig);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(int8_tArray a, ptrArray b) {
- LDKECDSASignature a_ref;
- CHECK(a->arr_len == 64);
- memcpy(a_ref.compact_form, a->elems, 64); FREE(a);
- LDKCVec_ECDSASignatureZ b_constr;
- b_constr.datalen = b->arr_len;
- if (b_constr.datalen > 0)
- b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
- else
- b_constr.data = NULL;
- int8_tArray* b_vals = (void*) b->elems;
- for (size_t i = 0; i < b_constr.datalen; i++) {
- int8_tArray b_conv_8 = b_vals[i];
- LDKECDSASignature b_conv_8_ref;
- CHECK(b_conv_8->arr_len == 64);
- memcpy(b_conv_8_ref.compact_form, b_conv_8->elems, 64); FREE(b_conv_8);
- b_constr.data[i] = b_conv_8_ref;
- }
- FREE(b);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
- *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(a_ref, b_constr);
- return tag_ptr(ret_conv, true);
-}
-
-void CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ _res_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(_res_conv);
-}
-
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(int64_t o) {
- void* o_ptr = untag_ptr(o);
- CHECK_ACCESS(o_ptr);
- LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ o_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(o_ptr);
- o_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone((LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(o));
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(o_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err() {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err();
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(int64_t o) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR arg) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(int64_t orig) {
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(orig);
- LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
- *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_ok(int8_tArray o) {
- LDKECDSASignature o_ref;
- CHECK(o->arr_len == 64);
- memcpy(o_ref.compact_form, o->elems, 64); FREE(o);
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_ok(o_ref);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_err() {
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_err();
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_ECDSASignatureNoneZ_is_ok(int64_t o) {
- LDKCResult_ECDSASignatureNoneZ* o_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_ECDSASignatureNoneZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_ECDSASignatureNoneZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_ECDSASignatureNoneZ _res_conv = *(LDKCResult_ECDSASignatureNoneZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_ECDSASignatureNoneZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_ECDSASignatureNoneZ_clone_ptr(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR arg) {
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_ECDSASignatureNoneZ* arg_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_ECDSASignatureNoneZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone(int64_t orig) {
- LDKCResult_ECDSASignatureNoneZ* orig_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(orig);
- LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
- *ret_conv = CResult_ECDSASignatureNoneZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
int64_t CS_LDK_CResult_PublicKeyNoneZ_ok(int8_tArray o) {
LDKPublicKey o_ref;
CHECK(o->arr_len == 33);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_ok(int8_tArray o) {
+ LDKECDSASignature o_ref;
+ CHECK(o->arr_len == 64);
+ memcpy(o_ref.compact_form, o->elems, 64); FREE(o);
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_ok(o_ref);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_err() {
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_ECDSASignatureNoneZ_is_ok(int64_t o) {
+ LDKCResult_ECDSASignatureNoneZ* o_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_ECDSASignatureNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_ECDSASignatureNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_ECDSASignatureNoneZ _res_conv = *(LDKCResult_ECDSASignatureNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_ECDSASignatureNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_ECDSASignatureNoneZ_clone_ptr(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR arg) {
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_ECDSASignatureNoneZ* arg_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_ECDSASignatureNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_ECDSASignatureNoneZ_clone(int64_t orig) {
+ LDKCResult_ECDSASignatureNoneZ* orig_conv = (LDKCResult_ECDSASignatureNoneZ*)untag_ptr(orig);
+ LDKCResult_ECDSASignatureNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_ECDSASignatureNoneZ), "LDKCResult_ECDSASignatureNoneZ");
+ *ret_conv = CResult_ECDSASignatureNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
return ret_ref;
}
-void CS_LDK_CVec_CVec_u8ZZ_free(ptrArray _res) {
- LDKCVec_CVec_u8ZZ _res_constr;
+int64_t CS_LDK_CResult_WitnessNoneZ_ok(int8_tArray o) {
+ LDKWitness o_ref;
+ o_ref.datalen = o->arr_len;
+ o_ref.data = MALLOC(o_ref.datalen, "LDKWitness Bytes");
+ memcpy(o_ref.data, o->elems, o_ref.datalen); FREE(o);
+ o_ref.data_is_owned = true;
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_ok(o_ref);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_WitnessNoneZ_err() {
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_WitnessNoneZ_is_ok(int64_t o) {
+ LDKCResult_WitnessNoneZ* o_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_WitnessNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_WitnessNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_WitnessNoneZ _res_conv = *(LDKCResult_WitnessNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_WitnessNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_WitnessNoneZ_clone_ptr(LDKCResult_WitnessNoneZ *NONNULL_PTR arg) {
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_WitnessNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_WitnessNoneZ* arg_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_WitnessNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_WitnessNoneZ_clone(int64_t orig) {
+ LDKCResult_WitnessNoneZ* orig_conv = (LDKCResult_WitnessNoneZ*)untag_ptr(orig);
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
+ *ret_conv = CResult_WitnessNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_CVec_ECDSASignatureZ_free(ptrArray _res) {
+ LDKCVec_ECDSASignatureZ _res_constr;
_res_constr.datalen = _res->arr_len;
if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements");
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
else
_res_constr.data = NULL;
int8_tArray* _res_vals = (void*) _res->elems;
for (size_t i = 0; i < _res_constr.datalen; i++) {
int8_tArray _res_conv_8 = _res_vals[i];
- LDKCVec_u8Z _res_conv_8_ref;
- _res_conv_8_ref.datalen = _res_conv_8->arr_len;
- _res_conv_8_ref.data = MALLOC(_res_conv_8_ref.datalen, "LDKCVec_u8Z Bytes");
- memcpy(_res_conv_8_ref.data, _res_conv_8->elems, _res_conv_8_ref.datalen); FREE(_res_conv_8);
+ LDKECDSASignature _res_conv_8_ref;
+ CHECK(_res_conv_8->arr_len == 64);
+ memcpy(_res_conv_8_ref.compact_form, _res_conv_8->elems, 64); FREE(_res_conv_8);
_res_constr.data[i] = _res_conv_8_ref;
}
FREE(_res);
- CVec_CVec_u8ZZ_free(_res_constr);
+ CVec_ECDSASignatureZ_free(_res_constr);
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_ok(ptrArray o) {
- LDKCVec_CVec_u8ZZ o_constr;
- o_constr.datalen = o->arr_len;
- if (o_constr.datalen > 0)
- o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKCVec_u8Z), "LDKCVec_CVec_u8ZZ Elements");
+static inline uint64_t C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR arg) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(int64_t arg) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* arg_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(int64_t orig) {
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* orig_conv = (LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(orig);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(int8_tArray a, ptrArray b) {
+ LDKECDSASignature a_ref;
+ CHECK(a->arr_len == 64);
+ memcpy(a_ref.compact_form, a->elems, 64); FREE(a);
+ LDKCVec_ECDSASignatureZ b_constr;
+ b_constr.datalen = b->arr_len;
+ if (b_constr.datalen > 0)
+ b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKECDSASignature), "LDKCVec_ECDSASignatureZ Elements");
else
- o_constr.data = NULL;
- int8_tArray* o_vals = (void*) o->elems;
- for (size_t i = 0; i < o_constr.datalen; i++) {
- int8_tArray o_conv_8 = o_vals[i];
- LDKCVec_u8Z o_conv_8_ref;
- o_conv_8_ref.datalen = o_conv_8->arr_len;
- o_conv_8_ref.data = MALLOC(o_conv_8_ref.datalen, "LDKCVec_u8Z Bytes");
- memcpy(o_conv_8_ref.data, o_conv_8->elems, o_conv_8_ref.datalen); FREE(o_conv_8);
- o_constr.data[i] = o_conv_8_ref;
+ b_constr.data = NULL;
+ int8_tArray* b_vals = (void*) b->elems;
+ for (size_t i = 0; i < b_constr.datalen; i++) {
+ int8_tArray b_conv_8 = b_vals[i];
+ LDKECDSASignature b_conv_8_ref;
+ CHECK(b_conv_8->arr_len == 64);
+ memcpy(b_conv_8_ref.compact_form, b_conv_8->elems, 64); FREE(b_conv_8);
+ b_constr.data[i] = b_conv_8_ref;
}
- FREE(o);
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_ok(o_constr);
+ FREE(b);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ), "LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ");
+ *ret_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(a_ref, b_constr);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_err() {
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_err();
+void CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ _res_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(_res_conv);
+}
+
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ o_conv = *(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)(o_ptr);
+ o_conv = C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone((LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ*)untag_ptr(o));
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_is_ok(int64_t o) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* o_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_CVec_CVec_u8ZZNoneZ_is_ok(o_conv);
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err() {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(int64_t o) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* o_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_free(int64_t _res) {
+void CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_CVec_CVec_u8ZZNoneZ _res_conv = *(LDKCResult_CVec_CVec_u8ZZNoneZ*)(_res_ptr);
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ _res_conv = *(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_CVec_CVec_u8ZZNoneZ_free(_res_conv);
+ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(_res_conv);
}
-static inline uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(arg);
+static inline uint64_t CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* arg_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(arg_conv);
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* arg_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_clone(int64_t orig) {
- LDKCResult_CVec_CVec_u8ZZNoneZ* orig_conv = (LDKCResult_CVec_CVec_u8ZZNoneZ*)untag_ptr(orig);
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
- *ret_conv = CResult_CVec_CVec_u8ZZNoneZ_clone(orig_conv);
+int64_t CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(int64_t orig) {
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* orig_conv = (LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ*)untag_ptr(orig);
+ LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ), "LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ");
+ *ret_conv = CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
+static inline uint64_t C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR arg) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(int64_t arg) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* arg_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone(int64_t orig) {
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* orig_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(orig);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_new(int64_t a, int64_t b) {
+ LDKBlindedPayInfo a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = BlindedPayInfo_clone(&a_conv);
+ LDKBlindedPath b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv = BlindedPath_clone(&b_conv);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
+ *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_new(a_conv, b_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ C2Tuple_BlindedPayInfoBlindedPathZ_free(_res_conv);
+}
+
+void CS_LDK_CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(int64_tArray _res) {
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ Elements");
+ else
+ _res_constr.data = NULL;
+ int64_t* _res_vals = _res->elems;
+ for (size_t l = 0; l < _res_constr.datalen; l++) {
+ int64_t _res_conv_37 = _res_vals[l];
+ void* _res_conv_37_ptr = untag_ptr(_res_conv_37);
+ CHECK_ACCESS(_res_conv_37_ptr);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv_37_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_conv_37_ptr);
+ FREE(untag_ptr(_res_conv_37));
+ _res_constr.data[l] = _res_conv_37_conv;
+ }
+ FREE(_res);
+ CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(_res_constr);
+}
+
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(int64_tArray o) {
+ LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ o_constr;
+ o_constr.datalen = o->arr_len;
+ if (o_constr.datalen > 0)
+ o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ Elements");
+ else
+ o_constr.data = NULL;
+ int64_t* o_vals = o->elems;
+ for (size_t l = 0; l < o_constr.datalen; l++) {
+ int64_t o_conv_37 = o_vals[l];
+ void* o_conv_37_ptr = untag_ptr(o_conv_37);
+ CHECK_ACCESS(o_conv_37_ptr);
+ LDKC2Tuple_BlindedPayInfoBlindedPathZ o_conv_37_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(o_conv_37_ptr);
+ o_conv_37_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone((LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(o_conv_37));
+ o_constr.data[l] = o_conv_37_conv;
+ }
+ FREE(o);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(o_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err() {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(int64_t o) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* o_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ _res_conv = *(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* arg_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(int64_t orig) {
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* orig_conv = (LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ*)untag_ptr(orig);
+ LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ), "LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ");
+ *ret_conv = CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_CVec_PublicKeyZ_free(ptrArray _res) {
+ LDKCVec_PublicKeyZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
+ else
+ _res_constr.data = NULL;
+ int8_tArray* _res_vals = (void*) _res->elems;
+ for (size_t i = 0; i < _res_constr.datalen; i++) {
+ int8_tArray _res_conv_8 = _res_vals[i];
+ LDKPublicKey _res_conv_8_ref;
+ CHECK(_res_conv_8->arr_len == 33);
+ memcpy(_res_conv_8_ref.compressed_form, _res_conv_8->elems, 33); FREE(_res_conv_8);
+ _res_constr.data[i] = _res_conv_8_ref;
+ }
+ FREE(_res);
+ CVec_PublicKeyZ_free(_res_constr);
+}
+
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_ok(int64_t o) {
+ LDKOnionMessagePath o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = OnionMessagePath_clone(&o_conv);
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_err() {
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_OnionMessagePathNoneZ_is_ok(int64_t o) {
+ LDKCResult_OnionMessagePathNoneZ* o_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_OnionMessagePathNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_OnionMessagePathNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_OnionMessagePathNoneZ _res_conv = *(LDKCResult_OnionMessagePathNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_OnionMessagePathNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_OnionMessagePathNoneZ_clone_ptr(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR arg) {
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_OnionMessagePathNoneZ* arg_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_OnionMessagePathNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone(int64_t orig) {
+ LDKCResult_OnionMessagePathNoneZ* orig_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(orig);
+ LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
+ *ret_conv = CResult_OnionMessagePathNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_ok(int64_tArray o) {
+ LDKCVec_BlindedPathZ o_constr;
+ o_constr.datalen = o->arr_len;
+ if (o_constr.datalen > 0)
+ o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKBlindedPath), "LDKCVec_BlindedPathZ Elements");
+ else
+ o_constr.data = NULL;
+ int64_t* o_vals = o->elems;
+ for (size_t n = 0; n < o_constr.datalen; n++) {
+ int64_t o_conv_13 = o_vals[n];
+ LDKBlindedPath o_conv_13_conv;
+ o_conv_13_conv.inner = untag_ptr(o_conv_13);
+ o_conv_13_conv.is_owned = ptr_is_owned(o_conv_13);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv_13_conv);
+ o_conv_13_conv = BlindedPath_clone(&o_conv_13_conv);
+ o_constr.data[n] = o_conv_13_conv;
+ }
+ FREE(o);
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_ok(o_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_err() {
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_err();
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_CVec_BlindedPathZNoneZ_is_ok(int64_t o) {
+ LDKCResult_CVec_BlindedPathZNoneZ* o_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_CVec_BlindedPathZNoneZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_CVec_BlindedPathZNoneZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_CVec_BlindedPathZNoneZ _res_conv = *(LDKCResult_CVec_BlindedPathZNoneZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_CVec_BlindedPathZNoneZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_CVec_BlindedPathZNoneZ_clone_ptr(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_CVec_BlindedPathZNoneZ* arg_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_CVec_BlindedPathZNoneZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_CVec_BlindedPathZNoneZ_clone(int64_t orig) {
+ LDKCResult_CVec_BlindedPathZNoneZ* orig_conv = (LDKCResult_CVec_BlindedPathZNoneZ*)untag_ptr(orig);
+ LDKCResult_CVec_BlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_BlindedPathZNoneZ), "LDKCResult_CVec_BlindedPathZNoneZ");
+ *ret_conv = CResult_CVec_BlindedPathZNoneZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_InFlightHtlcsDecodeErrorZ_ok(int64_t o) {
LDKInFlightHtlcs o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
-static inline uint64_t C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR arg) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
- *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* arg_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone(int64_t orig) {
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* orig_conv = (LDKC2Tuple_BlindedPayInfoBlindedPathZ*)untag_ptr(orig);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
- *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_new(int64_t a, int64_t b) {
- LDKBlindedPayInfo a_conv;
- a_conv.inner = untag_ptr(a);
- a_conv.is_owned = ptr_is_owned(a);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
- a_conv = BlindedPayInfo_clone(&a_conv);
- LDKBlindedPath b_conv;
- b_conv.inner = untag_ptr(b);
- b_conv.is_owned = ptr_is_owned(b);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
- b_conv = BlindedPath_clone(&b_conv);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKC2Tuple_BlindedPayInfoBlindedPathZ");
- *ret_conv = C2Tuple_BlindedPayInfoBlindedPathZ_new(a_conv, b_conv);
- return tag_ptr(ret_conv, true);
-}
-
-void CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- C2Tuple_BlindedPayInfoBlindedPathZ_free(_res_conv);
-}
-
-void CS_LDK_CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(int64_tArray _res) {
- LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ _res_constr;
- _res_constr.datalen = _res->arr_len;
- if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_BlindedPayInfoBlindedPathZ), "LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ Elements");
- else
- _res_constr.data = NULL;
- int64_t* _res_vals = _res->elems;
- for (size_t l = 0; l < _res_constr.datalen; l++) {
- int64_t _res_conv_37 = _res_vals[l];
- void* _res_conv_37_ptr = untag_ptr(_res_conv_37);
- CHECK_ACCESS(_res_conv_37_ptr);
- LDKC2Tuple_BlindedPayInfoBlindedPathZ _res_conv_37_conv = *(LDKC2Tuple_BlindedPayInfoBlindedPathZ*)(_res_conv_37_ptr);
- FREE(untag_ptr(_res_conv_37));
- _res_constr.data[l] = _res_conv_37_conv;
- }
- FREE(_res);
- CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(_res_constr);
-}
-
void CS_LDK_CVec_RouteHintZ_free(int64_tArray _res) {
LDKCVec_RouteHintZ _res_constr;
_res_constr.datalen = _res->arr_len;
return tag_ptr(ret_conv, true);
}
-void CS_LDK_CVec_PublicKeyZ_free(ptrArray _res) {
- LDKCVec_PublicKeyZ _res_constr;
- _res_constr.datalen = _res->arr_len;
- if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKPublicKey), "LDKCVec_PublicKeyZ Elements");
- else
- _res_constr.data = NULL;
- int8_tArray* _res_vals = (void*) _res->elems;
- for (size_t i = 0; i < _res_constr.datalen; i++) {
- int8_tArray _res_conv_8 = _res_vals[i];
- LDKPublicKey _res_conv_8_ref;
- CHECK(_res_conv_8->arr_len == 33);
- memcpy(_res_conv_8_ref.compressed_form, _res_conv_8->elems, 33); FREE(_res_conv_8);
- _res_constr.data[i] = _res_conv_8_ref;
- }
- FREE(_res);
- CVec_PublicKeyZ_free(_res_constr);
-}
-
int64_t CS_LDK_CResult_FixedPenaltyScorerDecodeErrorZ_ok(int64_t o) {
LDKFixedPenaltyScorer o_conv;
o_conv.inner = untag_ptr(o);
CVec_C2Tuple_usizeTransactionZZ_free(_res_constr);
}
-static inline uint64_t C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR arg) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(arg);
+static inline uint64_t C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR arg) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* arg_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(int64_t arg) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* arg_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(arg);
+ int64_t ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(int64_t orig) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* orig_conv = (LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)untag_ptr(orig);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(orig_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(int64_t orig) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* orig_conv = (LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)untag_ptr(orig);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(int8_tArray a, int64_t b) {
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(int8_tArray a, int32_t b, int64_t c) {
LDKThirtyTwoBytes a_ref;
CHECK(a->arr_len == 32);
memcpy(a_ref.data, a->elems, 32); FREE(a);
- void* b_ptr = untag_ptr(b);
- CHECK_ACCESS(b_ptr);
- LDKCOption_ThirtyTwoBytesZ b_conv = *(LDKCOption_ThirtyTwoBytesZ*)(b_ptr);
- b_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(b));
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv = C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(a_ref, b_conv);
+ void* c_ptr = untag_ptr(c);
+ CHECK_ACCESS(c_ptr);
+ LDKCOption_ThirtyTwoBytesZ c_conv = *(LDKCOption_ThirtyTwoBytesZ*)(c_ptr);
+ c_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(c));
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(a_ref, b, c_conv);
return tag_ptr(ret_conv, true);
}
-void CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(int64_t _res) {
+void CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ _res_conv = *(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)(_res_ptr);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ _res_conv = *(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)(_res_ptr);
FREE(untag_ptr(_res));
- C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(_res_conv);
+ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(_res_conv);
}
-void CS_LDK_CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free(int64_tArray _res) {
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ _res_constr;
+void CS_LDK_CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free(int64_tArray _res) {
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ _res_constr;
_res_constr.datalen = _res->arr_len;
if (_res_constr.datalen > 0)
- _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ Elements");
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ Elements");
else
_res_constr.data = NULL;
int64_t* _res_vals = _res->elems;
- for (size_t x = 0; x < _res_constr.datalen; x++) {
- int64_t _res_conv_49 = _res_vals[x];
- void* _res_conv_49_ptr = untag_ptr(_res_conv_49);
- CHECK_ACCESS(_res_conv_49_ptr);
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ _res_conv_49_conv = *(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ*)(_res_conv_49_ptr);
- FREE(untag_ptr(_res_conv_49));
- _res_constr.data[x] = _res_conv_49_conv;
+ for (size_t c = 0; c < _res_constr.datalen; c++) {
+ int64_t _res_conv_54 = _res_vals[c];
+ void* _res_conv_54_ptr = untag_ptr(_res_conv_54);
+ CHECK_ACCESS(_res_conv_54_ptr);
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ _res_conv_54_conv = *(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ*)(_res_conv_54_ptr);
+ FREE(untag_ptr(_res_conv_54));
+ _res_constr.data[c] = _res_conv_54_conv;
}
FREE(_res);
- CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free(_res_constr);
+ CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free(_res_constr);
}
int64_t CS_LDK_CResult_ChannelMonitorUpdateStatusNoneZ_ok(int32_t o) {
return ret_ref;
}
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_ok(int64_t o) {
+ LDKPendingHTLCInfo o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = PendingHTLCInfo_clone(&o_conv);
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoInboundHTLCErrZ), "LDKCResult_PendingHTLCInfoInboundHTLCErrZ");
+ *ret_conv = CResult_PendingHTLCInfoInboundHTLCErrZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_err(int64_t e) {
+ LDKInboundHTLCErr e_conv;
+ e_conv.inner = untag_ptr(e);
+ e_conv.is_owned = ptr_is_owned(e);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(e_conv);
+ // WARNING: we need a move here but no clone is available for LDKInboundHTLCErr
+
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoInboundHTLCErrZ), "LDKCResult_PendingHTLCInfoInboundHTLCErrZ");
+ *ret_conv = CResult_PendingHTLCInfoInboundHTLCErrZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(int64_t o) {
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* o_conv = (LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ _res_conv = *(LDKCResult_PendingHTLCInfoInboundHTLCErrZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_PendingHTLCInfoInboundHTLCErrZ_free(_res_conv);
+}
+
void CS_LDK_CVec_HTLCOutputInCommitmentZ_free(int64_tArray _res) {
LDKCVec_HTLCOutputInCommitmentZ _res_constr;
_res_constr.datalen = _res->arr_len;
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_ok(int64_t o) {
+ LDKBlindedForward o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = BlindedForward_clone(&o_conv);
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_BlindedForwardDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_BlindedForwardDecodeErrorZ* o_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_BlindedForwardDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_BlindedForwardDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_BlindedForwardDecodeErrorZ _res_conv = *(LDKCResult_BlindedForwardDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_BlindedForwardDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_BlindedForwardDecodeErrorZ_clone_ptr(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_BlindedForwardDecodeErrorZ* arg_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_BlindedForwardDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_BlindedForwardDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_BlindedForwardDecodeErrorZ* orig_conv = (LDKCResult_BlindedForwardDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = CResult_BlindedForwardDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKPendingHTLCRouting o_conv = *(LDKPendingHTLCRouting*)(o_ptr);
+ o_conv = PendingHTLCRouting_clone((LDKPendingHTLCRouting*)untag_ptr(o));
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* o_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ _res_conv = *(LDKCResult_PendingHTLCRoutingDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_PendingHTLCRoutingDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* arg_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* orig_conv = (LDKCResult_PendingHTLCRoutingDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCRoutingDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_ok(int64_t o) {
+ LDKPendingHTLCInfo o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = PendingHTLCInfo_clone(&o_conv);
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* o_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_PendingHTLCInfoDecodeErrorZ _res_conv = *(LDKCResult_PendingHTLCInfoDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_PendingHTLCInfoDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* arg_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* orig_conv = (LDKCResult_PendingHTLCInfoDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = CResult_PendingHTLCInfoDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_ok(int32_t o) {
+ LDKBlindedFailure o_conv = LDKBlindedFailure_from_cs(o);
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_BlindedFailureDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_BlindedFailureDecodeErrorZ* o_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_BlindedFailureDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_BlindedFailureDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_BlindedFailureDecodeErrorZ _res_conv = *(LDKCResult_BlindedFailureDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_BlindedFailureDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_BlindedFailureDecodeErrorZ_clone_ptr(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_BlindedFailureDecodeErrorZ* arg_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_BlindedFailureDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_BlindedFailureDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_BlindedFailureDecodeErrorZ* orig_conv = (LDKCResult_BlindedFailureDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = CResult_BlindedFailureDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_ChannelShutdownStateDecodeErrorZ_ok(int32_t o) {
LDKChannelShutdownState o_conv = LDKChannelShutdownState_from_cs(o);
LDKCResult_ChannelShutdownStateDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ChannelShutdownStateDecodeErrorZ), "LDKCResult_ChannelShutdownStateDecodeErrorZ");
CVec_C2Tuple_PublicKeyTypeZZ_free(_res_constr);
}
+static inline uint64_t C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR arg) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(int64_t arg) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* arg_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(int64_t orig) {
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* orig_conv = (LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)untag_ptr(orig);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_new(int8_tArray a, int64_tArray b) {
+ LDKPublicKey a_ref;
+ CHECK(a->arr_len == 33);
+ memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
+ LDKCVec_SocketAddressZ b_constr;
+ b_constr.datalen = b->arr_len;
+ if (b_constr.datalen > 0)
+ b_constr.data = MALLOC(b_constr.datalen * sizeof(LDKSocketAddress), "LDKCVec_SocketAddressZ Elements");
+ else
+ b_constr.data = NULL;
+ int64_t* b_vals = b->elems;
+ for (size_t p = 0; p < b_constr.datalen; p++) {
+ int64_t b_conv_15 = b_vals[p];
+ void* b_conv_15_ptr = untag_ptr(b_conv_15);
+ CHECK_ACCESS(b_conv_15_ptr);
+ LDKSocketAddress b_conv_15_conv = *(LDKSocketAddress*)(b_conv_15_ptr);
+ b_conv_15_conv = SocketAddress_clone((LDKSocketAddress*)untag_ptr(b_conv_15));
+ b_constr.data[p] = b_conv_15_conv;
+ }
+ FREE(b);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKC2Tuple_PublicKeyCVec_SocketAddressZZ");
+ *ret_conv = C2Tuple_PublicKeyCVec_SocketAddressZZ_new(a_ref, b_constr);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ _res_conv = *(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ C2Tuple_PublicKeyCVec_SocketAddressZZ_free(_res_conv);
+}
+
+void CS_LDK_CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free(int64_tArray _res) {
+ LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ), "LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ Elements");
+ else
+ _res_constr.data = NULL;
+ int64_t* _res_vals = _res->elems;
+ for (size_t o = 0; o < _res_constr.datalen; o++) {
+ int64_t _res_conv_40 = _res_vals[o];
+ void* _res_conv_40_ptr = untag_ptr(_res_conv_40);
+ CHECK_ACCESS(_res_conv_40_ptr);
+ LDKC2Tuple_PublicKeyCVec_SocketAddressZZ _res_conv_40_conv = *(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ*)(_res_conv_40_ptr);
+ FREE(untag_ptr(_res_conv_40));
+ _res_constr.data[o] = _res_conv_40_conv;
+ }
+ FREE(_res);
+ CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free(_res_constr);
+}
+
int64_t CS_LDK_COption_OnionMessageContentsZ_some(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_ok(int64_t o) {
+ LDKStfu o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = Stfu_clone(&o_conv);
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_StfuDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_StfuDecodeErrorZ* o_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_StfuDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_StfuDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_StfuDecodeErrorZ _res_conv = *(LDKCResult_StfuDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_StfuDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_StfuDecodeErrorZ_clone_ptr(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_StfuDecodeErrorZ* arg_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_StfuDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_StfuDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_StfuDecodeErrorZ* orig_conv = (LDKCResult_StfuDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = CResult_StfuDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_ok(int64_t o) {
+ LDKSplice o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = Splice_clone(&o_conv);
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_SpliceDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_SpliceDecodeErrorZ* o_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SpliceDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_SpliceDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_SpliceDecodeErrorZ _res_conv = *(LDKCResult_SpliceDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_SpliceDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_SpliceDecodeErrorZ_clone_ptr(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_SpliceDecodeErrorZ* arg_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_SpliceDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_SpliceDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_SpliceDecodeErrorZ* orig_conv = (LDKCResult_SpliceDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = CResult_SpliceDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_ok(int64_t o) {
+ LDKSpliceAck o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = SpliceAck_clone(&o_conv);
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_SpliceAckDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_SpliceAckDecodeErrorZ* o_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SpliceAckDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_SpliceAckDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_SpliceAckDecodeErrorZ _res_conv = *(LDKCResult_SpliceAckDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_SpliceAckDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_SpliceAckDecodeErrorZ_clone_ptr(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_SpliceAckDecodeErrorZ* arg_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_SpliceAckDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_SpliceAckDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_SpliceAckDecodeErrorZ* orig_conv = (LDKCResult_SpliceAckDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = CResult_SpliceAckDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_ok(int64_t o) {
+ LDKSpliceLocked o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = SpliceLocked_clone(&o_conv);
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_SpliceLockedDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_SpliceLockedDecodeErrorZ* o_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SpliceLockedDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_SpliceLockedDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_SpliceLockedDecodeErrorZ _res_conv = *(LDKCResult_SpliceLockedDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_SpliceLockedDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_SpliceLockedDecodeErrorZ_clone_ptr(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_SpliceLockedDecodeErrorZ* arg_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_SpliceLockedDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_SpliceLockedDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_SpliceLockedDecodeErrorZ* orig_conv = (LDKCResult_SpliceLockedDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = CResult_SpliceLockedDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_TxAddInputDecodeErrorZ_ok(int64_t o) {
LDKTxAddInput o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_ok(int64_t o) {
+ LDKOnionPacket o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = OnionPacket_clone(&o_conv);
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_OnionPacketDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_OnionPacketDecodeErrorZ* o_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_OnionPacketDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_OnionPacketDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_OnionPacketDecodeErrorZ _res_conv = *(LDKCResult_OnionPacketDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_OnionPacketDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_OnionPacketDecodeErrorZ_clone_ptr(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_OnionPacketDecodeErrorZ* arg_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_OnionPacketDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_OnionPacketDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_OnionPacketDecodeErrorZ* orig_conv = (LDKCResult_OnionPacketDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = CResult_OnionPacketDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_UpdateAddHTLCDecodeErrorZ_ok(int64_t o) {
LDKUpdateAddHTLC o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_ok(int64_t o) {
+ LDKFinalOnionHopData o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = FinalOnionHopData_clone(&o_conv);
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* o_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_FinalOnionHopDataDecodeErrorZ _res_conv = *(LDKCResult_FinalOnionHopDataDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_FinalOnionHopDataDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* arg_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* orig_conv = (LDKCResult_FinalOnionHopDataDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = CResult_FinalOnionHopDataDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_CResult_PingDecodeErrorZ_ok(int64_t o) {
LDKPing o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_ok(int64_t o) {
- LDKReceiveTlvs o_conv;
- o_conv.inner = untag_ptr(o);
- o_conv.is_owned = ptr_is_owned(o);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
- o_conv = ReceiveTlvs_clone(&o_conv);
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_ok(o_conv);
+static inline uint64_t C2Tuple__u832u16Z_clone_ptr(LDKC2Tuple__u832u16Z *NONNULL_PTR arg) {
+ LDKC2Tuple__u832u16Z* ret_conv = MALLOC(sizeof(LDKC2Tuple__u832u16Z), "LDKC2Tuple__u832u16Z");
+ *ret_conv = C2Tuple__u832u16Z_clone(arg);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_C2Tuple__u832u16Z_clone_ptr(int64_t arg) {
+ LDKC2Tuple__u832u16Z* arg_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(arg);
+ int64_t ret_conv = C2Tuple__u832u16Z_clone_ptr(arg_conv);
+ return ret_conv;
+}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
- e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_err(e_conv);
+int64_t CS_LDK_C2Tuple__u832u16Z_clone(int64_t orig) {
+ LDKC2Tuple__u832u16Z* orig_conv = (LDKC2Tuple__u832u16Z*)untag_ptr(orig);
+ LDKC2Tuple__u832u16Z* ret_conv = MALLOC(sizeof(LDKC2Tuple__u832u16Z), "LDKC2Tuple__u832u16Z");
+ *ret_conv = C2Tuple__u832u16Z_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_is_ok(int64_t o) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* o_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_ReceiveTlvsDecodeErrorZ_is_ok(o_conv);
- return ret_conv;
+int64_t CS_LDK_C2Tuple__u832u16Z_new(int8_tArray a, int16_t b) {
+ LDKThirtyTwoBytes a_ref;
+ CHECK(a->arr_len == 32);
+ memcpy(a_ref.data, a->elems, 32); FREE(a);
+ LDKC2Tuple__u832u16Z* ret_conv = MALLOC(sizeof(LDKC2Tuple__u832u16Z), "LDKC2Tuple__u832u16Z");
+ *ret_conv = C2Tuple__u832u16Z_new(a_ref, b);
+ return tag_ptr(ret_conv, true);
}
-void CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_free(int64_t _res) {
+void CS_LDK_C2Tuple__u832u16Z_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_ReceiveTlvsDecodeErrorZ _res_conv = *(LDKCResult_ReceiveTlvsDecodeErrorZ*)(_res_ptr);
+ LDKC2Tuple__u832u16Z _res_conv = *(LDKC2Tuple__u832u16Z*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_ReceiveTlvsDecodeErrorZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR arg) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* arg_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_clone(int64_t orig) {
- LDKCResult_ReceiveTlvsDecodeErrorZ* orig_conv = (LDKCResult_ReceiveTlvsDecodeErrorZ*)untag_ptr(orig);
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = CResult_ReceiveTlvsDecodeErrorZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
+ C2Tuple__u832u16Z_free(_res_conv);
}
int64_t CS_LDK_CResult_PaymentRelayDecodeErrorZ_ok(int64_t o) {
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_ok(int8_tArray o) {
- LDKThirtyTwoBytes o_ref;
- CHECK(o->arr_len == 32);
- memcpy(o_ref.data, o->elems, 32); FREE(o);
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_ok(o_ref);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKPaymentError e_conv = *(LDKPaymentError*)(e_ptr);
- e_conv = PaymentError_clone((LDKPaymentError*)untag_ptr(e));
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_err(e_conv);
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(int64_t o) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* o_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_ThirtyTwoBytesPaymentErrorZ _res_conv = *(LDKCResult_ThirtyTwoBytesPaymentErrorZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_ThirtyTwoBytesPaymentErrorZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR arg) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_clone(arg);
+static inline uint64_t C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR arg) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* arg_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(int64_t arg) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* arg_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(arg);
+ int64_t ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_clone(int64_t orig) {
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* orig_conv = (LDKCResult_ThirtyTwoBytesPaymentErrorZ*)untag_ptr(orig);
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = CResult_ThirtyTwoBytesPaymentErrorZ_clone(orig_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(int64_t orig) {
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* orig_conv = (LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(orig);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_NonePaymentErrorZ_ok() {
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_ok();
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_NonePaymentErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKPaymentError e_conv = *(LDKPaymentError*)(e_ptr);
- e_conv = PaymentError_clone((LDKPaymentError*)untag_ptr(e));
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_err(e_conv);
+int64_t CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(int8_tArray a, int64_t b, int64_t c) {
+ LDKThirtyTwoBytes a_ref;
+ CHECK(a->arr_len == 32);
+ memcpy(a_ref.data, a->elems, 32); FREE(a);
+ LDKRecipientOnionFields b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv = RecipientOnionFields_clone(&b_conv);
+ LDKRouteParameters c_conv;
+ c_conv.inner = untag_ptr(c);
+ c_conv.is_owned = ptr_is_owned(c);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(c_conv);
+ c_conv = RouteParameters_clone(&c_conv);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ), "LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ");
+ *ret_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(a_ref, b_conv, c_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_NonePaymentErrorZ_is_ok(int64_t o) {
- LDKCResult_NonePaymentErrorZ* o_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_NonePaymentErrorZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_NonePaymentErrorZ_free(int64_t _res) {
+void CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_NonePaymentErrorZ _res_conv = *(LDKCResult_NonePaymentErrorZ*)(_res_ptr);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ _res_conv = *(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_NonePaymentErrorZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_NonePaymentErrorZ_clone_ptr(LDKCResult_NonePaymentErrorZ *NONNULL_PTR arg) {
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_NonePaymentErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_NonePaymentErrorZ* arg_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_NonePaymentErrorZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_NonePaymentErrorZ_clone(int64_t orig) {
- LDKCResult_NonePaymentErrorZ* orig_conv = (LDKCResult_NonePaymentErrorZ*)untag_ptr(orig);
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = CResult_NonePaymentErrorZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
+ C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(_res_conv);
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(int64_tArray o) {
- LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ o_constr;
- o_constr.datalen = o->arr_len;
- if (o_constr.datalen > 0)
- o_constr.data = MALLOC(o_constr.datalen * sizeof(LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ), "LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ Elements");
- else
- o_constr.data = NULL;
- int64_t* o_vals = o->elems;
- for (size_t o = 0; o < o_constr.datalen; o++) {
- int64_t o_conv_40 = o_vals[o];
- void* o_conv_40_ptr = untag_ptr(o_conv_40);
- CHECK_ACCESS(o_conv_40_ptr);
- LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ o_conv_40_conv = *(LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ*)(o_conv_40_ptr);
- o_conv_40_conv = C2Tuple_ThirtyTwoBytesThirtyTwoBytesZ_clone((LDKC2Tuple_ThirtyTwoBytesThirtyTwoBytesZ*)untag_ptr(o_conv_40));
- o_constr.data[o] = o_conv_40_conv;
- }
- FREE(o);
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(o_constr);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ o_conv = *(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)(o_ptr);
+ o_conv = C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone((LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ*)untag_ptr(o));
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(int64_t e) {
- void* e_ptr = untag_ptr(e);
- CHECK_ACCESS(e_ptr);
- LDKProbingError e_conv = *(LDKProbingError*)(e_ptr);
- e_conv = ProbingError_clone((LDKProbingError*)untag_ptr(e));
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(e_conv);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err() {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err();
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(int64_t o) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* o_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(int64_t o) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* o_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(int64_t _res) {
+void CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ _res_conv = *(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)(_res_ptr);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ _res_conv = *(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(_res_conv);
+ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(_res_conv);
}
-static inline uint64_t CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR arg) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(arg);
+static inline uint64_t CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR arg) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(int64_t arg) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* arg_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(arg_conv);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(int64_t arg) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* arg_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(int64_t orig) {
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* orig_conv = (LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ*)untag_ptr(orig);
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(orig_conv);
+int64_t CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(int64_t orig) {
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* orig_conv = (LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ*)untag_ptr(orig);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_ok(int64_t o) {
- LDKOnionMessagePath o_conv;
- o_conv.inner = untag_ptr(o);
- o_conv.is_owned = ptr_is_owned(o);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
- o_conv = OnionMessagePath_clone(&o_conv);
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_ok(o_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_err() {
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_err();
- return tag_ptr(ret_conv, true);
-}
-
-jboolean CS_LDK_CResult_OnionMessagePathNoneZ_is_ok(int64_t o) {
- LDKCResult_OnionMessagePathNoneZ* o_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(o);
- jboolean ret_conv = CResult_OnionMessagePathNoneZ_is_ok(o_conv);
- return ret_conv;
-}
-
-void CS_LDK_CResult_OnionMessagePathNoneZ_free(int64_t _res) {
- if (!ptr_is_owned(_res)) return;
- void* _res_ptr = untag_ptr(_res);
- CHECK_ACCESS(_res_ptr);
- LDKCResult_OnionMessagePathNoneZ _res_conv = *(LDKCResult_OnionMessagePathNoneZ*)(_res_ptr);
- FREE(untag_ptr(_res));
- CResult_OnionMessagePathNoneZ_free(_res_conv);
-}
-
-static inline uint64_t CResult_OnionMessagePathNoneZ_clone_ptr(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR arg) {
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_clone(arg);
- return tag_ptr(ret_conv, true);
-}
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone_ptr(int64_t arg) {
- LDKCResult_OnionMessagePathNoneZ* arg_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(arg);
- int64_t ret_conv = CResult_OnionMessagePathNoneZ_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_CResult_OnionMessagePathNoneZ_clone(int64_t orig) {
- LDKCResult_OnionMessagePathNoneZ* orig_conv = (LDKCResult_OnionMessagePathNoneZ*)untag_ptr(orig);
- LDKCResult_OnionMessagePathNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionMessagePathNoneZ), "LDKCResult_OnionMessagePathNoneZ");
- *ret_conv = CResult_OnionMessagePathNoneZ_clone(orig_conv);
- return tag_ptr(ret_conv, true);
-}
-
-static inline uint64_t C2Tuple_PublicKeyOnionMessageZ_clone_ptr(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR arg) {
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = C2Tuple_PublicKeyOnionMessageZ_clone(arg);
+static inline uint64_t C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR arg) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(arg);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_clone_ptr(int64_t arg) {
- LDKC2Tuple_PublicKeyOnionMessageZ* arg_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(arg);
- int64_t ret_conv = C2Tuple_PublicKeyOnionMessageZ_clone_ptr(arg_conv);
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(int64_t arg) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* arg_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(arg);
+ int64_t ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(arg_conv);
return ret_conv;
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_clone(int64_t orig) {
- LDKC2Tuple_PublicKeyOnionMessageZ* orig_conv = (LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(orig);
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = C2Tuple_PublicKeyOnionMessageZ_clone(orig_conv);
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(int64_t orig) {
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* orig_conv = (LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(orig);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(orig_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_C2Tuple_PublicKeyOnionMessageZ_new(int8_tArray a, int64_t b) {
+int64_t CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(int8_tArray a, int64_t b, int64_t c) {
LDKPublicKey a_ref;
CHECK(a->arr_len == 33);
memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
b_conv.is_owned = ptr_is_owned(b);
CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
b_conv = OnionMessage_clone(&b_conv);
- LDKC2Tuple_PublicKeyOnionMessageZ* ret_conv = MALLOC(sizeof(LDKC2Tuple_PublicKeyOnionMessageZ), "LDKC2Tuple_PublicKeyOnionMessageZ");
- *ret_conv = C2Tuple_PublicKeyOnionMessageZ_new(a_ref, b_conv);
+ void* c_ptr = untag_ptr(c);
+ CHECK_ACCESS(c_ptr);
+ LDKCOption_CVec_SocketAddressZZ c_conv = *(LDKCOption_CVec_SocketAddressZZ*)(c_ptr);
+ c_conv = COption_CVec_SocketAddressZZ_clone((LDKCOption_CVec_SocketAddressZZ*)untag_ptr(c));
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ* ret_conv = MALLOC(sizeof(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ), "LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ");
+ *ret_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(a_ref, b_conv, c_conv);
return tag_ptr(ret_conv, true);
}
-void CS_LDK_C2Tuple_PublicKeyOnionMessageZ_free(int64_t _res) {
+void CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKC2Tuple_PublicKeyOnionMessageZ _res_conv = *(LDKC2Tuple_PublicKeyOnionMessageZ*)(_res_ptr);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ _res_conv = *(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)(_res_ptr);
FREE(untag_ptr(_res));
- C2Tuple_PublicKeyOnionMessageZ_free(_res_conv);
+ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(_res_conv);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(int64_t o) {
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
- LDKC2Tuple_PublicKeyOnionMessageZ o_conv = *(LDKC2Tuple_PublicKeyOnionMessageZ*)(o_ptr);
- o_conv = C2Tuple_PublicKeyOnionMessageZ_clone((LDKC2Tuple_PublicKeyOnionMessageZ*)untag_ptr(o));
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ), "LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ");
- *ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(o_conv);
+ LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ o_conv = *(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)(o_ptr);
+ o_conv = C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone((LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ*)untag_ptr(o));
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ), "LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ");
+ *ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(int64_t e) {
+int64_t CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(int64_t e) {
void* e_ptr = untag_ptr(e);
CHECK_ACCESS(e_ptr);
LDKSendError e_conv = *(LDKSendError*)(e_ptr);
e_conv = SendError_clone((LDKSendError*)untag_ptr(e));
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ), "LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ");
- *ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(e_conv);
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ), "LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ");
+ *ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(e_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(int64_t o) {
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* o_conv = (LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(int64_t o) {
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* o_conv = (LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(int64_t _res) {
+void CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ _res_conv = *(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ*)(_res_ptr);
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ _res_conv = *(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(_res_conv);
+ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(_res_conv);
}
int64_t CS_LDK_CResult_PeeledOnionNoneZ_ok(int64_t o) {
CResult_PeeledOnionNoneZ_free(_res_conv);
}
-int64_t CS_LDK_CResult_NoneSendErrorZ_ok() {
- LDKCResult_NoneSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSendErrorZ), "LDKCResult_NoneSendErrorZ");
- *ret_conv = CResult_NoneSendErrorZ_ok();
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_ok(int64_t o) {
+ void* o_ptr = untag_ptr(o);
+ CHECK_ACCESS(o_ptr);
+ LDKSendSuccess o_conv = *(LDKSendSuccess*)(o_ptr);
+ o_conv = SendSuccess_clone((LDKSendSuccess*)untag_ptr(o));
+ LDKCResult_SendSuccessSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SendSuccessSendErrorZ), "LDKCResult_SendSuccessSendErrorZ");
+ *ret_conv = CResult_SendSuccessSendErrorZ_ok(o_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_CResult_NoneSendErrorZ_err(int64_t e) {
+int64_t CS_LDK_CResult_SendSuccessSendErrorZ_err(int64_t e) {
void* e_ptr = untag_ptr(e);
CHECK_ACCESS(e_ptr);
LDKSendError e_conv = *(LDKSendError*)(e_ptr);
e_conv = SendError_clone((LDKSendError*)untag_ptr(e));
- LDKCResult_NoneSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSendErrorZ), "LDKCResult_NoneSendErrorZ");
- *ret_conv = CResult_NoneSendErrorZ_err(e_conv);
+ LDKCResult_SendSuccessSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SendSuccessSendErrorZ), "LDKCResult_SendSuccessSendErrorZ");
+ *ret_conv = CResult_SendSuccessSendErrorZ_err(e_conv);
return tag_ptr(ret_conv, true);
}
-jboolean CS_LDK_CResult_NoneSendErrorZ_is_ok(int64_t o) {
- LDKCResult_NoneSendErrorZ* o_conv = (LDKCResult_NoneSendErrorZ*)untag_ptr(o);
- jboolean ret_conv = CResult_NoneSendErrorZ_is_ok(o_conv);
+jboolean CS_LDK_CResult_SendSuccessSendErrorZ_is_ok(int64_t o) {
+ LDKCResult_SendSuccessSendErrorZ* o_conv = (LDKCResult_SendSuccessSendErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_SendSuccessSendErrorZ_is_ok(o_conv);
return ret_conv;
}
-void CS_LDK_CResult_NoneSendErrorZ_free(int64_t _res) {
+void CS_LDK_CResult_SendSuccessSendErrorZ_free(int64_t _res) {
if (!ptr_is_owned(_res)) return;
void* _res_ptr = untag_ptr(_res);
CHECK_ACCESS(_res_ptr);
- LDKCResult_NoneSendErrorZ _res_conv = *(LDKCResult_NoneSendErrorZ*)(_res_ptr);
+ LDKCResult_SendSuccessSendErrorZ _res_conv = *(LDKCResult_SendSuccessSendErrorZ*)(_res_ptr);
FREE(untag_ptr(_res));
- CResult_NoneSendErrorZ_free(_res_conv);
+ CResult_SendSuccessSendErrorZ_free(_res_conv);
}
int64_t CS_LDK_CResult_BlindedPathNoneZ_ok(int64_t o) {
return tag_ptr(ret_conv, true);
}
+void CS_LDK_CVec_ForwardNodeZ_free(int64_tArray _res) {
+ LDKCVec_ForwardNodeZ _res_constr;
+ _res_constr.datalen = _res->arr_len;
+ if (_res_constr.datalen > 0)
+ _res_constr.data = MALLOC(_res_constr.datalen * sizeof(LDKForwardNode), "LDKCVec_ForwardNodeZ Elements");
+ else
+ _res_constr.data = NULL;
+ int64_t* _res_vals = _res->elems;
+ for (size_t n = 0; n < _res_constr.datalen; n++) {
+ int64_t _res_conv_13 = _res_vals[n];
+ LDKForwardNode _res_conv_13_conv;
+ _res_conv_13_conv.inner = untag_ptr(_res_conv_13);
+ _res_conv_13_conv.is_owned = ptr_is_owned(_res_conv_13);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(_res_conv_13_conv);
+ _res_constr.data[n] = _res_conv_13_conv;
+ }
+ FREE(_res);
+ CVec_ForwardNodeZ_free(_res_constr);
+}
+
int64_t CS_LDK_CResult_BlindedPathDecodeErrorZ_ok(int64_t o) {
LDKBlindedPath o_conv;
o_conv.inner = untag_ptr(o);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_ok(int64_t o) {
+ LDKDelayedPaymentBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = DelayedPaymentBasepoint_clone(&o_conv);
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_DelayedPaymentBasepointDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentBasepointDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentBasepointDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_ok(int64_t o) {
+ LDKDelayedPaymentKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = DelayedPaymentKey_clone(&o_conv);
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* o_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ _res_conv = *(LDKCResult_DelayedPaymentKeyDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_DelayedPaymentKeyDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* arg_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* orig_conv = (LDKCResult_DelayedPaymentKeyDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = CResult_DelayedPaymentKeyDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_ok(int64_t o) {
+ LDKHtlcBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = HtlcBasepoint_clone(&o_conv);
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_HtlcBasepointDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* o_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_HtlcBasepointDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_HtlcBasepointDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_HtlcBasepointDecodeErrorZ _res_conv = *(LDKCResult_HtlcBasepointDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_HtlcBasepointDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_HtlcBasepointDecodeErrorZ_clone_ptr(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* arg_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_HtlcBasepointDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_HtlcBasepointDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_HtlcBasepointDecodeErrorZ* orig_conv = (LDKCResult_HtlcBasepointDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = CResult_HtlcBasepointDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_ok(int64_t o) {
+ LDKHtlcKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = HtlcKey_clone(&o_conv);
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_HtlcKeyDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_HtlcKeyDecodeErrorZ* o_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_HtlcKeyDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_HtlcKeyDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_HtlcKeyDecodeErrorZ _res_conv = *(LDKCResult_HtlcKeyDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_HtlcKeyDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_HtlcKeyDecodeErrorZ_clone_ptr(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_HtlcKeyDecodeErrorZ* arg_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_HtlcKeyDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_HtlcKeyDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_HtlcKeyDecodeErrorZ* orig_conv = (LDKCResult_HtlcKeyDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = CResult_HtlcKeyDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_ok(int64_t o) {
+ LDKRevocationBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = RevocationBasepoint_clone(&o_conv);
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_RevocationBasepointDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* o_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_RevocationBasepointDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_RevocationBasepointDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_RevocationBasepointDecodeErrorZ _res_conv = *(LDKCResult_RevocationBasepointDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_RevocationBasepointDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_RevocationBasepointDecodeErrorZ_clone_ptr(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* arg_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_RevocationBasepointDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_RevocationBasepointDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_RevocationBasepointDecodeErrorZ* orig_conv = (LDKCResult_RevocationBasepointDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = CResult_RevocationBasepointDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_ok(int64_t o) {
+ LDKRevocationKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv = RevocationKey_clone(&o_conv);
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_ok(o_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_err(int64_t e) {
+ void* e_ptr = untag_ptr(e);
+ CHECK_ACCESS(e_ptr);
+ LDKDecodeError e_conv = *(LDKDecodeError*)(e_ptr);
+ e_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(e));
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_err(e_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+jboolean CS_LDK_CResult_RevocationKeyDecodeErrorZ_is_ok(int64_t o) {
+ LDKCResult_RevocationKeyDecodeErrorZ* o_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(o);
+ jboolean ret_conv = CResult_RevocationKeyDecodeErrorZ_is_ok(o_conv);
+ return ret_conv;
+}
+
+void CS_LDK_CResult_RevocationKeyDecodeErrorZ_free(int64_t _res) {
+ if (!ptr_is_owned(_res)) return;
+ void* _res_ptr = untag_ptr(_res);
+ CHECK_ACCESS(_res_ptr);
+ LDKCResult_RevocationKeyDecodeErrorZ _res_conv = *(LDKCResult_RevocationKeyDecodeErrorZ*)(_res_ptr);
+ FREE(untag_ptr(_res));
+ CResult_RevocationKeyDecodeErrorZ_free(_res_conv);
+}
+
+static inline uint64_t CResult_RevocationKeyDecodeErrorZ_clone_ptr(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR arg) {
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_clone(arg);
+ return tag_ptr(ret_conv, true);
+}
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_clone_ptr(int64_t arg) {
+ LDKCResult_RevocationKeyDecodeErrorZ* arg_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(arg);
+ int64_t ret_conv = CResult_RevocationKeyDecodeErrorZ_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CResult_RevocationKeyDecodeErrorZ_clone(int64_t orig) {
+ LDKCResult_RevocationKeyDecodeErrorZ* orig_conv = (LDKCResult_RevocationKeyDecodeErrorZ*)untag_ptr(orig);
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = CResult_RevocationKeyDecodeErrorZ_clone(orig_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int64_t CS_LDK_COption_FilterZ_some(int64_t o) {
void* o_ptr = untag_ptr(o);
CHECK_ACCESS(o_ptr);
return ret_ref;
}
+int64_t CS_LDK_Hostname_hash(int64_t o) {
+ LDKHostname o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Hostname_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Hostname_eq(int64_t a, int64_t b) {
LDKHostname a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TransactionU16LenLimited_hash(int64_t o) {
+ LDKTransactionU16LenLimited o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TransactionU16LenLimited_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TransactionU16LenLimited_eq(int64_t a, int64_t b) {
LDKTransactionU16LenLimited a_conv;
a_conv.inner = untag_ptr(a);
return ret_conv;
}
+int64_t CS_LDK_UntrustedString_hash(int64_t o) {
+ LDKUntrustedString o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UntrustedString_hash(&o_conv);
+ return ret_conv;
+}
+
int8_tArray CS_LDK_UntrustedString_write(int64_t obj) {
LDKUntrustedString obj_conv;
obj_conv.inner = untag_ptr(obj);
Record_set_level(&this_ptr_conv, val_conv);
}
+int8_tArray CS_LDK_Record_get_peer_id(int64_t this_ptr) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, Record_get_peer_id(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_Record_set_peer_id(int64_t this_ptr, int8_tArray val) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ Record_set_peer_id(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_Record_get_channel_id(int64_t this_ptr) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_ThirtyTwoBytesZ *ret_copy = MALLOC(sizeof(LDKCOption_ThirtyTwoBytesZ), "LDKCOption_ThirtyTwoBytesZ");
+ *ret_copy = Record_get_channel_id(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_Record_set_channel_id(int64_t this_ptr, int64_t val) {
+ LDKRecord this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_ThirtyTwoBytesZ val_conv = *(LDKCOption_ThirtyTwoBytesZ*)(val_ptr);
+ val_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(val));
+ Record_set_channel_id(&this_ptr_conv, val_conv);
+}
+
jstring CS_LDK_Record_get_args(int64_t this_ptr) {
LDKRecord this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
Record_set_line(&this_ptr_conv, val);
}
+int64_t CS_LDK_Record_new(int32_t level_arg, int8_tArray peer_id_arg, int64_t channel_id_arg, jstring args_arg, jstring module_path_arg, jstring file_arg, int32_t line_arg) {
+ LDKLevel level_arg_conv = LDKLevel_from_cs(level_arg);
+ LDKPublicKey peer_id_arg_ref;
+ CHECK(peer_id_arg->arr_len == 33);
+ memcpy(peer_id_arg_ref.compressed_form, peer_id_arg->elems, 33); FREE(peer_id_arg);
+ void* channel_id_arg_ptr = untag_ptr(channel_id_arg);
+ CHECK_ACCESS(channel_id_arg_ptr);
+ LDKCOption_ThirtyTwoBytesZ channel_id_arg_conv = *(LDKCOption_ThirtyTwoBytesZ*)(channel_id_arg_ptr);
+ channel_id_arg_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(channel_id_arg));
+ LDKStr args_arg_conv = str_ref_to_owned_c(args_arg);
+ LDKStr module_path_arg_conv = str_ref_to_owned_c(module_path_arg);
+ LDKStr file_arg_conv = str_ref_to_owned_c(file_arg);
+ LDKRecord ret_var = Record_new(level_arg_conv, peer_id_arg_ref, channel_id_arg_conv, args_arg_conv, module_path_arg_conv, file_arg_conv, line_arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
static inline uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg) {
LDKRecord ret_var = Record_clone(arg);
int64_t ret_ref = 0;
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = WatchedOutput_get_script_pubkey(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_conv;
}
-int32_t CS_LDK_ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee() {
- int32_t ret_conv = LDKConfirmationTarget_to_cs(ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee());
- return ret_conv;
-}
-
int32_t CS_LDK_ConfirmationTarget_min_allowed_anchor_channel_remote_fee() {
int32_t ret_conv = LDKConfirmationTarget_to_cs(ConfirmationTarget_min_allowed_anchor_channel_remote_fee());
return ret_conv;
return ret_arr;
}
-void CS_LDK_ChannelMonitor_load_outputs_to_watch(int64_t this_arg, int64_t filter) {
+void CS_LDK_ChannelMonitor_load_outputs_to_watch(int64_t this_arg, int64_t filter, int64_t logger) {
LDKChannelMonitor this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
void* filter_ptr = untag_ptr(filter);
if (ptr_is_owned(filter)) { CHECK_ACCESS(filter_ptr); }
LDKFilter* filter_conv = (LDKFilter*)filter_ptr;
- ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv);
+ void* logger_ptr = untag_ptr(logger);
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
+ ChannelMonitor_load_outputs_to_watch(&this_arg_conv, filter_conv, logger_conv);
}
int64_tArray CS_LDK_ChannelMonitor_get_and_clear_pending_monitor_events(int64_t this_arg) {
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_block_connected(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
ChannelMonitor_block_disconnected(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv);
}
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_transactions_confirmed(&this_arg_conv, header_ref, txdata_constr, height, broadcaster_conv, fee_estimator_conv, logger_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
ChannelMonitor_transaction_unconfirmed(&this_arg_conv, txid_ref, broadcaster_conv, fee_estimator_conv, logger_conv);
}
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ret_var = ChannelMonitor_best_block_updated(&this_arg_conv, header_ref, height, broadcaster_conv, fee_estimator_conv, logger_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
this_arg_conv.is_owned = false;
- LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv);
+ LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ret_var = ChannelMonitor_get_relevant_txids(&this_arg_conv);
int64_tArray ret_arr = NULL;
ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
- for (size_t x = 0; x < ret_var.datalen; x++) {
- LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ* ret_conv_49_conv = MALLOC(sizeof(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ), "LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ");
- *ret_conv_49_conv = ret_var.data[x];
- ret_arr_ptr[x] = tag_ptr(ret_conv_49_conv, true);
+ for (size_t c = 0; c < ret_var.datalen; c++) {
+ LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ* ret_conv_54_conv = MALLOC(sizeof(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ), "LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ");
+ *ret_conv_54_conv = ret_var.data[c];
+ ret_arr_ptr[c] = tag_ptr(ret_conv_54_conv, true);
}
FREE(ret_var.data);
LDKFeeEstimator_JCalls_cloned(&fee_estimator_conv);
}
void* logger_ptr = untag_ptr(logger);
- CHECK_ACCESS(logger_ptr);
- LDKLogger logger_conv = *(LDKLogger*)(logger_ptr);
- if (logger_conv.free == LDKLogger_JCalls_free) {
- // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
- LDKLogger_JCalls_cloned(&logger_conv);
- }
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
ChannelMonitor_rebroadcast_pending_claims(&this_arg_conv, broadcaster_conv, fee_estimator_conv, logger_conv);
}
return tag_ptr(ret_conv, true);
}
+void CS_LDK_InboundHTLCErr_free(int64_t this_obj) {
+ LDKInboundHTLCErr this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ InboundHTLCErr_free(this_obj_conv);
+}
+
+int16_t CS_LDK_InboundHTLCErr_get_err_code(int64_t this_ptr) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int16_t ret_conv = InboundHTLCErr_get_err_code(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_InboundHTLCErr_set_err_code(int64_t this_ptr, int16_t val) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ InboundHTLCErr_set_err_code(&this_ptr_conv, val);
+}
+
+int8_tArray CS_LDK_InboundHTLCErr_get_err_data(int64_t this_ptr) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = InboundHTLCErr_get_err_data(&this_ptr_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+void CS_LDK_InboundHTLCErr_set_err_data(int64_t this_ptr, int8_tArray val) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u8Z val_ref;
+ val_ref.datalen = val->arr_len;
+ val_ref.data = MALLOC(val_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(val_ref.data, val->elems, val_ref.datalen); FREE(val);
+ InboundHTLCErr_set_err_data(&this_ptr_conv, val_ref);
+}
+
+jstring CS_LDK_InboundHTLCErr_get_msg(int64_t this_ptr) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKStr ret_str = InboundHTLCErr_get_msg(&this_ptr_conv);
+ jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
+ Str_free(ret_str);
+ return ret_conv;
+}
+
+void CS_LDK_InboundHTLCErr_set_msg(int64_t this_ptr, jstring val) {
+ LDKInboundHTLCErr this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKStr val_conv = str_ref_to_owned_c(val);
+ InboundHTLCErr_set_msg(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_InboundHTLCErr_new(int16_t err_code_arg, int8_tArray err_data_arg, jstring msg_arg) {
+ LDKCVec_u8Z err_data_arg_ref;
+ err_data_arg_ref.datalen = err_data_arg->arr_len;
+ err_data_arg_ref.data = MALLOC(err_data_arg_ref.datalen, "LDKCVec_u8Z Bytes");
+ memcpy(err_data_arg_ref.data, err_data_arg->elems, err_data_arg_ref.datalen); FREE(err_data_arg);
+ LDKStr msg_arg_conv = str_ref_to_owned_c(msg_arg);
+ LDKInboundHTLCErr ret_var = InboundHTLCErr_new(err_code_arg, err_data_arg_ref, msg_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_peel_payment_onion(int64_t msg, int64_t node_signer, int64_t logger, int32_t cur_height, jboolean accept_mpp_keysend, jboolean allow_skimmed_fees) {
+ LDKUpdateAddHTLC msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv.is_owned = false;
+ void* node_signer_ptr = untag_ptr(node_signer);
+ if (ptr_is_owned(node_signer)) { CHECK_ACCESS(node_signer_ptr); }
+ LDKNodeSigner* node_signer_conv = (LDKNodeSigner*)node_signer_ptr;
+ void* logger_ptr = untag_ptr(logger);
+ if (ptr_is_owned(logger)) { CHECK_ACCESS(logger_ptr); }
+ LDKLogger* logger_conv = (LDKLogger*)logger_ptr;
+ LDKCResult_PendingHTLCInfoInboundHTLCErrZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoInboundHTLCErrZ), "LDKCResult_PendingHTLCInfoInboundHTLCErrZ");
+ *ret_conv = peel_payment_onion(&msg_conv, node_signer_conv, logger_conv, cur_height, accept_mpp_keysend, allow_skimmed_fees);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_PendingHTLCRouting_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKPendingHTLCRouting this_ptr_conv = *(LDKPendingHTLCRouting*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ PendingHTLCRouting_free(this_ptr_conv);
+}
+
+static inline uint64_t PendingHTLCRouting_clone_ptr(LDKPendingHTLCRouting *NONNULL_PTR arg) {
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_PendingHTLCRouting_clone_ptr(int64_t arg) {
+ LDKPendingHTLCRouting* arg_conv = (LDKPendingHTLCRouting*)untag_ptr(arg);
+ int64_t ret_conv = PendingHTLCRouting_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_clone(int64_t orig) {
+ LDKPendingHTLCRouting* orig_conv = (LDKPendingHTLCRouting*)untag_ptr(orig);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_forward(int64_t onion_packet, int64_t short_channel_id, int64_t blinded) {
+ LDKOnionPacket onion_packet_conv;
+ onion_packet_conv.inner = untag_ptr(onion_packet);
+ onion_packet_conv.is_owned = ptr_is_owned(onion_packet);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(onion_packet_conv);
+ onion_packet_conv = OnionPacket_clone(&onion_packet_conv);
+ LDKBlindedForward blinded_conv;
+ blinded_conv.inner = untag_ptr(blinded);
+ blinded_conv.is_owned = ptr_is_owned(blinded);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(blinded_conv);
+ blinded_conv = BlindedForward_clone(&blinded_conv);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_forward(onion_packet_conv, short_channel_id, blinded_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_receive(int64_t payment_data, int64_t payment_metadata, int32_t incoming_cltv_expiry, int8_tArray phantom_shared_secret, int64_tArray custom_tlvs, jboolean requires_blinded_error) {
+ LDKFinalOnionHopData payment_data_conv;
+ payment_data_conv.inner = untag_ptr(payment_data);
+ payment_data_conv.is_owned = ptr_is_owned(payment_data);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_conv);
+ payment_data_conv = FinalOnionHopData_clone(&payment_data_conv);
+ void* payment_metadata_ptr = untag_ptr(payment_metadata);
+ CHECK_ACCESS(payment_metadata_ptr);
+ LDKCOption_CVec_u8ZZ payment_metadata_conv = *(LDKCOption_CVec_u8ZZ*)(payment_metadata_ptr);
+ payment_metadata_conv = COption_CVec_u8ZZ_clone((LDKCOption_CVec_u8ZZ*)untag_ptr(payment_metadata));
+ LDKThirtyTwoBytes phantom_shared_secret_ref;
+ CHECK(phantom_shared_secret->arr_len == 32);
+ memcpy(phantom_shared_secret_ref.data, phantom_shared_secret->elems, 32); FREE(phantom_shared_secret);
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_constr;
+ custom_tlvs_constr.datalen = custom_tlvs->arr_len;
+ if (custom_tlvs_constr.datalen > 0)
+ custom_tlvs_constr.data = MALLOC(custom_tlvs_constr.datalen * sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKCVec_C2Tuple_u64CVec_u8ZZZ Elements");
+ else
+ custom_tlvs_constr.data = NULL;
+ int64_t* custom_tlvs_vals = custom_tlvs->elems;
+ for (size_t x = 0; x < custom_tlvs_constr.datalen; x++) {
+ int64_t custom_tlvs_conv_23 = custom_tlvs_vals[x];
+ void* custom_tlvs_conv_23_ptr = untag_ptr(custom_tlvs_conv_23);
+ CHECK_ACCESS(custom_tlvs_conv_23_ptr);
+ LDKC2Tuple_u64CVec_u8ZZ custom_tlvs_conv_23_conv = *(LDKC2Tuple_u64CVec_u8ZZ*)(custom_tlvs_conv_23_ptr);
+ custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone((LDKC2Tuple_u64CVec_u8ZZ*)untag_ptr(custom_tlvs_conv_23));
+ custom_tlvs_constr.data[x] = custom_tlvs_conv_23_conv;
+ }
+ FREE(custom_tlvs);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_receive(payment_data_conv, payment_metadata_conv, incoming_cltv_expiry, phantom_shared_secret_ref, custom_tlvs_constr, requires_blinded_error);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_receive_keysend(int64_t payment_data, int8_tArray payment_preimage, int64_t payment_metadata, int32_t incoming_cltv_expiry, int64_tArray custom_tlvs) {
+ LDKFinalOnionHopData payment_data_conv;
+ payment_data_conv.inner = untag_ptr(payment_data);
+ payment_data_conv.is_owned = ptr_is_owned(payment_data);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payment_data_conv);
+ payment_data_conv = FinalOnionHopData_clone(&payment_data_conv);
+ LDKThirtyTwoBytes payment_preimage_ref;
+ CHECK(payment_preimage->arr_len == 32);
+ memcpy(payment_preimage_ref.data, payment_preimage->elems, 32); FREE(payment_preimage);
+ void* payment_metadata_ptr = untag_ptr(payment_metadata);
+ CHECK_ACCESS(payment_metadata_ptr);
+ LDKCOption_CVec_u8ZZ payment_metadata_conv = *(LDKCOption_CVec_u8ZZ*)(payment_metadata_ptr);
+ payment_metadata_conv = COption_CVec_u8ZZ_clone((LDKCOption_CVec_u8ZZ*)untag_ptr(payment_metadata));
+ LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs_constr;
+ custom_tlvs_constr.datalen = custom_tlvs->arr_len;
+ if (custom_tlvs_constr.datalen > 0)
+ custom_tlvs_constr.data = MALLOC(custom_tlvs_constr.datalen * sizeof(LDKC2Tuple_u64CVec_u8ZZ), "LDKCVec_C2Tuple_u64CVec_u8ZZZ Elements");
+ else
+ custom_tlvs_constr.data = NULL;
+ int64_t* custom_tlvs_vals = custom_tlvs->elems;
+ for (size_t x = 0; x < custom_tlvs_constr.datalen; x++) {
+ int64_t custom_tlvs_conv_23 = custom_tlvs_vals[x];
+ void* custom_tlvs_conv_23_ptr = untag_ptr(custom_tlvs_conv_23);
+ CHECK_ACCESS(custom_tlvs_conv_23_ptr);
+ LDKC2Tuple_u64CVec_u8ZZ custom_tlvs_conv_23_conv = *(LDKC2Tuple_u64CVec_u8ZZ*)(custom_tlvs_conv_23_ptr);
+ custom_tlvs_conv_23_conv = C2Tuple_u64CVec_u8ZZ_clone((LDKC2Tuple_u64CVec_u8ZZ*)untag_ptr(custom_tlvs_conv_23));
+ custom_tlvs_constr.data[x] = custom_tlvs_conv_23_conv;
+ }
+ FREE(custom_tlvs);
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCRouting_receive_keysend(payment_data_conv, payment_preimage_ref, payment_metadata_conv, incoming_cltv_expiry, custom_tlvs_constr);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_BlindedForward_free(int64_t this_obj) {
+ LDKBlindedForward this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ BlindedForward_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_BlindedForward_get_inbound_blinding_point(int64_t this_ptr) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, BlindedForward_get_inbound_blinding_point(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_BlindedForward_set_inbound_blinding_point(int64_t this_ptr, int8_tArray val) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ BlindedForward_set_inbound_blinding_point(&this_ptr_conv, val_ref);
+}
+
+int32_t CS_LDK_BlindedForward_get_failure(int64_t this_ptr) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedForward_get_failure(&this_ptr_conv));
+ return ret_conv;
+}
+
+void CS_LDK_BlindedForward_set_failure(int64_t this_ptr, int32_t val) {
+ LDKBlindedForward this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKBlindedFailure val_conv = LDKBlindedFailure_from_cs(val);
+ BlindedForward_set_failure(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_BlindedForward_new(int8_tArray inbound_blinding_point_arg, int32_t failure_arg) {
+ LDKPublicKey inbound_blinding_point_arg_ref;
+ CHECK(inbound_blinding_point_arg->arr_len == 33);
+ memcpy(inbound_blinding_point_arg_ref.compressed_form, inbound_blinding_point_arg->elems, 33); FREE(inbound_blinding_point_arg);
+ LDKBlindedFailure failure_arg_conv = LDKBlindedFailure_from_cs(failure_arg);
+ LDKBlindedForward ret_var = BlindedForward_new(inbound_blinding_point_arg_ref, failure_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t BlindedForward_clone_ptr(LDKBlindedForward *NONNULL_PTR arg) {
+ LDKBlindedForward ret_var = BlindedForward_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_BlindedForward_clone_ptr(int64_t arg) {
+ LDKBlindedForward arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = BlindedForward_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedForward_clone(int64_t orig) {
+ LDKBlindedForward orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKBlindedForward ret_var = BlindedForward_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_BlindedForward_hash(int64_t o) {
+ LDKBlindedForward o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = BlindedForward_hash(&o_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_BlindedForward_eq(int64_t a, int64_t b) {
+ LDKBlindedForward a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKBlindedForward b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = BlindedForward_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PendingHTLCInfo_free(int64_t this_obj) {
+ LDKPendingHTLCInfo this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ PendingHTLCInfo_free(this_obj_conv);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_routing(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPendingHTLCRouting *ret_copy = MALLOC(sizeof(LDKPendingHTLCRouting), "LDKPendingHTLCRouting");
+ *ret_copy = PendingHTLCInfo_get_routing(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_PendingHTLCInfo_set_routing(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKPendingHTLCRouting val_conv = *(LDKPendingHTLCRouting*)(val_ptr);
+ val_conv = PendingHTLCRouting_clone((LDKPendingHTLCRouting*)untag_ptr(val));
+ PendingHTLCInfo_set_routing(&this_ptr_conv, val_conv);
+}
+
+int8_tArray CS_LDK_PendingHTLCInfo_get_incoming_shared_secret(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *PendingHTLCInfo_get_incoming_shared_secret(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_PendingHTLCInfo_set_incoming_shared_secret(int64_t this_ptr, int8_tArray val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ PendingHTLCInfo_set_incoming_shared_secret(&this_ptr_conv, val_ref);
+}
+
+int8_tArray CS_LDK_PendingHTLCInfo_get_payment_hash(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *PendingHTLCInfo_get_payment_hash(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_PendingHTLCInfo_set_payment_hash(int64_t this_ptr, int8_tArray val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ PendingHTLCInfo_set_payment_hash(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_incoming_amt_msat(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z");
+ *ret_copy = PendingHTLCInfo_get_incoming_amt_msat(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_PendingHTLCInfo_set_incoming_amt_msat(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr);
+ val_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(val));
+ PendingHTLCInfo_set_incoming_amt_msat(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_outgoing_amt_msat(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = PendingHTLCInfo_get_outgoing_amt_msat(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PendingHTLCInfo_set_outgoing_amt_msat(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ PendingHTLCInfo_set_outgoing_amt_msat(&this_ptr_conv, val);
+}
+
+int32_t CS_LDK_PendingHTLCInfo_get_outgoing_cltv_value(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = PendingHTLCInfo_get_outgoing_cltv_value(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PendingHTLCInfo_set_outgoing_cltv_value(int64_t this_ptr, int32_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ PendingHTLCInfo_set_outgoing_cltv_value(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_get_skimmed_fee_msat(int64_t this_ptr) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z");
+ *ret_copy = PendingHTLCInfo_get_skimmed_fee_msat(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_PendingHTLCInfo_set_skimmed_fee_msat(int64_t this_ptr, int64_t val) {
+ LDKPendingHTLCInfo this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_u64Z val_conv = *(LDKCOption_u64Z*)(val_ptr);
+ val_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(val));
+ PendingHTLCInfo_set_skimmed_fee_msat(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_PendingHTLCInfo_new(int64_t routing_arg, int8_tArray incoming_shared_secret_arg, int8_tArray payment_hash_arg, int64_t incoming_amt_msat_arg, int64_t outgoing_amt_msat_arg, int32_t outgoing_cltv_value_arg, int64_t skimmed_fee_msat_arg) {
+ void* routing_arg_ptr = untag_ptr(routing_arg);
+ CHECK_ACCESS(routing_arg_ptr);
+ LDKPendingHTLCRouting routing_arg_conv = *(LDKPendingHTLCRouting*)(routing_arg_ptr);
+ routing_arg_conv = PendingHTLCRouting_clone((LDKPendingHTLCRouting*)untag_ptr(routing_arg));
+ LDKThirtyTwoBytes incoming_shared_secret_arg_ref;
+ CHECK(incoming_shared_secret_arg->arr_len == 32);
+ memcpy(incoming_shared_secret_arg_ref.data, incoming_shared_secret_arg->elems, 32); FREE(incoming_shared_secret_arg);
+ LDKThirtyTwoBytes payment_hash_arg_ref;
+ CHECK(payment_hash_arg->arr_len == 32);
+ memcpy(payment_hash_arg_ref.data, payment_hash_arg->elems, 32); FREE(payment_hash_arg);
+ void* incoming_amt_msat_arg_ptr = untag_ptr(incoming_amt_msat_arg);
+ CHECK_ACCESS(incoming_amt_msat_arg_ptr);
+ LDKCOption_u64Z incoming_amt_msat_arg_conv = *(LDKCOption_u64Z*)(incoming_amt_msat_arg_ptr);
+ incoming_amt_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(incoming_amt_msat_arg));
+ void* skimmed_fee_msat_arg_ptr = untag_ptr(skimmed_fee_msat_arg);
+ CHECK_ACCESS(skimmed_fee_msat_arg_ptr);
+ LDKCOption_u64Z skimmed_fee_msat_arg_conv = *(LDKCOption_u64Z*)(skimmed_fee_msat_arg_ptr);
+ skimmed_fee_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(skimmed_fee_msat_arg));
+ LDKPendingHTLCInfo ret_var = PendingHTLCInfo_new(routing_arg_conv, incoming_shared_secret_arg_ref, payment_hash_arg_ref, incoming_amt_msat_arg_conv, outgoing_amt_msat_arg, outgoing_cltv_value_arg, skimmed_fee_msat_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t PendingHTLCInfo_clone_ptr(LDKPendingHTLCInfo *NONNULL_PTR arg) {
+ LDKPendingHTLCInfo ret_var = PendingHTLCInfo_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_PendingHTLCInfo_clone_ptr(int64_t arg) {
+ LDKPendingHTLCInfo arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = PendingHTLCInfo_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PendingHTLCInfo_clone(int64_t orig) {
+ LDKPendingHTLCInfo orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKPendingHTLCInfo ret_var = PendingHTLCInfo_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int32_t CS_LDK_BlindedFailure_clone(int64_t orig) {
+ LDKBlindedFailure* orig_conv = (LDKBlindedFailure*)untag_ptr(orig);
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedFailure_clone(orig_conv));
+ return ret_conv;
+}
+
+int32_t CS_LDK_BlindedFailure_from_introduction_node() {
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedFailure_from_introduction_node());
+ return ret_conv;
+}
+
+int32_t CS_LDK_BlindedFailure_from_blinded_node() {
+ int32_t ret_conv = LDKBlindedFailure_to_cs(BlindedFailure_from_blinded_node());
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedFailure_hash(int64_t o) {
+ LDKBlindedFailure* o_conv = (LDKBlindedFailure*)untag_ptr(o);
+ int64_t ret_conv = BlindedFailure_hash(o_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_BlindedFailure_eq(int64_t a, int64_t b) {
+ LDKBlindedFailure* a_conv = (LDKBlindedFailure*)untag_ptr(a);
+ LDKBlindedFailure* b_conv = (LDKBlindedFailure*)untag_ptr(b);
+ jboolean ret_conv = BlindedFailure_eq(a_conv, b_conv);
+ return ret_conv;
+}
+
void CS_LDK_FailureCode_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
return ret_ref;
}
-int64_t CS_LDK_ChannelManager_create_channel(int64_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int8_tArray user_channel_id, int64_t override_config) {
+int64_t CS_LDK_ChannelManager_create_channel(int64_t this_arg, int8_tArray their_network_key, int64_t channel_value_satoshis, int64_t push_msat, int8_tArray user_channel_id, int64_t temporary_channel_id, int64_t override_config) {
LDKChannelManager this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
LDKU128 user_channel_id_ref;
CHECK(user_channel_id->arr_len == 16);
memcpy(user_channel_id_ref.le_bytes, user_channel_id->elems, 16); FREE(user_channel_id);
+ void* temporary_channel_id_ptr = untag_ptr(temporary_channel_id);
+ CHECK_ACCESS(temporary_channel_id_ptr);
+ LDKCOption_ThirtyTwoBytesZ temporary_channel_id_conv = *(LDKCOption_ThirtyTwoBytesZ*)(temporary_channel_id_ptr);
+ temporary_channel_id_conv = COption_ThirtyTwoBytesZ_clone((LDKCOption_ThirtyTwoBytesZ*)untag_ptr(temporary_channel_id));
LDKUserConfig override_config_conv;
override_config_conv.inner = untag_ptr(override_config);
override_config_conv.is_owned = ptr_is_owned(override_config);
CHECK_INNER_FIELD_ACCESS_OR_NULL(override_config_conv);
override_config_conv = UserConfig_clone(&override_config_conv);
LDKCResult_ThirtyTwoBytesAPIErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesAPIErrorZ), "LDKCResult_ThirtyTwoBytesAPIErrorZ");
- *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id_ref, override_config_conv);
+ *ret_conv = ChannelManager_create_channel(&this_arg_conv, their_network_key_ref, channel_value_satoshis, push_msat, user_channel_id_ref, temporary_channel_id_conv, override_config_conv);
return tag_ptr(ret_conv, true);
}
return tag_ptr(ret_conv, true);
}
+int8_tArray CS_LDK_BlindedForward_write(int64_t obj) {
+ LDKBlindedForward obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = BlindedForward_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_BlindedForward_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_BlindedForwardDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedForwardDecodeErrorZ), "LDKCResult_BlindedForwardDecodeErrorZ");
+ *ret_conv = BlindedForward_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_PendingHTLCRouting_write(int64_t obj) {
+ LDKPendingHTLCRouting* obj_conv = (LDKPendingHTLCRouting*)untag_ptr(obj);
+ LDKCVec_u8Z ret_var = PendingHTLCRouting_write(obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_PendingHTLCRouting_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_PendingHTLCRoutingDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCRoutingDecodeErrorZ), "LDKCResult_PendingHTLCRoutingDecodeErrorZ");
+ *ret_conv = PendingHTLCRouting_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_PendingHTLCInfo_write(int64_t obj) {
+ LDKPendingHTLCInfo obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = PendingHTLCInfo_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_PendingHTLCInfo_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_PendingHTLCInfoDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PendingHTLCInfoDecodeErrorZ), "LDKCResult_PendingHTLCInfoDecodeErrorZ");
+ *ret_conv = PendingHTLCInfo_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_BlindedFailure_write(int64_t obj) {
+ LDKBlindedFailure* obj_conv = (LDKBlindedFailure*)untag_ptr(obj);
+ LDKCVec_u8Z ret_var = BlindedFailure_write(obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_BlindedFailure_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_BlindedFailureDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_BlindedFailureDecodeErrorZ), "LDKCResult_BlindedFailureDecodeErrorZ");
+ *ret_conv = BlindedFailure_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_ChannelManager_write(int64_t obj) {
LDKChannelManager obj_conv;
obj_conv.inner = untag_ptr(obj);
return tag_ptr(ret_conv, true);
}
+void CS_LDK_DelayedPaymentBasepoint_free(int64_t this_obj) {
+ LDKDelayedPaymentBasepoint this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ DelayedPaymentBasepoint_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_DelayedPaymentBasepoint_get_a(int64_t this_ptr) {
+ LDKDelayedPaymentBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentBasepoint_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_DelayedPaymentBasepoint_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKDelayedPaymentBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ DelayedPaymentBasepoint_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKDelayedPaymentBasepoint ret_var = DelayedPaymentBasepoint_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_DelayedPaymentBasepoint_eq(int64_t a, int64_t b) {
+ LDKDelayedPaymentBasepoint a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKDelayedPaymentBasepoint b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = DelayedPaymentBasepoint_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t DelayedPaymentBasepoint_clone_ptr(LDKDelayedPaymentBasepoint *NONNULL_PTR arg) {
+ LDKDelayedPaymentBasepoint ret_var = DelayedPaymentBasepoint_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_DelayedPaymentBasepoint_clone_ptr(int64_t arg) {
+ LDKDelayedPaymentBasepoint arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = DelayedPaymentBasepoint_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_clone(int64_t orig) {
+ LDKDelayedPaymentBasepoint orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKDelayedPaymentBasepoint ret_var = DelayedPaymentBasepoint_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_hash(int64_t o) {
+ LDKDelayedPaymentBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = DelayedPaymentBasepoint_hash(&o_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_DelayedPaymentBasepoint_to_public_key(int64_t this_arg) {
+ LDKDelayedPaymentBasepoint this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentBasepoint_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_DelayedPaymentBasepoint_write(int64_t obj) {
+ LDKDelayedPaymentBasepoint obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = DelayedPaymentBasepoint_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_DelayedPaymentBasepoint_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_DelayedPaymentBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentBasepointDecodeErrorZ), "LDKCResult_DelayedPaymentBasepointDecodeErrorZ");
+ *ret_conv = DelayedPaymentBasepoint_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_DelayedPaymentKey_free(int64_t this_obj) {
+ LDKDelayedPaymentKey this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ DelayedPaymentKey_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_DelayedPaymentKey_get_a(int64_t this_ptr) {
+ LDKDelayedPaymentKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentKey_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_DelayedPaymentKey_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKDelayedPaymentKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ DelayedPaymentKey_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_DelayedPaymentKey_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_DelayedPaymentKey_eq(int64_t a, int64_t b) {
+ LDKDelayedPaymentKey a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKDelayedPaymentKey b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = DelayedPaymentKey_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t DelayedPaymentKey_clone_ptr(LDKDelayedPaymentKey *NONNULL_PTR arg) {
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_DelayedPaymentKey_clone_ptr(int64_t arg) {
+ LDKDelayedPaymentKey arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = DelayedPaymentKey_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_clone(int64_t orig) {
+ LDKDelayedPaymentKey orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_from_basepoint(int64_t countersignatory_basepoint, int8_tArray per_commitment_point) {
+ LDKDelayedPaymentBasepoint countersignatory_basepoint_conv;
+ countersignatory_basepoint_conv.inner = untag_ptr(countersignatory_basepoint);
+ countersignatory_basepoint_conv.is_owned = ptr_is_owned(countersignatory_basepoint);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_basepoint_conv);
+ countersignatory_basepoint_conv.is_owned = false;
+ LDKPublicKey per_commitment_point_ref;
+ CHECK(per_commitment_point->arr_len == 33);
+ memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_from_basepoint(&countersignatory_basepoint_conv, per_commitment_point_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_from_secret_key(int8_tArray sk) {
+ uint8_t sk_arr[32];
+ CHECK(sk->arr_len == 32);
+ memcpy(sk_arr, sk->elems, 32); FREE(sk);
+ uint8_t (*sk_ref)[32] = &sk_arr;
+ LDKDelayedPaymentKey ret_var = DelayedPaymentKey_from_secret_key(sk_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_DelayedPaymentKey_to_public_key(int64_t this_arg) {
+ LDKDelayedPaymentKey this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, DelayedPaymentKey_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_DelayedPaymentKey_write(int64_t obj) {
+ LDKDelayedPaymentKey obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = DelayedPaymentKey_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_DelayedPaymentKey_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_DelayedPaymentKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_DelayedPaymentKeyDecodeErrorZ), "LDKCResult_DelayedPaymentKeyDecodeErrorZ");
+ *ret_conv = DelayedPaymentKey_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_HtlcBasepoint_free(int64_t this_obj) {
+ LDKHtlcBasepoint this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ HtlcBasepoint_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_HtlcBasepoint_get_a(int64_t this_ptr) {
+ LDKHtlcBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcBasepoint_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_HtlcBasepoint_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKHtlcBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ HtlcBasepoint_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_HtlcBasepoint_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKHtlcBasepoint ret_var = HtlcBasepoint_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_HtlcBasepoint_eq(int64_t a, int64_t b) {
+ LDKHtlcBasepoint a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKHtlcBasepoint b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = HtlcBasepoint_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t HtlcBasepoint_clone_ptr(LDKHtlcBasepoint *NONNULL_PTR arg) {
+ LDKHtlcBasepoint ret_var = HtlcBasepoint_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_HtlcBasepoint_clone_ptr(int64_t arg) {
+ LDKHtlcBasepoint arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = HtlcBasepoint_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_HtlcBasepoint_clone(int64_t orig) {
+ LDKHtlcBasepoint orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKHtlcBasepoint ret_var = HtlcBasepoint_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_HtlcBasepoint_hash(int64_t o) {
+ LDKHtlcBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = HtlcBasepoint_hash(&o_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_HtlcBasepoint_to_public_key(int64_t this_arg) {
+ LDKHtlcBasepoint this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcBasepoint_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_HtlcBasepoint_write(int64_t obj) {
+ LDKHtlcBasepoint obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = HtlcBasepoint_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_HtlcBasepoint_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_HtlcBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcBasepointDecodeErrorZ), "LDKCResult_HtlcBasepointDecodeErrorZ");
+ *ret_conv = HtlcBasepoint_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_HtlcKey_free(int64_t this_obj) {
+ LDKHtlcKey this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ HtlcKey_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_HtlcKey_get_a(int64_t this_ptr) {
+ LDKHtlcKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcKey_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_HtlcKey_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKHtlcKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ HtlcKey_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_HtlcKey_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKHtlcKey ret_var = HtlcKey_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_HtlcKey_eq(int64_t a, int64_t b) {
+ LDKHtlcKey a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKHtlcKey b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = HtlcKey_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t HtlcKey_clone_ptr(LDKHtlcKey *NONNULL_PTR arg) {
+ LDKHtlcKey ret_var = HtlcKey_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_HtlcKey_clone_ptr(int64_t arg) {
+ LDKHtlcKey arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = HtlcKey_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_HtlcKey_clone(int64_t orig) {
+ LDKHtlcKey orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKHtlcKey ret_var = HtlcKey_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_HtlcKey_from_basepoint(int64_t countersignatory_basepoint, int8_tArray per_commitment_point) {
+ LDKHtlcBasepoint countersignatory_basepoint_conv;
+ countersignatory_basepoint_conv.inner = untag_ptr(countersignatory_basepoint);
+ countersignatory_basepoint_conv.is_owned = ptr_is_owned(countersignatory_basepoint);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_basepoint_conv);
+ countersignatory_basepoint_conv.is_owned = false;
+ LDKPublicKey per_commitment_point_ref;
+ CHECK(per_commitment_point->arr_len == 33);
+ memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
+ LDKHtlcKey ret_var = HtlcKey_from_basepoint(&countersignatory_basepoint_conv, per_commitment_point_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_HtlcKey_from_secret_key(int8_tArray sk) {
+ uint8_t sk_arr[32];
+ CHECK(sk->arr_len == 32);
+ memcpy(sk_arr, sk->elems, 32); FREE(sk);
+ uint8_t (*sk_ref)[32] = &sk_arr;
+ LDKHtlcKey ret_var = HtlcKey_from_secret_key(sk_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_HtlcKey_to_public_key(int64_t this_arg) {
+ LDKHtlcKey this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, HtlcKey_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_HtlcKey_write(int64_t obj) {
+ LDKHtlcKey obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = HtlcKey_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_HtlcKey_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_HtlcKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_HtlcKeyDecodeErrorZ), "LDKCResult_HtlcKeyDecodeErrorZ");
+ *ret_conv = HtlcKey_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_RevocationBasepoint_free(int64_t this_obj) {
+ LDKRevocationBasepoint this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ RevocationBasepoint_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_RevocationBasepoint_get_a(int64_t this_ptr) {
+ LDKRevocationBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationBasepoint_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_RevocationBasepoint_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKRevocationBasepoint this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ RevocationBasepoint_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_RevocationBasepoint_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKRevocationBasepoint ret_var = RevocationBasepoint_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_RevocationBasepoint_eq(int64_t a, int64_t b) {
+ LDKRevocationBasepoint a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKRevocationBasepoint b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = RevocationBasepoint_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t RevocationBasepoint_clone_ptr(LDKRevocationBasepoint *NONNULL_PTR arg) {
+ LDKRevocationBasepoint ret_var = RevocationBasepoint_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_RevocationBasepoint_clone_ptr(int64_t arg) {
+ LDKRevocationBasepoint arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = RevocationBasepoint_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_RevocationBasepoint_clone(int64_t orig) {
+ LDKRevocationBasepoint orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKRevocationBasepoint ret_var = RevocationBasepoint_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_RevocationBasepoint_hash(int64_t o) {
+ LDKRevocationBasepoint o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = RevocationBasepoint_hash(&o_conv);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_RevocationBasepoint_to_public_key(int64_t this_arg) {
+ LDKRevocationBasepoint this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationBasepoint_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_RevocationBasepoint_write(int64_t obj) {
+ LDKRevocationBasepoint obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = RevocationBasepoint_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_RevocationBasepoint_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_RevocationBasepointDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationBasepointDecodeErrorZ), "LDKCResult_RevocationBasepointDecodeErrorZ");
+ *ret_conv = RevocationBasepoint_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_RevocationKey_free(int64_t this_obj) {
+ LDKRevocationKey this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ RevocationKey_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_RevocationKey_get_a(int64_t this_ptr) {
+ LDKRevocationKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationKey_get_a(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_RevocationKey_set_a(int64_t this_ptr, int8_tArray val) {
+ LDKRevocationKey this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ RevocationKey_set_a(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_RevocationKey_new(int8_tArray a_arg) {
+ LDKPublicKey a_arg_ref;
+ CHECK(a_arg->arr_len == 33);
+ memcpy(a_arg_ref.compressed_form, a_arg->elems, 33); FREE(a_arg);
+ LDKRevocationKey ret_var = RevocationKey_new(a_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_RevocationKey_eq(int64_t a, int64_t b) {
+ LDKRevocationKey a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKRevocationKey b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = RevocationKey_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+static inline uint64_t RevocationKey_clone_ptr(LDKRevocationKey *NONNULL_PTR arg) {
+ LDKRevocationKey ret_var = RevocationKey_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_RevocationKey_clone_ptr(int64_t arg) {
+ LDKRevocationKey arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = RevocationKey_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_RevocationKey_clone(int64_t orig) {
+ LDKRevocationKey orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKRevocationKey ret_var = RevocationKey_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_RevocationKey_hash(int64_t o) {
+ LDKRevocationKey o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = RevocationKey_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_RevocationKey_from_basepoint(int64_t countersignatory_basepoint, int8_tArray per_commitment_point) {
+ LDKRevocationBasepoint countersignatory_basepoint_conv;
+ countersignatory_basepoint_conv.inner = untag_ptr(countersignatory_basepoint);
+ countersignatory_basepoint_conv.is_owned = ptr_is_owned(countersignatory_basepoint);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_basepoint_conv);
+ countersignatory_basepoint_conv.is_owned = false;
+ LDKPublicKey per_commitment_point_ref;
+ CHECK(per_commitment_point->arr_len == 33);
+ memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
+ LDKRevocationKey ret_var = RevocationKey_from_basepoint(&countersignatory_basepoint_conv, per_commitment_point_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_RevocationKey_to_public_key(int64_t this_arg) {
+ LDKRevocationKey this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, RevocationKey_to_public_key(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+int8_tArray CS_LDK_RevocationKey_write(int64_t obj) {
+ LDKRevocationKey obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = RevocationKey_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_RevocationKey_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_RevocationKeyDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_RevocationKeyDecodeErrorZ), "LDKCResult_RevocationKeyDecodeErrorZ");
+ *ret_conv = RevocationKey_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
void CS_LDK_ExpandedKey_free(int64_t this_obj) {
LDKExpandedKey this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_ref;
}
+int64_t CS_LDK_DecodeError_hash(int64_t o) {
+ LDKDecodeError* o_conv = (LDKDecodeError*)untag_ptr(o);
+ int64_t ret_conv = DecodeError_hash(o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_DecodeError_eq(int64_t a, int64_t b) {
LDKDecodeError* a_conv = (LDKDecodeError*)untag_ptr(a);
LDKDecodeError* b_conv = (LDKDecodeError*)untag_ptr(b);
return ret_ref;
}
+int64_t CS_LDK_Init_hash(int64_t o) {
+ LDKInit o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Init_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Init_eq(int64_t a, int64_t b) {
LDKInit a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ErrorMessage_hash(int64_t o) {
+ LDKErrorMessage o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ErrorMessage_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ErrorMessage_eq(int64_t a, int64_t b) {
LDKErrorMessage a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_WarningMessage_hash(int64_t o) {
+ LDKWarningMessage o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = WarningMessage_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_WarningMessage_eq(int64_t a, int64_t b) {
LDKWarningMessage a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_Ping_hash(int64_t o) {
+ LDKPing o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Ping_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Ping_eq(int64_t a, int64_t b) {
LDKPing a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_Pong_hash(int64_t o) {
+ LDKPong o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Pong_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Pong_eq(int64_t a, int64_t b) {
LDKPong a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_OpenChannel_hash(int64_t o) {
+ LDKOpenChannel o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OpenChannel_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_OpenChannel_eq(int64_t a, int64_t b) {
LDKOpenChannel a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_OpenChannelV2_hash(int64_t o) {
+ LDKOpenChannelV2 o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OpenChannelV2_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_OpenChannelV2_eq(int64_t a, int64_t b) {
LDKOpenChannelV2 a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_AcceptChannel_hash(int64_t o) {
+ LDKAcceptChannel o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = AcceptChannel_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_AcceptChannel_eq(int64_t a, int64_t b) {
LDKAcceptChannel a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_AcceptChannelV2_hash(int64_t o) {
+ LDKAcceptChannelV2 o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = AcceptChannelV2_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_AcceptChannelV2_eq(int64_t a, int64_t b) {
LDKAcceptChannelV2 a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_FundingCreated_hash(int64_t o) {
+ LDKFundingCreated o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = FundingCreated_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_FundingCreated_eq(int64_t a, int64_t b) {
LDKFundingCreated a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_FundingSigned_hash(int64_t o) {
+ LDKFundingSigned o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = FundingSigned_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_FundingSigned_eq(int64_t a, int64_t b) {
LDKFundingSigned a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelReady_hash(int64_t o) {
+ LDKChannelReady o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelReady_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelReady_eq(int64_t a, int64_t b) {
LDKChannelReady a_conv;
a_conv.inner = untag_ptr(a);
return ret_conv;
}
+void CS_LDK_Stfu_free(int64_t this_obj) {
+ LDKStfu this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ Stfu_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_Stfu_get_channel_id(int64_t this_ptr) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *Stfu_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_Stfu_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ Stfu_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int8_t CS_LDK_Stfu_get_initiator(int64_t this_ptr) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_t ret_conv = Stfu_get_initiator(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Stfu_set_initiator(int64_t this_ptr, int8_t val) {
+ LDKStfu this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Stfu_set_initiator(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_Stfu_new(int8_tArray channel_id_arg, int8_t initiator_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKStfu ret_var = Stfu_new(channel_id_arg_ref, initiator_arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t Stfu_clone_ptr(LDKStfu *NONNULL_PTR arg) {
+ LDKStfu ret_var = Stfu_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_Stfu_clone_ptr(int64_t arg) {
+ LDKStfu arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = Stfu_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Stfu_clone(int64_t orig) {
+ LDKStfu orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKStfu ret_var = Stfu_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_Stfu_eq(int64_t a, int64_t b) {
+ LDKStfu a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKStfu b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = Stfu_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_free(int64_t this_obj) {
+ LDKSplice this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ Splice_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_Splice_get_channel_id(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *Splice_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_Splice_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ Splice_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int8_tArray CS_LDK_Splice_get_chain_hash(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *Splice_get_chain_hash(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_Splice_set_chain_hash(int64_t this_ptr, int8_tArray val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ Splice_set_chain_hash(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_Splice_get_relative_satoshis(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = Splice_get_relative_satoshis(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_set_relative_satoshis(int64_t this_ptr, int64_t val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Splice_set_relative_satoshis(&this_ptr_conv, val);
+}
+
+int32_t CS_LDK_Splice_get_funding_feerate_perkw(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = Splice_get_funding_feerate_perkw(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_set_funding_feerate_perkw(int64_t this_ptr, int32_t val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Splice_set_funding_feerate_perkw(&this_ptr_conv, val);
+}
+
+int32_t CS_LDK_Splice_get_locktime(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int32_t ret_conv = Splice_get_locktime(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_Splice_set_locktime(int64_t this_ptr, int32_t val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ Splice_set_locktime(&this_ptr_conv, val);
+}
+
+int8_tArray CS_LDK_Splice_get_funding_pubkey(int64_t this_ptr) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, Splice_get_funding_pubkey(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_Splice_set_funding_pubkey(int64_t this_ptr, int8_tArray val) {
+ LDKSplice this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ Splice_set_funding_pubkey(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_Splice_new(int8_tArray channel_id_arg, int8_tArray chain_hash_arg, int64_t relative_satoshis_arg, int32_t funding_feerate_perkw_arg, int32_t locktime_arg, int8_tArray funding_pubkey_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKThirtyTwoBytes chain_hash_arg_ref;
+ CHECK(chain_hash_arg->arr_len == 32);
+ memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); FREE(chain_hash_arg);
+ LDKPublicKey funding_pubkey_arg_ref;
+ CHECK(funding_pubkey_arg->arr_len == 33);
+ memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); FREE(funding_pubkey_arg);
+ LDKSplice ret_var = Splice_new(channel_id_arg_ref, chain_hash_arg_ref, relative_satoshis_arg, funding_feerate_perkw_arg, locktime_arg, funding_pubkey_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t Splice_clone_ptr(LDKSplice *NONNULL_PTR arg) {
+ LDKSplice ret_var = Splice_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_Splice_clone_ptr(int64_t arg) {
+ LDKSplice arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = Splice_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Splice_clone(int64_t orig) {
+ LDKSplice orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKSplice ret_var = Splice_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_Splice_eq(int64_t a, int64_t b) {
+ LDKSplice a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKSplice b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = Splice_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_SpliceAck_free(int64_t this_obj) {
+ LDKSpliceAck this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ SpliceAck_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_SpliceAck_get_channel_id(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *SpliceAck_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceAck_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ SpliceAck_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int8_tArray CS_LDK_SpliceAck_get_chain_hash(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *SpliceAck_get_chain_hash(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceAck_set_chain_hash(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ SpliceAck_set_chain_hash(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_SpliceAck_get_relative_satoshis(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = SpliceAck_get_relative_satoshis(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_SpliceAck_set_relative_satoshis(int64_t this_ptr, int64_t val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ SpliceAck_set_relative_satoshis(&this_ptr_conv, val);
+}
+
+int8_tArray CS_LDK_SpliceAck_get_funding_pubkey(int64_t this_ptr) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, SpliceAck_get_funding_pubkey(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceAck_set_funding_pubkey(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceAck this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ SpliceAck_set_funding_pubkey(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_SpliceAck_new(int8_tArray channel_id_arg, int8_tArray chain_hash_arg, int64_t relative_satoshis_arg, int8_tArray funding_pubkey_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKThirtyTwoBytes chain_hash_arg_ref;
+ CHECK(chain_hash_arg->arr_len == 32);
+ memcpy(chain_hash_arg_ref.data, chain_hash_arg->elems, 32); FREE(chain_hash_arg);
+ LDKPublicKey funding_pubkey_arg_ref;
+ CHECK(funding_pubkey_arg->arr_len == 33);
+ memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); FREE(funding_pubkey_arg);
+ LDKSpliceAck ret_var = SpliceAck_new(channel_id_arg_ref, chain_hash_arg_ref, relative_satoshis_arg, funding_pubkey_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t SpliceAck_clone_ptr(LDKSpliceAck *NONNULL_PTR arg) {
+ LDKSpliceAck ret_var = SpliceAck_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_SpliceAck_clone_ptr(int64_t arg) {
+ LDKSpliceAck arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = SpliceAck_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_SpliceAck_clone(int64_t orig) {
+ LDKSpliceAck orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKSpliceAck ret_var = SpliceAck_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_SpliceAck_eq(int64_t a, int64_t b) {
+ LDKSpliceAck a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKSpliceAck b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = SpliceAck_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
+void CS_LDK_SpliceLocked_free(int64_t this_obj) {
+ LDKSpliceLocked this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ SpliceLocked_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_SpliceLocked_get_channel_id(int64_t this_ptr) {
+ LDKSpliceLocked this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *SpliceLocked_get_channel_id(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_SpliceLocked_set_channel_id(int64_t this_ptr, int8_tArray val) {
+ LDKSpliceLocked this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ SpliceLocked_set_channel_id(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_SpliceLocked_new(int8_tArray channel_id_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKSpliceLocked ret_var = SpliceLocked_new(channel_id_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t SpliceLocked_clone_ptr(LDKSpliceLocked *NONNULL_PTR arg) {
+ LDKSpliceLocked ret_var = SpliceLocked_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_SpliceLocked_clone_ptr(int64_t arg) {
+ LDKSpliceLocked arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = SpliceLocked_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_SpliceLocked_clone(int64_t orig) {
+ LDKSpliceLocked orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKSpliceLocked ret_var = SpliceLocked_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jboolean CS_LDK_SpliceLocked_eq(int64_t a, int64_t b) {
+ LDKSpliceLocked a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKSpliceLocked b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = SpliceLocked_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
void CS_LDK_TxAddInput_free(int64_t this_obj) {
LDKTxAddInput this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_ref;
}
+int64_t CS_LDK_TxAddInput_hash(int64_t o) {
+ LDKTxAddInput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAddInput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAddInput_eq(int64_t a, int64_t b) {
LDKTxAddInput a_conv;
a_conv.inner = untag_ptr(a);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = TxAddOutput_get_script(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = TxAddOutput_get_script(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_ref;
}
+int64_t CS_LDK_TxAddOutput_hash(int64_t o) {
+ LDKTxAddOutput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAddOutput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAddOutput_eq(int64_t a, int64_t b) {
LDKTxAddOutput a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxRemoveInput_hash(int64_t o) {
+ LDKTxRemoveInput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxRemoveInput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxRemoveInput_eq(int64_t a, int64_t b) {
LDKTxRemoveInput a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxRemoveOutput_hash(int64_t o) {
+ LDKTxRemoveOutput o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxRemoveOutput_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxRemoveOutput_eq(int64_t a, int64_t b) {
LDKTxRemoveOutput a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxComplete_hash(int64_t o) {
+ LDKTxComplete o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxComplete_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxComplete_eq(int64_t a, int64_t b) {
LDKTxComplete a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxSignatures_hash(int64_t o) {
+ LDKTxSignatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxSignatures_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxSignatures_eq(int64_t a, int64_t b) {
LDKTxSignatures a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxInitRbf_hash(int64_t o) {
+ LDKTxInitRbf o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxInitRbf_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxInitRbf_eq(int64_t a, int64_t b) {
LDKTxInitRbf a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxAckRbf_hash(int64_t o) {
+ LDKTxAckRbf o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAckRbf_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAckRbf_eq(int64_t a, int64_t b) {
LDKTxAckRbf a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_TxAbort_hash(int64_t o) {
+ LDKTxAbort o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = TxAbort_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_TxAbort_eq(int64_t a, int64_t b) {
LDKTxAbort a_conv;
a_conv.inner = untag_ptr(a);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = Shutdown_get_scriptpubkey(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_ref;
}
+int64_t CS_LDK_Shutdown_hash(int64_t o) {
+ LDKShutdown o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Shutdown_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Shutdown_eq(int64_t a, int64_t b) {
LDKShutdown a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ClosingSignedFeeRange_hash(int64_t o) {
+ LDKClosingSignedFeeRange o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ClosingSignedFeeRange_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ClosingSignedFeeRange_eq(int64_t a, int64_t b) {
LDKClosingSignedFeeRange a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ClosingSigned_hash(int64_t o) {
+ LDKClosingSigned o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ClosingSigned_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ClosingSigned_eq(int64_t a, int64_t b) {
LDKClosingSigned a_conv;
a_conv.inner = untag_ptr(a);
UpdateAddHTLC_set_skimmed_fee_msat(&this_ptr_conv, val_conv);
}
+int64_t CS_LDK_UpdateAddHTLC_get_onion_routing_packet(int64_t this_ptr) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKOnionPacket ret_var = UpdateAddHTLC_get_onion_routing_packet(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_UpdateAddHTLC_set_onion_routing_packet(int64_t this_ptr, int64_t val) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKOnionPacket val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = OnionPacket_clone(&val_conv);
+ UpdateAddHTLC_set_onion_routing_packet(&this_ptr_conv, val_conv);
+}
+
+int8_tArray CS_LDK_UpdateAddHTLC_get_blinding_point(int64_t this_ptr) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, UpdateAddHTLC_get_blinding_point(&this_ptr_conv).compressed_form, 33);
+ return ret_arr;
+}
+
+void CS_LDK_UpdateAddHTLC_set_blinding_point(int64_t this_ptr, int8_tArray val) {
+ LDKUpdateAddHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKPublicKey val_ref;
+ CHECK(val->arr_len == 33);
+ memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
+ UpdateAddHTLC_set_blinding_point(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_UpdateAddHTLC_new(int8_tArray channel_id_arg, int64_t htlc_id_arg, int64_t amount_msat_arg, int8_tArray payment_hash_arg, int32_t cltv_expiry_arg, int64_t skimmed_fee_msat_arg, int64_t onion_routing_packet_arg, int8_tArray blinding_point_arg) {
+ LDKThirtyTwoBytes channel_id_arg_ref;
+ CHECK(channel_id_arg->arr_len == 32);
+ memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
+ LDKThirtyTwoBytes payment_hash_arg_ref;
+ CHECK(payment_hash_arg->arr_len == 32);
+ memcpy(payment_hash_arg_ref.data, payment_hash_arg->elems, 32); FREE(payment_hash_arg);
+ void* skimmed_fee_msat_arg_ptr = untag_ptr(skimmed_fee_msat_arg);
+ CHECK_ACCESS(skimmed_fee_msat_arg_ptr);
+ LDKCOption_u64Z skimmed_fee_msat_arg_conv = *(LDKCOption_u64Z*)(skimmed_fee_msat_arg_ptr);
+ skimmed_fee_msat_arg_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(skimmed_fee_msat_arg));
+ LDKOnionPacket onion_routing_packet_arg_conv;
+ onion_routing_packet_arg_conv.inner = untag_ptr(onion_routing_packet_arg);
+ onion_routing_packet_arg_conv.is_owned = ptr_is_owned(onion_routing_packet_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(onion_routing_packet_arg_conv);
+ onion_routing_packet_arg_conv = OnionPacket_clone(&onion_routing_packet_arg_conv);
+ LDKPublicKey blinding_point_arg_ref;
+ CHECK(blinding_point_arg->arr_len == 33);
+ memcpy(blinding_point_arg_ref.compressed_form, blinding_point_arg->elems, 33); FREE(blinding_point_arg);
+ LDKUpdateAddHTLC ret_var = UpdateAddHTLC_new(channel_id_arg_ref, htlc_id_arg, amount_msat_arg, payment_hash_arg_ref, cltv_expiry_arg, skimmed_fee_msat_arg_conv, onion_routing_packet_arg_conv, blinding_point_arg_ref);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
static inline uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg) {
LDKUpdateAddHTLC ret_var = UpdateAddHTLC_clone(arg);
int64_t ret_ref = 0;
return ret_ref;
}
+int64_t CS_LDK_UpdateAddHTLC_hash(int64_t o) {
+ LDKUpdateAddHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateAddHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateAddHTLC_eq(int64_t a, int64_t b) {
LDKUpdateAddHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_OnionMessage_hash(int64_t o) {
+ LDKOnionMessage o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OnionMessage_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_OnionMessage_eq(int64_t a, int64_t b) {
LDKOnionMessage a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFulfillHTLC_hash(int64_t o) {
+ LDKUpdateFulfillHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFulfillHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFulfillHTLC_eq(int64_t a, int64_t b) {
LDKUpdateFulfillHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFailHTLC_hash(int64_t o) {
+ LDKUpdateFailHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFailHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFailHTLC_eq(int64_t a, int64_t b) {
LDKUpdateFailHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFailMalformedHTLC_hash(int64_t o) {
+ LDKUpdateFailMalformedHTLC o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFailMalformedHTLC_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFailMalformedHTLC_eq(int64_t a, int64_t b) {
LDKUpdateFailMalformedHTLC a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_CommitmentSigned_hash(int64_t o) {
+ LDKCommitmentSigned o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = CommitmentSigned_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_CommitmentSigned_eq(int64_t a, int64_t b) {
LDKCommitmentSigned a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_RevokeAndACK_hash(int64_t o) {
+ LDKRevokeAndACK o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = RevokeAndACK_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_RevokeAndACK_eq(int64_t a, int64_t b) {
LDKRevokeAndACK a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UpdateFee_hash(int64_t o) {
+ LDKUpdateFee o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UpdateFee_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UpdateFee_eq(int64_t a, int64_t b) {
LDKUpdateFee a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelReestablish_hash(int64_t o) {
+ LDKChannelReestablish o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelReestablish_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelReestablish_eq(int64_t a, int64_t b) {
LDKChannelReestablish a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_AnnouncementSignatures_hash(int64_t o) {
+ LDKAnnouncementSignatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = AnnouncementSignatures_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_AnnouncementSignatures_eq(int64_t a, int64_t b) {
LDKAnnouncementSignatures a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_SocketAddress_hash(int64_t o) {
+ LDKSocketAddress* o_conv = (LDKSocketAddress*)untag_ptr(o);
+ int64_t ret_conv = SocketAddress_hash(o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_SocketAddress_eq(int64_t a, int64_t b) {
LDKSocketAddress* a_conv = (LDKSocketAddress*)untag_ptr(a);
LDKSocketAddress* b_conv = (LDKSocketAddress*)untag_ptr(b);
return ret_conv;
}
+int64_t CS_LDK_SocketAddressParseError_hash(int64_t o) {
+ LDKSocketAddressParseError* o_conv = (LDKSocketAddressParseError*)untag_ptr(o);
+ int64_t ret_conv = SocketAddressParseError_hash(o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_SocketAddressParseError_eq(int64_t a, int64_t b) {
LDKSocketAddressParseError* a_conv = (LDKSocketAddressParseError*)untag_ptr(a);
LDKSocketAddressParseError* b_conv = (LDKSocketAddressParseError*)untag_ptr(b);
return ret_ref;
}
+int64_t CS_LDK_UnsignedNodeAnnouncement_hash(int64_t o) {
+ LDKUnsignedNodeAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UnsignedNodeAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UnsignedNodeAnnouncement_eq(int64_t a, int64_t b) {
LDKUnsignedNodeAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_NodeAnnouncement_hash(int64_t o) {
+ LDKNodeAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = NodeAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_NodeAnnouncement_eq(int64_t a, int64_t b) {
LDKNodeAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UnsignedChannelAnnouncement_hash(int64_t o) {
+ LDKUnsignedChannelAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UnsignedChannelAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UnsignedChannelAnnouncement_eq(int64_t a, int64_t b) {
LDKUnsignedChannelAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelAnnouncement_hash(int64_t o) {
+ LDKChannelAnnouncement o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelAnnouncement_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelAnnouncement_eq(int64_t a, int64_t b) {
LDKChannelAnnouncement a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_UnsignedChannelUpdate_hash(int64_t o) {
+ LDKUnsignedChannelUpdate o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = UnsignedChannelUpdate_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_UnsignedChannelUpdate_eq(int64_t a, int64_t b) {
LDKUnsignedChannelUpdate a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ChannelUpdate_hash(int64_t o) {
+ LDKChannelUpdate o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelUpdate_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ChannelUpdate_eq(int64_t a, int64_t b) {
LDKChannelUpdate a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_QueryChannelRange_hash(int64_t o) {
+ LDKQueryChannelRange o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = QueryChannelRange_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_QueryChannelRange_eq(int64_t a, int64_t b) {
LDKQueryChannelRange a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ReplyChannelRange_hash(int64_t o) {
+ LDKReplyChannelRange o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ReplyChannelRange_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ReplyChannelRange_eq(int64_t a, int64_t b) {
LDKReplyChannelRange a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_QueryShortChannelIds_hash(int64_t o) {
+ LDKQueryShortChannelIds o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = QueryShortChannelIds_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_QueryShortChannelIds_eq(int64_t a, int64_t b) {
LDKQueryShortChannelIds a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ReplyShortChannelIdsEnd_hash(int64_t o) {
+ LDKReplyShortChannelIdsEnd o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ReplyShortChannelIdsEnd_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_ReplyShortChannelIdsEnd_eq(int64_t a, int64_t b) {
LDKReplyShortChannelIdsEnd a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_GossipTimestampFilter_hash(int64_t o) {
+ LDKGossipTimestampFilter o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = GossipTimestampFilter_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_GossipTimestampFilter_eq(int64_t a, int64_t b) {
LDKGossipTimestampFilter a_conv;
a_conv.inner = untag_ptr(a);
return ret_ref;
}
+int64_t CS_LDK_ErrorAction_hash(int64_t o) {
+ LDKErrorAction* o_conv = (LDKErrorAction*)untag_ptr(o);
+ int64_t ret_conv = ErrorAction_hash(o_conv);
+ return ret_conv;
+}
+
void CS_LDK_LightningError_free(int64_t this_obj) {
LDKLightningError this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_ref;
}
+int64_t CS_LDK_CommitmentUpdate_hash(int64_t o) {
+ LDKCommitmentUpdate o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = CommitmentUpdate_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_CommitmentUpdate_eq(int64_t a, int64_t b) {
LDKCommitmentUpdate a_conv;
a_conv.inner = untag_ptr(a);
OnionMessageHandler_free(this_ptr_conv);
}
+void CS_LDK_FinalOnionHopData_free(int64_t this_obj) {
+ LDKFinalOnionHopData this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ FinalOnionHopData_free(this_obj_conv);
+}
+
+int8_tArray CS_LDK_FinalOnionHopData_get_payment_secret(int64_t this_ptr) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *FinalOnionHopData_get_payment_secret(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_FinalOnionHopData_set_payment_secret(int64_t this_ptr, int8_tArray val) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ FinalOnionHopData_set_payment_secret(&this_ptr_conv, val_ref);
+}
+
+int64_t CS_LDK_FinalOnionHopData_get_total_msat(int64_t this_ptr) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = FinalOnionHopData_get_total_msat(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_FinalOnionHopData_set_total_msat(int64_t this_ptr, int64_t val) {
+ LDKFinalOnionHopData this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ FinalOnionHopData_set_total_msat(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_FinalOnionHopData_new(int8_tArray payment_secret_arg, int64_t total_msat_arg) {
+ LDKThirtyTwoBytes payment_secret_arg_ref;
+ CHECK(payment_secret_arg->arr_len == 32);
+ memcpy(payment_secret_arg_ref.data, payment_secret_arg->elems, 32); FREE(payment_secret_arg);
+ LDKFinalOnionHopData ret_var = FinalOnionHopData_new(payment_secret_arg_ref, total_msat_arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+static inline uint64_t FinalOnionHopData_clone_ptr(LDKFinalOnionHopData *NONNULL_PTR arg) {
+ LDKFinalOnionHopData ret_var = FinalOnionHopData_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_FinalOnionHopData_clone_ptr(int64_t arg) {
+ LDKFinalOnionHopData arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = FinalOnionHopData_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_FinalOnionHopData_clone(int64_t orig) {
+ LDKFinalOnionHopData orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKFinalOnionHopData ret_var = FinalOnionHopData_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_OnionPacket_free(int64_t this_obj) {
+ LDKOnionPacket this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ OnionPacket_free(this_obj_conv);
+}
+
+int8_t CS_LDK_OnionPacket_get_version(int64_t this_ptr) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_t ret_conv = OnionPacket_get_version(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_OnionPacket_set_version(int64_t this_ptr, int8_t val) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ OnionPacket_set_version(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_OnionPacket_get_public_key(int64_t this_ptr) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCResult_PublicKeySecp256k1ErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_PublicKeySecp256k1ErrorZ), "LDKCResult_PublicKeySecp256k1ErrorZ");
+ *ret_conv = OnionPacket_get_public_key(&this_ptr_conv);
+ return tag_ptr(ret_conv, true);
+}
+
+void CS_LDK_OnionPacket_set_public_key(int64_t this_ptr, int64_t val) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCResult_PublicKeySecp256k1ErrorZ val_conv = *(LDKCResult_PublicKeySecp256k1ErrorZ*)(val_ptr);
+ val_conv = CResult_PublicKeySecp256k1ErrorZ_clone((LDKCResult_PublicKeySecp256k1ErrorZ*)untag_ptr(val));
+ OnionPacket_set_public_key(&this_ptr_conv, val_conv);
+}
+
+int8_tArray CS_LDK_OnionPacket_get_hmac(int64_t this_ptr) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *OnionPacket_get_hmac(&this_ptr_conv), 32);
+ return ret_arr;
+}
+
+void CS_LDK_OnionPacket_set_hmac(int64_t this_ptr, int8_tArray val) {
+ LDKOnionPacket this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKThirtyTwoBytes val_ref;
+ CHECK(val->arr_len == 32);
+ memcpy(val_ref.data, val->elems, 32); FREE(val);
+ OnionPacket_set_hmac(&this_ptr_conv, val_ref);
+}
+
+static inline uint64_t OnionPacket_clone_ptr(LDKOnionPacket *NONNULL_PTR arg) {
+ LDKOnionPacket ret_var = OnionPacket_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_OnionPacket_clone_ptr(int64_t arg) {
+ LDKOnionPacket arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = OnionPacket_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_OnionPacket_clone(int64_t orig) {
+ LDKOnionPacket orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKOnionPacket ret_var = OnionPacket_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_OnionPacket_hash(int64_t o) {
+ LDKOnionPacket o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OnionPacket_hash(&o_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_OnionPacket_eq(int64_t a, int64_t b) {
+ LDKOnionPacket a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv.is_owned = false;
+ LDKOnionPacket b_conv;
+ b_conv.inner = untag_ptr(b);
+ b_conv.is_owned = ptr_is_owned(b);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(b_conv);
+ b_conv.is_owned = false;
+ jboolean ret_conv = OnionPacket_eq(&a_conv, &b_conv);
+ return ret_conv;
+}
+
int8_tArray CS_LDK_AcceptChannel_write(int64_t obj) {
LDKAcceptChannel obj_conv;
obj_conv.inner = untag_ptr(obj);
return tag_ptr(ret_conv, true);
}
+int8_tArray CS_LDK_Stfu_write(int64_t obj) {
+ LDKStfu obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = Stfu_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_Stfu_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_StfuDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_StfuDecodeErrorZ), "LDKCResult_StfuDecodeErrorZ");
+ *ret_conv = Stfu_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_Splice_write(int64_t obj) {
+ LDKSplice obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = Splice_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_Splice_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_SpliceDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceDecodeErrorZ), "LDKCResult_SpliceDecodeErrorZ");
+ *ret_conv = Splice_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_SpliceAck_write(int64_t obj) {
+ LDKSpliceAck obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = SpliceAck_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_SpliceAck_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_SpliceAckDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceAckDecodeErrorZ), "LDKCResult_SpliceAckDecodeErrorZ");
+ *ret_conv = SpliceAck_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
+int8_tArray CS_LDK_SpliceLocked_write(int64_t obj) {
+ LDKSpliceLocked obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = SpliceLocked_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_SpliceLocked_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_SpliceLockedDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SpliceLockedDecodeErrorZ), "LDKCResult_SpliceLockedDecodeErrorZ");
+ *ret_conv = SpliceLocked_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_TxAddInput_write(int64_t obj) {
LDKTxAddInput obj_conv;
obj_conv.inner = untag_ptr(obj);
return tag_ptr(ret_conv, true);
}
+int8_tArray CS_LDK_OnionPacket_write(int64_t obj) {
+ LDKOnionPacket obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = OnionPacket_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_OnionPacket_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_OnionPacketDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_OnionPacketDecodeErrorZ), "LDKCResult_OnionPacketDecodeErrorZ");
+ *ret_conv = OnionPacket_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_UpdateAddHTLC_write(int64_t obj) {
LDKUpdateAddHTLC obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_arr;
}
+int8_tArray CS_LDK_FinalOnionHopData_write(int64_t obj) {
+ LDKFinalOnionHopData obj_conv;
+ obj_conv.inner = untag_ptr(obj);
+ obj_conv.is_owned = ptr_is_owned(obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(obj_conv);
+ obj_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = FinalOnionHopData_write(&obj_conv);
+ int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
+ memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
+ return ret_arr;
+}
+
+int64_t CS_LDK_FinalOnionHopData_read(int8_tArray ser) {
+ LDKu8slice ser_ref;
+ ser_ref.datalen = ser->arr_len;
+ ser_ref.data = ser->elems;
+ LDKCResult_FinalOnionHopDataDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_FinalOnionHopDataDecodeErrorZ), "LDKCResult_FinalOnionHopDataDecodeErrorZ");
+ *ret_conv = FinalOnionHopData_read(ser_ref);
+ FREE(ser);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_Ping_write(int64_t obj) {
LDKPing obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_ref;
}
+int64_t CS_LDK_IgnoringMessageHandler_as_EventsProvider(int64_t this_arg) {
+ LDKIgnoringMessageHandler this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ LDKEventsProvider* ret_ret = MALLOC(sizeof(LDKEventsProvider), "LDKEventsProvider");
+ *ret_ret = IgnoringMessageHandler_as_EventsProvider(&this_arg_conv);
+ return tag_ptr(ret_ret, true);
+}
+
int64_t CS_LDK_IgnoringMessageHandler_as_MessageSendEventsProvider(int64_t this_arg) {
LDKIgnoringMessageHandler this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_arr;
}
-int8_tArray CS_LDK_derive_public_key(int8_tArray per_commitment_point, int8_tArray base_point) {
- LDKPublicKey per_commitment_point_ref;
- CHECK(per_commitment_point->arr_len == 33);
- memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
- LDKPublicKey base_point_ref;
- CHECK(base_point->arr_len == 33);
- memcpy(base_point_ref.compressed_form, base_point->elems, 33); FREE(base_point);
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, derive_public_key(per_commitment_point_ref, base_point_ref).compressed_form, 33);
- return ret_arr;
-}
-
int8_tArray CS_LDK_derive_private_revocation_key(int8_tArray per_commitment_secret, int8_tArray countersignatory_revocation_base_secret) {
uint8_t per_commitment_secret_arr[32];
CHECK(per_commitment_secret->arr_len == 32);
return ret_arr;
}
-int8_tArray CS_LDK_derive_public_revocation_key(int8_tArray per_commitment_point, int8_tArray countersignatory_revocation_base_point) {
- LDKPublicKey per_commitment_point_ref;
- CHECK(per_commitment_point->arr_len == 33);
- memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
- LDKPublicKey countersignatory_revocation_base_point_ref;
- CHECK(countersignatory_revocation_base_point->arr_len == 33);
- memcpy(countersignatory_revocation_base_point_ref.compressed_form, countersignatory_revocation_base_point->elems, 33); FREE(countersignatory_revocation_base_point);
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, derive_public_revocation_key(per_commitment_point_ref, countersignatory_revocation_base_point_ref).compressed_form, 33);
- return ret_arr;
-}
-
void CS_LDK_TxCreationKeys_free(int64_t this_obj) {
LDKTxCreationKeys this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
TxCreationKeys_set_per_commitment_point(&this_ptr_conv, val_ref);
}
-int8_tArray CS_LDK_TxCreationKeys_get_revocation_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_revocation_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_revocation_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKRevocationKey ret_var = TxCreationKeys_get_revocation_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_revocation_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_revocation_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_revocation_key(&this_ptr_conv, val_ref);
+ LDKRevocationKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = RevocationKey_clone(&val_conv);
+ TxCreationKeys_set_revocation_key(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_TxCreationKeys_get_broadcaster_htlc_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_broadcaster_htlc_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKHtlcKey ret_var = TxCreationKeys_get_broadcaster_htlc_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_broadcaster_htlc_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_broadcaster_htlc_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_ref);
+ LDKHtlcKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = HtlcKey_clone(&val_conv);
+ TxCreationKeys_set_broadcaster_htlc_key(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_TxCreationKeys_get_countersignatory_htlc_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_countersignatory_htlc_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKHtlcKey ret_var = TxCreationKeys_get_countersignatory_htlc_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_countersignatory_htlc_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_countersignatory_htlc_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_ref);
+ LDKHtlcKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = HtlcKey_clone(&val_conv);
+ TxCreationKeys_set_countersignatory_htlc_key(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_TxCreationKeys_get_broadcaster_delayed_payment_key(int64_t this_ptr) {
+int64_t CS_LDK_TxCreationKeys_get_broadcaster_delayed_payment_key(int64_t this_ptr) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKDelayedPaymentKey ret_var = TxCreationKeys_get_broadcaster_delayed_payment_key(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_TxCreationKeys_set_broadcaster_delayed_payment_key(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_TxCreationKeys_set_broadcaster_delayed_payment_key(int64_t this_ptr, int64_t val) {
LDKTxCreationKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_ref);
+ LDKDelayedPaymentKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = DelayedPaymentKey_clone(&val_conv);
+ TxCreationKeys_set_broadcaster_delayed_payment_key(&this_ptr_conv, val_conv);
}
-int64_t CS_LDK_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int8_tArray revocation_key_arg, int8_tArray broadcaster_htlc_key_arg, int8_tArray countersignatory_htlc_key_arg, int8_tArray broadcaster_delayed_payment_key_arg) {
+int64_t CS_LDK_TxCreationKeys_new(int8_tArray per_commitment_point_arg, int64_t revocation_key_arg, int64_t broadcaster_htlc_key_arg, int64_t countersignatory_htlc_key_arg, int64_t broadcaster_delayed_payment_key_arg) {
LDKPublicKey per_commitment_point_arg_ref;
CHECK(per_commitment_point_arg->arr_len == 33);
memcpy(per_commitment_point_arg_ref.compressed_form, per_commitment_point_arg->elems, 33); FREE(per_commitment_point_arg);
- LDKPublicKey revocation_key_arg_ref;
- CHECK(revocation_key_arg->arr_len == 33);
- memcpy(revocation_key_arg_ref.compressed_form, revocation_key_arg->elems, 33); FREE(revocation_key_arg);
- LDKPublicKey broadcaster_htlc_key_arg_ref;
- CHECK(broadcaster_htlc_key_arg->arr_len == 33);
- memcpy(broadcaster_htlc_key_arg_ref.compressed_form, broadcaster_htlc_key_arg->elems, 33); FREE(broadcaster_htlc_key_arg);
- LDKPublicKey countersignatory_htlc_key_arg_ref;
- CHECK(countersignatory_htlc_key_arg->arr_len == 33);
- memcpy(countersignatory_htlc_key_arg_ref.compressed_form, countersignatory_htlc_key_arg->elems, 33); FREE(countersignatory_htlc_key_arg);
- LDKPublicKey broadcaster_delayed_payment_key_arg_ref;
- CHECK(broadcaster_delayed_payment_key_arg->arr_len == 33);
- memcpy(broadcaster_delayed_payment_key_arg_ref.compressed_form, broadcaster_delayed_payment_key_arg->elems, 33); FREE(broadcaster_delayed_payment_key_arg);
- LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_ref, broadcaster_htlc_key_arg_ref, countersignatory_htlc_key_arg_ref, broadcaster_delayed_payment_key_arg_ref);
+ LDKRevocationKey revocation_key_arg_conv;
+ revocation_key_arg_conv.inner = untag_ptr(revocation_key_arg);
+ revocation_key_arg_conv.is_owned = ptr_is_owned(revocation_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_key_arg_conv);
+ revocation_key_arg_conv = RevocationKey_clone(&revocation_key_arg_conv);
+ LDKHtlcKey broadcaster_htlc_key_arg_conv;
+ broadcaster_htlc_key_arg_conv.inner = untag_ptr(broadcaster_htlc_key_arg);
+ broadcaster_htlc_key_arg_conv.is_owned = ptr_is_owned(broadcaster_htlc_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_htlc_key_arg_conv);
+ broadcaster_htlc_key_arg_conv = HtlcKey_clone(&broadcaster_htlc_key_arg_conv);
+ LDKHtlcKey countersignatory_htlc_key_arg_conv;
+ countersignatory_htlc_key_arg_conv.inner = untag_ptr(countersignatory_htlc_key_arg);
+ countersignatory_htlc_key_arg_conv.is_owned = ptr_is_owned(countersignatory_htlc_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_htlc_key_arg_conv);
+ countersignatory_htlc_key_arg_conv = HtlcKey_clone(&countersignatory_htlc_key_arg_conv);
+ LDKDelayedPaymentKey broadcaster_delayed_payment_key_arg_conv;
+ broadcaster_delayed_payment_key_arg_conv.inner = untag_ptr(broadcaster_delayed_payment_key_arg);
+ broadcaster_delayed_payment_key_arg_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_key_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_key_arg_conv);
+ broadcaster_delayed_payment_key_arg_conv = DelayedPaymentKey_clone(&broadcaster_delayed_payment_key_arg_conv);
+ LDKTxCreationKeys ret_var = TxCreationKeys_new(per_commitment_point_arg_ref, revocation_key_arg_conv, broadcaster_htlc_key_arg_conv, countersignatory_htlc_key_arg_conv, broadcaster_delayed_payment_key_arg_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
ChannelPublicKeys_set_funding_pubkey(&this_ptr_conv, val_ref);
}
-int8_tArray CS_LDK_ChannelPublicKeys_get_revocation_basepoint(int64_t this_ptr) {
+int64_t CS_LDK_ChannelPublicKeys_get_revocation_basepoint(int64_t this_ptr) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKRevocationBasepoint ret_var = ChannelPublicKeys_get_revocation_basepoint(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_ChannelPublicKeys_set_revocation_basepoint(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_ChannelPublicKeys_set_revocation_basepoint(int64_t this_ptr, int64_t val) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_ref);
+ LDKRevocationBasepoint val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = RevocationBasepoint_clone(&val_conv);
+ ChannelPublicKeys_set_revocation_basepoint(&this_ptr_conv, val_conv);
}
int8_tArray CS_LDK_ChannelPublicKeys_get_payment_point(int64_t this_ptr) {
ChannelPublicKeys_set_payment_point(&this_ptr_conv, val_ref);
}
-int8_tArray CS_LDK_ChannelPublicKeys_get_delayed_payment_basepoint(int64_t this_ptr) {
+int64_t CS_LDK_ChannelPublicKeys_get_delayed_payment_basepoint(int64_t this_ptr) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKDelayedPaymentBasepoint ret_var = ChannelPublicKeys_get_delayed_payment_basepoint(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_ChannelPublicKeys_set_delayed_payment_basepoint(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_ChannelPublicKeys_set_delayed_payment_basepoint(int64_t this_ptr, int64_t val) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_ref);
+ LDKDelayedPaymentBasepoint val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = DelayedPaymentBasepoint_clone(&val_conv);
+ ChannelPublicKeys_set_delayed_payment_basepoint(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_ChannelPublicKeys_get_htlc_basepoint(int64_t this_ptr) {
+int64_t CS_LDK_ChannelPublicKeys_get_htlc_basepoint(int64_t this_ptr) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKHtlcBasepoint ret_var = ChannelPublicKeys_get_htlc_basepoint(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_ChannelPublicKeys_set_htlc_basepoint(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_ChannelPublicKeys_set_htlc_basepoint(int64_t this_ptr, int64_t val) {
LDKChannelPublicKeys this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_ref);
+ LDKHtlcBasepoint val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = HtlcBasepoint_clone(&val_conv);
+ ChannelPublicKeys_set_htlc_basepoint(&this_ptr_conv, val_conv);
}
-int64_t CS_LDK_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int8_tArray revocation_basepoint_arg, int8_tArray payment_point_arg, int8_tArray delayed_payment_basepoint_arg, int8_tArray htlc_basepoint_arg) {
+int64_t CS_LDK_ChannelPublicKeys_new(int8_tArray funding_pubkey_arg, int64_t revocation_basepoint_arg, int8_tArray payment_point_arg, int64_t delayed_payment_basepoint_arg, int64_t htlc_basepoint_arg) {
LDKPublicKey funding_pubkey_arg_ref;
CHECK(funding_pubkey_arg->arr_len == 33);
memcpy(funding_pubkey_arg_ref.compressed_form, funding_pubkey_arg->elems, 33); FREE(funding_pubkey_arg);
- LDKPublicKey revocation_basepoint_arg_ref;
- CHECK(revocation_basepoint_arg->arr_len == 33);
- memcpy(revocation_basepoint_arg_ref.compressed_form, revocation_basepoint_arg->elems, 33); FREE(revocation_basepoint_arg);
+ LDKRevocationBasepoint revocation_basepoint_arg_conv;
+ revocation_basepoint_arg_conv.inner = untag_ptr(revocation_basepoint_arg);
+ revocation_basepoint_arg_conv.is_owned = ptr_is_owned(revocation_basepoint_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_basepoint_arg_conv);
+ revocation_basepoint_arg_conv = RevocationBasepoint_clone(&revocation_basepoint_arg_conv);
LDKPublicKey payment_point_arg_ref;
CHECK(payment_point_arg->arr_len == 33);
memcpy(payment_point_arg_ref.compressed_form, payment_point_arg->elems, 33); FREE(payment_point_arg);
- LDKPublicKey delayed_payment_basepoint_arg_ref;
- CHECK(delayed_payment_basepoint_arg->arr_len == 33);
- memcpy(delayed_payment_basepoint_arg_ref.compressed_form, delayed_payment_basepoint_arg->elems, 33); FREE(delayed_payment_basepoint_arg);
- LDKPublicKey htlc_basepoint_arg_ref;
- CHECK(htlc_basepoint_arg->arr_len == 33);
- memcpy(htlc_basepoint_arg_ref.compressed_form, htlc_basepoint_arg->elems, 33); FREE(htlc_basepoint_arg);
- LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_ref, payment_point_arg_ref, delayed_payment_basepoint_arg_ref, htlc_basepoint_arg_ref);
+ LDKDelayedPaymentBasepoint delayed_payment_basepoint_arg_conv;
+ delayed_payment_basepoint_arg_conv.inner = untag_ptr(delayed_payment_basepoint_arg);
+ delayed_payment_basepoint_arg_conv.is_owned = ptr_is_owned(delayed_payment_basepoint_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(delayed_payment_basepoint_arg_conv);
+ delayed_payment_basepoint_arg_conv = DelayedPaymentBasepoint_clone(&delayed_payment_basepoint_arg_conv);
+ LDKHtlcBasepoint htlc_basepoint_arg_conv;
+ htlc_basepoint_arg_conv.inner = untag_ptr(htlc_basepoint_arg);
+ htlc_basepoint_arg_conv.is_owned = ptr_is_owned(htlc_basepoint_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(htlc_basepoint_arg_conv);
+ htlc_basepoint_arg_conv = HtlcBasepoint_clone(&htlc_basepoint_arg_conv);
+ LDKChannelPublicKeys ret_var = ChannelPublicKeys_new(funding_pubkey_arg_ref, revocation_basepoint_arg_conv, payment_point_arg_ref, delayed_payment_basepoint_arg_conv, htlc_basepoint_arg_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int8_tArray broadcaster_delayed_payment_base, int8_tArray broadcaster_htlc_base, int8_tArray countersignatory_revocation_base, int8_tArray countersignatory_htlc_base) {
+int64_t CS_LDK_TxCreationKeys_derive_new(int8_tArray per_commitment_point, int64_t broadcaster_delayed_payment_base, int64_t broadcaster_htlc_base, int64_t countersignatory_revocation_base, int64_t countersignatory_htlc_base) {
LDKPublicKey per_commitment_point_ref;
CHECK(per_commitment_point->arr_len == 33);
memcpy(per_commitment_point_ref.compressed_form, per_commitment_point->elems, 33); FREE(per_commitment_point);
- LDKPublicKey broadcaster_delayed_payment_base_ref;
- CHECK(broadcaster_delayed_payment_base->arr_len == 33);
- memcpy(broadcaster_delayed_payment_base_ref.compressed_form, broadcaster_delayed_payment_base->elems, 33); FREE(broadcaster_delayed_payment_base);
- LDKPublicKey broadcaster_htlc_base_ref;
- CHECK(broadcaster_htlc_base->arr_len == 33);
- memcpy(broadcaster_htlc_base_ref.compressed_form, broadcaster_htlc_base->elems, 33); FREE(broadcaster_htlc_base);
- LDKPublicKey countersignatory_revocation_base_ref;
- CHECK(countersignatory_revocation_base->arr_len == 33);
- memcpy(countersignatory_revocation_base_ref.compressed_form, countersignatory_revocation_base->elems, 33); FREE(countersignatory_revocation_base);
- LDKPublicKey countersignatory_htlc_base_ref;
- CHECK(countersignatory_htlc_base->arr_len == 33);
- memcpy(countersignatory_htlc_base_ref.compressed_form, countersignatory_htlc_base->elems, 33); FREE(countersignatory_htlc_base);
- LDKTxCreationKeys ret_var = TxCreationKeys_derive_new(per_commitment_point_ref, broadcaster_delayed_payment_base_ref, broadcaster_htlc_base_ref, countersignatory_revocation_base_ref, countersignatory_htlc_base_ref);
+ LDKDelayedPaymentBasepoint broadcaster_delayed_payment_base_conv;
+ broadcaster_delayed_payment_base_conv.inner = untag_ptr(broadcaster_delayed_payment_base);
+ broadcaster_delayed_payment_base_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_base_conv);
+ broadcaster_delayed_payment_base_conv.is_owned = false;
+ LDKHtlcBasepoint broadcaster_htlc_base_conv;
+ broadcaster_htlc_base_conv.inner = untag_ptr(broadcaster_htlc_base);
+ broadcaster_htlc_base_conv.is_owned = ptr_is_owned(broadcaster_htlc_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_htlc_base_conv);
+ broadcaster_htlc_base_conv.is_owned = false;
+ LDKRevocationBasepoint countersignatory_revocation_base_conv;
+ countersignatory_revocation_base_conv.inner = untag_ptr(countersignatory_revocation_base);
+ countersignatory_revocation_base_conv.is_owned = ptr_is_owned(countersignatory_revocation_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_revocation_base_conv);
+ countersignatory_revocation_base_conv.is_owned = false;
+ LDKHtlcBasepoint countersignatory_htlc_base_conv;
+ countersignatory_htlc_base_conv.inner = untag_ptr(countersignatory_htlc_base);
+ countersignatory_htlc_base_conv.is_owned = ptr_is_owned(countersignatory_htlc_base);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(countersignatory_htlc_base_conv);
+ countersignatory_htlc_base_conv.is_owned = false;
+ LDKTxCreationKeys ret_var = TxCreationKeys_derive_new(per_commitment_point_ref, &broadcaster_delayed_payment_base_conv, &broadcaster_htlc_base_conv, &countersignatory_revocation_base_conv, &countersignatory_htlc_base_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-int8_tArray CS_LDK_get_revokeable_redeemscript(int8_tArray revocation_key, int16_t contest_delay, int8_tArray broadcaster_delayed_payment_key) {
- LDKPublicKey revocation_key_ref;
- CHECK(revocation_key->arr_len == 33);
- memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); FREE(revocation_key);
- LDKPublicKey broadcaster_delayed_payment_key_ref;
- CHECK(broadcaster_delayed_payment_key->arr_len == 33);
- memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); FREE(broadcaster_delayed_payment_key);
- LDKCVec_u8Z ret_var = get_revokeable_redeemscript(revocation_key_ref, contest_delay, broadcaster_delayed_payment_key_ref);
+int8_tArray CS_LDK_get_revokeable_redeemscript(int64_t revocation_key, int16_t contest_delay, int64_t broadcaster_delayed_payment_key) {
+ LDKRevocationKey revocation_key_conv;
+ revocation_key_conv.inner = untag_ptr(revocation_key);
+ revocation_key_conv.is_owned = ptr_is_owned(revocation_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_key_conv);
+ revocation_key_conv.is_owned = false;
+ LDKDelayedPaymentKey broadcaster_delayed_payment_key_conv;
+ broadcaster_delayed_payment_key_conv.inner = untag_ptr(broadcaster_delayed_payment_key);
+ broadcaster_delayed_payment_key_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_key_conv);
+ broadcaster_delayed_payment_key_conv.is_owned = false;
+ LDKCVec_u8Z ret_var = get_revokeable_redeemscript(&revocation_key_conv, contest_delay, &broadcaster_delayed_payment_key_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
CVec_u8Z_free(ret_var);
return ret_arr;
}
-int8_tArray CS_LDK_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, int64_t htlc, int64_t channel_type_features, int8_tArray broadcaster_delayed_payment_key, int8_tArray revocation_key) {
+int8_tArray CS_LDK_build_htlc_transaction(int8_tArray commitment_txid, int32_t feerate_per_kw, int16_t contest_delay, int64_t htlc, int64_t channel_type_features, int64_t broadcaster_delayed_payment_key, int64_t revocation_key) {
uint8_t commitment_txid_arr[32];
CHECK(commitment_txid->arr_len == 32);
memcpy(commitment_txid_arr, commitment_txid->elems, 32); FREE(commitment_txid);
channel_type_features_conv.is_owned = ptr_is_owned(channel_type_features);
CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_type_features_conv);
channel_type_features_conv.is_owned = false;
- LDKPublicKey broadcaster_delayed_payment_key_ref;
- CHECK(broadcaster_delayed_payment_key->arr_len == 33);
- memcpy(broadcaster_delayed_payment_key_ref.compressed_form, broadcaster_delayed_payment_key->elems, 33); FREE(broadcaster_delayed_payment_key);
- LDKPublicKey revocation_key_ref;
- CHECK(revocation_key->arr_len == 33);
- memcpy(revocation_key_ref.compressed_form, revocation_key->elems, 33); FREE(revocation_key);
- LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, &channel_type_features_conv, broadcaster_delayed_payment_key_ref, revocation_key_ref);
+ LDKDelayedPaymentKey broadcaster_delayed_payment_key_conv;
+ broadcaster_delayed_payment_key_conv.inner = untag_ptr(broadcaster_delayed_payment_key);
+ broadcaster_delayed_payment_key_conv.is_owned = ptr_is_owned(broadcaster_delayed_payment_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(broadcaster_delayed_payment_key_conv);
+ broadcaster_delayed_payment_key_conv.is_owned = false;
+ LDKRevocationKey revocation_key_conv;
+ revocation_key_conv.inner = untag_ptr(revocation_key);
+ revocation_key_conv.is_owned = ptr_is_owned(revocation_key);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_key_conv);
+ revocation_key_conv.is_owned = false;
+ LDKTransaction ret_var = build_htlc_transaction(commitment_txid_ref, feerate_per_kw, contest_delay, &htlc_conv, &channel_type_features_conv, &broadcaster_delayed_payment_key_conv, &revocation_key_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
Transaction_free(ret_var);
return ret_ref;
}
+int64_t CS_LDK_InitFeatures_hash(int64_t o) {
+ LDKInitFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = InitFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_NodeFeatures_hash(int64_t o) {
+ LDKNodeFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = NodeFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_ChannelFeatures_hash(int64_t o) {
+ LDKChannelFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Bolt11InvoiceFeatures_hash(int64_t o) {
+ LDKBolt11InvoiceFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Bolt11InvoiceFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_OfferFeatures_hash(int64_t o) {
+ LDKOfferFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = OfferFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_InvoiceRequestFeatures_hash(int64_t o) {
+ LDKInvoiceRequestFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = InvoiceRequestFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_Bolt12InvoiceFeatures_hash(int64_t o) {
+ LDKBolt12InvoiceFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Bolt12InvoiceFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedHopFeatures_hash(int64_t o) {
+ LDKBlindedHopFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = BlindedHopFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_ChannelTypeFeatures_hash(int64_t o) {
+ LDKChannelTypeFeatures o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = ChannelTypeFeatures_hash(&o_conv);
+ return ret_conv;
+}
+
void CS_LDK_InitFeatures_free(int64_t this_obj) {
LDKInitFeatures this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_conv;
}
+void CS_LDK_InitFeatures_set_route_blinding_optional(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ InitFeatures_set_route_blinding_optional(&this_arg_conv);
+}
+
+void CS_LDK_InitFeatures_set_route_blinding_required(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ InitFeatures_set_route_blinding_required(&this_arg_conv);
+}
+
+jboolean CS_LDK_InitFeatures_supports_route_blinding(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = InitFeatures_supports_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
+void CS_LDK_NodeFeatures_set_route_blinding_optional(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ NodeFeatures_set_route_blinding_optional(&this_arg_conv);
+}
+
+void CS_LDK_NodeFeatures_set_route_blinding_required(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ NodeFeatures_set_route_blinding_required(&this_arg_conv);
+}
+
+jboolean CS_LDK_NodeFeatures_supports_route_blinding(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = NodeFeatures_supports_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_InitFeatures_requires_route_blinding(int64_t this_arg) {
+ LDKInitFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = InitFeatures_requires_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
+jboolean CS_LDK_NodeFeatures_requires_route_blinding(int64_t this_arg) {
+ LDKNodeFeatures this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = NodeFeatures_requires_route_blinding(&this_arg_conv);
+ return ret_conv;
+}
+
void CS_LDK_InitFeatures_set_shutdown_any_segwit_optional(int64_t this_arg) {
LDKInitFeatures this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKu8slice ret_var = InvalidShutdownScript_get_script(&this_ptr_conv);
+ LDKCVec_u8Z ret_var = InvalidShutdownScript_get_script(&this_ptr_conv);
int8_tArray ret_arr = init_int8_tArray(ret_var.datalen, __LINE__);
memcpy(ret_arr->elems, ret_var.data, ret_var.datalen);
+ CVec_u8Z_free(ret_var);
return ret_arr;
}
return ret_ref;
}
-int64_t CS_LDK_ShutdownScript_new_witness_program(int8_t version, int8_tArray program) {
-
- LDKu8slice program_ref;
- program_ref.datalen = program->arr_len;
- program_ref.data = program->elems;
+int64_t CS_LDK_ShutdownScript_new_witness_program(int64_t witness_program) {
+ void* witness_program_ptr = untag_ptr(witness_program);
+ CHECK_ACCESS(witness_program_ptr);
+ LDKWitnessProgram witness_program_conv = *(LDKWitnessProgram*)(witness_program_ptr);
+ witness_program_conv = WitnessProgram_clone((LDKWitnessProgram*)untag_ptr(witness_program));
LDKCResult_ShutdownScriptInvalidShutdownScriptZ* ret_conv = MALLOC(sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ), "LDKCResult_ShutdownScriptInvalidShutdownScriptZ");
- *ret_conv = ShutdownScript_new_witness_program((LDKWitnessVersion){ ._0 = version }, program_ref);
- FREE(program);
+ *ret_conv = ShutdownScript_new_witness_program(witness_program_conv);
return tag_ptr(ret_conv, true);
}
return ret_conv;
}
+jboolean CS_LDK_Offer_is_expired_no_std(int64_t this_arg, int64_t duration_since_epoch) {
+ LDKOffer this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = Offer_is_expired_no_std(&this_arg_conv, duration_since_epoch);
+ return ret_conv;
+}
+
jboolean CS_LDK_Offer_is_valid_quantity(int64_t this_arg, int64_t quantity) {
LDKOffer this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
TaggedHash_free(this_obj_conv);
}
+static inline uint64_t TaggedHash_clone_ptr(LDKTaggedHash *NONNULL_PTR arg) {
+ LDKTaggedHash ret_var = TaggedHash_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_TaggedHash_clone_ptr(int64_t arg) {
+ LDKTaggedHash arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = TaggedHash_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_TaggedHash_clone(int64_t orig) {
+ LDKTaggedHash orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKTaggedHash ret_var = TaggedHash_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int8_tArray CS_LDK_TaggedHash_as_digest(int64_t this_arg) {
+ LDKTaggedHash this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, *TaggedHash_as_digest(&this_arg_conv), 32);
+ return ret_arr;
+}
+
+jstring CS_LDK_TaggedHash_tag(int64_t this_arg) {
+ LDKTaggedHash this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ LDKStr ret_str = TaggedHash_tag(&this_arg_conv);
+ jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
+ Str_free(ret_str);
+ return ret_conv;
+}
+
+int8_tArray CS_LDK_TaggedHash_merkle_root(int64_t this_arg) {
+ LDKTaggedHash this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(32, __LINE__);
+ memcpy(ret_arr->elems, TaggedHash_merkle_root(&this_arg_conv).data, 32);
+ return ret_arr;
+}
+
void CS_LDK_Bolt12ParseError_free(int64_t this_obj) {
LDKBolt12ParseError this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_conv;
}
+jboolean CS_LDK_Refund_is_expired_no_std(int64_t this_arg, int64_t duration_since_epoch) {
+ LDKRefund this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ jboolean ret_conv = Refund_is_expired_no_std(&this_arg_conv, duration_since_epoch);
+ return ret_conv;
+}
+
int64_t CS_LDK_Refund_issuer(int64_t this_arg) {
LDKRefund this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_arr;
}
+int8_tArray CS_LDK_NodeId_as_array(int64_t this_arg) {
+ LDKNodeId this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, *NodeId_as_array(&this_arg_conv), 33);
+ return ret_arr;
+}
+
int64_t CS_LDK_NodeId_as_pubkey(int64_t this_arg) {
LDKNodeId this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_ref;
}
-int64_t CS_LDK_DirectedChannelInfo_htlc_maximum_msat(int64_t this_arg) {
- LDKDirectedChannelInfo this_arg_conv;
- this_arg_conv.inner = untag_ptr(this_arg);
- this_arg_conv.is_owned = ptr_is_owned(this_arg);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
- this_arg_conv.is_owned = false;
- int64_t ret_conv = DirectedChannelInfo_htlc_maximum_msat(&this_arg_conv);
- return ret_conv;
-}
-
int64_t CS_LDK_DirectedChannelInfo_effective_capacity(int64_t this_arg) {
LDKDirectedChannelInfo this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
return ret_ref;
}
+int64_t CS_LDK_NodeAlias_hash(int64_t o) {
+ LDKNodeAlias o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = NodeAlias_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_NodeAlias_eq(int64_t a, int64_t b) {
LDKNodeAlias a_conv;
a_conv.inner = untag_ptr(a);
DefaultRouter_free(this_obj_conv);
}
-int64_t CS_LDK_DefaultRouter_new(int64_t network_graph, int64_t logger, int8_tArray random_seed_bytes, int64_t scorer, int64_t score_params) {
+int64_t CS_LDK_DefaultRouter_new(int64_t network_graph, int64_t logger, int64_t entropy_source, int64_t scorer, int64_t score_params) {
LDKNetworkGraph network_graph_conv;
network_graph_conv.inner = untag_ptr(network_graph);
network_graph_conv.is_owned = ptr_is_owned(network_graph);
// If this_arg is a JCalls struct, then we need to increment the refcnt in it.
LDKLogger_JCalls_cloned(&logger_conv);
}
- LDKThirtyTwoBytes random_seed_bytes_ref;
- CHECK(random_seed_bytes->arr_len == 32);
- memcpy(random_seed_bytes_ref.data, random_seed_bytes->elems, 32); FREE(random_seed_bytes);
+ void* entropy_source_ptr = untag_ptr(entropy_source);
+ CHECK_ACCESS(entropy_source_ptr);
+ LDKEntropySource entropy_source_conv = *(LDKEntropySource*)(entropy_source_ptr);
+ if (entropy_source_conv.free == LDKEntropySource_JCalls_free) {
+ // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
+ LDKEntropySource_JCalls_cloned(&entropy_source_conv);
+ }
void* scorer_ptr = untag_ptr(scorer);
CHECK_ACCESS(scorer_ptr);
LDKLockableScore scorer_conv = *(LDKLockableScore*)(scorer_ptr);
score_params_conv.is_owned = ptr_is_owned(score_params);
CHECK_INNER_FIELD_ACCESS_OR_NULL(score_params_conv);
score_params_conv = ProbabilisticScoringFeeParameters_clone(&score_params_conv);
- LDKDefaultRouter ret_var = DefaultRouter_new(&network_graph_conv, logger_conv, random_seed_bytes_ref, scorer_conv, score_params_conv);
+ LDKDefaultRouter ret_var = DefaultRouter_new(&network_graph_conv, logger_conv, entropy_source_conv, scorer_conv, score_params_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return tag_ptr(ret_ret, true);
}
+int64_t CS_LDK_DefaultRouter_as_MessageRouter(int64_t this_arg) {
+ LDKDefaultRouter this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ LDKMessageRouter* ret_ret = MALLOC(sizeof(LDKMessageRouter), "LDKMessageRouter");
+ *ret_ret = DefaultRouter_as_MessageRouter(&this_arg_conv);
+ return tag_ptr(ret_ret, true);
+}
+
void CS_LDK_Router_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
PaymentParameters_set_previously_failed_channels(&this_ptr_conv, val_constr);
}
-int64_t CS_LDK_PaymentParameters_new(int64_t payee_arg, int64_t expiry_time_arg, int32_t max_total_cltv_expiry_delta_arg, int8_t max_path_count_arg, int8_t max_channel_saturation_power_of_half_arg, int64_tArray previously_failed_channels_arg) {
+int64_tArray CS_LDK_PaymentParameters_get_previously_failed_blinded_path_idxs(int64_t this_ptr) {
+ LDKPaymentParameters this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u64Z ret_var = PaymentParameters_get_previously_failed_blinded_path_idxs(&this_ptr_conv);
+ int64_tArray ret_arr = NULL;
+ ret_arr = init_int64_tArray(ret_var.datalen, __LINE__);
+ int64_t *ret_arr_ptr = (int64_t*)(((uint8_t*)ret_arr) + 8);
+ for (size_t g = 0; g < ret_var.datalen; g++) {
+ int64_t ret_conv_6_conv = ret_var.data[g];
+ ret_arr_ptr[g] = ret_conv_6_conv;
+ }
+
+ FREE(ret_var.data);
+ return ret_arr;
+}
+
+void CS_LDK_PaymentParameters_set_previously_failed_blinded_path_idxs(int64_t this_ptr, int64_tArray val) {
+ LDKPaymentParameters this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCVec_u64Z val_constr;
+ val_constr.datalen = val->arr_len;
+ if (val_constr.datalen > 0)
+ val_constr.data = MALLOC(val_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements");
+ else
+ val_constr.data = NULL;
+ int64_t* val_vals = val->elems;
+ for (size_t g = 0; g < val_constr.datalen; g++) {
+ int64_t val_conv_6 = val_vals[g];
+ val_constr.data[g] = val_conv_6;
+ }
+ FREE(val);
+ PaymentParameters_set_previously_failed_blinded_path_idxs(&this_ptr_conv, val_constr);
+}
+
+int64_t CS_LDK_PaymentParameters_new(int64_t payee_arg, int64_t expiry_time_arg, int32_t max_total_cltv_expiry_delta_arg, int8_t max_path_count_arg, int8_t max_channel_saturation_power_of_half_arg, int64_tArray previously_failed_channels_arg, int64_tArray previously_failed_blinded_path_idxs_arg) {
void* payee_arg_ptr = untag_ptr(payee_arg);
CHECK_ACCESS(payee_arg_ptr);
LDKPayee payee_arg_conv = *(LDKPayee*)(payee_arg_ptr);
previously_failed_channels_arg_constr.data[g] = previously_failed_channels_arg_conv_6;
}
FREE(previously_failed_channels_arg);
- LDKPaymentParameters ret_var = PaymentParameters_new(payee_arg_conv, expiry_time_arg_conv, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, previously_failed_channels_arg_constr);
+ LDKCVec_u64Z previously_failed_blinded_path_idxs_arg_constr;
+ previously_failed_blinded_path_idxs_arg_constr.datalen = previously_failed_blinded_path_idxs_arg->arr_len;
+ if (previously_failed_blinded_path_idxs_arg_constr.datalen > 0)
+ previously_failed_blinded_path_idxs_arg_constr.data = MALLOC(previously_failed_blinded_path_idxs_arg_constr.datalen * sizeof(int64_t), "LDKCVec_u64Z Elements");
+ else
+ previously_failed_blinded_path_idxs_arg_constr.data = NULL;
+ int64_t* previously_failed_blinded_path_idxs_arg_vals = previously_failed_blinded_path_idxs_arg->elems;
+ for (size_t g = 0; g < previously_failed_blinded_path_idxs_arg_constr.datalen; g++) {
+ int64_t previously_failed_blinded_path_idxs_arg_conv_6 = previously_failed_blinded_path_idxs_arg_vals[g];
+ previously_failed_blinded_path_idxs_arg_constr.data[g] = previously_failed_blinded_path_idxs_arg_conv_6;
+ }
+ FREE(previously_failed_blinded_path_idxs_arg);
+ LDKPaymentParameters ret_var = PaymentParameters_new(payee_arg_conv, expiry_time_arg_conv, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, previously_failed_channels_arg_constr, previously_failed_blinded_path_idxs_arg_constr);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return tag_ptr(ret_conv, true);
}
+void CS_LDK_FirstHopCandidate_free(int64_t this_obj) {
+ LDKFirstHopCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ FirstHopCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t FirstHopCandidate_clone_ptr(LDKFirstHopCandidate *NONNULL_PTR arg) {
+ LDKFirstHopCandidate ret_var = FirstHopCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_FirstHopCandidate_clone_ptr(int64_t arg) {
+ LDKFirstHopCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = FirstHopCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_FirstHopCandidate_clone(int64_t orig) {
+ LDKFirstHopCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKFirstHopCandidate ret_var = FirstHopCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_PublicHopCandidate_free(int64_t this_obj) {
+ LDKPublicHopCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ PublicHopCandidate_free(this_obj_conv);
+}
+
+int64_t CS_LDK_PublicHopCandidate_get_short_channel_id(int64_t this_ptr) {
+ LDKPublicHopCandidate this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = PublicHopCandidate_get_short_channel_id(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_PublicHopCandidate_set_short_channel_id(int64_t this_ptr, int64_t val) {
+ LDKPublicHopCandidate this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ PublicHopCandidate_set_short_channel_id(&this_ptr_conv, val);
+}
+
+static inline uint64_t PublicHopCandidate_clone_ptr(LDKPublicHopCandidate *NONNULL_PTR arg) {
+ LDKPublicHopCandidate ret_var = PublicHopCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_PublicHopCandidate_clone_ptr(int64_t arg) {
+ LDKPublicHopCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = PublicHopCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PublicHopCandidate_clone(int64_t orig) {
+ LDKPublicHopCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKPublicHopCandidate ret_var = PublicHopCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_PrivateHopCandidate_free(int64_t this_obj) {
+ LDKPrivateHopCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ PrivateHopCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t PrivateHopCandidate_clone_ptr(LDKPrivateHopCandidate *NONNULL_PTR arg) {
+ LDKPrivateHopCandidate ret_var = PrivateHopCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_PrivateHopCandidate_clone_ptr(int64_t arg) {
+ LDKPrivateHopCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = PrivateHopCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_PrivateHopCandidate_clone(int64_t orig) {
+ LDKPrivateHopCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKPrivateHopCandidate ret_var = PrivateHopCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_BlindedPathCandidate_free(int64_t this_obj) {
+ LDKBlindedPathCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ BlindedPathCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t BlindedPathCandidate_clone_ptr(LDKBlindedPathCandidate *NONNULL_PTR arg) {
+ LDKBlindedPathCandidate ret_var = BlindedPathCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_BlindedPathCandidate_clone_ptr(int64_t arg) {
+ LDKBlindedPathCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = BlindedPathCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_BlindedPathCandidate_clone(int64_t orig) {
+ LDKBlindedPathCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKBlindedPathCandidate ret_var = BlindedPathCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_OneHopBlindedPathCandidate_free(int64_t this_obj) {
+ LDKOneHopBlindedPathCandidate this_obj_conv;
+ this_obj_conv.inner = untag_ptr(this_obj);
+ this_obj_conv.is_owned = ptr_is_owned(this_obj);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_obj_conv);
+ OneHopBlindedPathCandidate_free(this_obj_conv);
+}
+
+static inline uint64_t OneHopBlindedPathCandidate_clone_ptr(LDKOneHopBlindedPathCandidate *NONNULL_PTR arg) {
+ LDKOneHopBlindedPathCandidate ret_var = OneHopBlindedPathCandidate_clone(arg);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+int64_t CS_LDK_OneHopBlindedPathCandidate_clone_ptr(int64_t arg) {
+ LDKOneHopBlindedPathCandidate arg_conv;
+ arg_conv.inner = untag_ptr(arg);
+ arg_conv.is_owned = ptr_is_owned(arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(arg_conv);
+ arg_conv.is_owned = false;
+ int64_t ret_conv = OneHopBlindedPathCandidate_clone_ptr(&arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_OneHopBlindedPathCandidate_clone(int64_t orig) {
+ LDKOneHopBlindedPathCandidate orig_conv;
+ orig_conv.inner = untag_ptr(orig);
+ orig_conv.is_owned = ptr_is_owned(orig);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(orig_conv);
+ orig_conv.is_owned = false;
+ LDKOneHopBlindedPathCandidate ret_var = OneHopBlindedPathCandidate_clone(&orig_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+void CS_LDK_CandidateRouteHop_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKCandidateRouteHop this_ptr_conv = *(LDKCandidateRouteHop*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ CandidateRouteHop_free(this_ptr_conv);
+}
+
+static inline uint64_t CandidateRouteHop_clone_ptr(LDKCandidateRouteHop *NONNULL_PTR arg) {
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_CandidateRouteHop_clone_ptr(int64_t arg) {
+ LDKCandidateRouteHop* arg_conv = (LDKCandidateRouteHop*)untag_ptr(arg);
+ int64_t ret_conv = CandidateRouteHop_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CandidateRouteHop_clone(int64_t orig) {
+ LDKCandidateRouteHop* orig_conv = (LDKCandidateRouteHop*)untag_ptr(orig);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_first_hop(int64_t a) {
+ LDKFirstHopCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = FirstHopCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_first_hop(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_public_hop(int64_t a) {
+ LDKPublicHopCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = PublicHopCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_public_hop(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_private_hop(int64_t a) {
+ LDKPrivateHopCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = PrivateHopCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_private_hop(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_blinded(int64_t a) {
+ LDKBlindedPathCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = BlindedPathCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_blinded(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_one_hop_blinded(int64_t a) {
+ LDKOneHopBlindedPathCandidate a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = OneHopBlindedPathCandidate_clone(&a_conv);
+ LDKCandidateRouteHop *ret_copy = MALLOC(sizeof(LDKCandidateRouteHop), "LDKCandidateRouteHop");
+ *ret_copy = CandidateRouteHop_one_hop_blinded(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_globally_unique_short_channel_id(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKCOption_u64Z *ret_copy = MALLOC(sizeof(LDKCOption_u64Z), "LDKCOption_u64Z");
+ *ret_copy = CandidateRouteHop_globally_unique_short_channel_id(this_arg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int32_t CS_LDK_CandidateRouteHop_cltv_expiry_delta(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ int32_t ret_conv = CandidateRouteHop_cltv_expiry_delta(this_arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CandidateRouteHop_htlc_minimum_msat(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ int64_t ret_conv = CandidateRouteHop_htlc_minimum_msat(this_arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_CandidateRouteHop_fees(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKRoutingFees ret_var = CandidateRouteHop_fees(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_source(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKNodeId ret_var = CandidateRouteHop_source(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+int64_t CS_LDK_CandidateRouteHop_target(int64_t this_arg) {
+ LDKCandidateRouteHop* this_arg_conv = (LDKCandidateRouteHop*)untag_ptr(this_arg);
+ LDKNodeId ret_var = CandidateRouteHop_target(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
int64_t CS_LDK_find_route(int8_tArray our_node_pubkey, int64_t route_params, int64_t network_graph, int64_tArray first_hops, int64_t logger, int64_t scorer, int64_t score_params, int8_tArray random_seed_bytes) {
LDKPublicKey our_node_pubkey_ref;
CHECK(our_node_pubkey->arr_len == 33);
DelayedPaymentOutputDescriptor_set_output(&this_ptr_conv, val_conv);
}
-int8_tArray CS_LDK_DelayedPaymentOutputDescriptor_get_revocation_pubkey(int64_t this_ptr) {
+int64_t CS_LDK_DelayedPaymentOutputDescriptor_get_revocation_pubkey(int64_t this_ptr) {
LDKDelayedPaymentOutputDescriptor this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
- memcpy(ret_arr->elems, DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv).compressed_form, 33);
- return ret_arr;
+ LDKRevocationKey ret_var = DelayedPaymentOutputDescriptor_get_revocation_pubkey(&this_ptr_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
}
-void CS_LDK_DelayedPaymentOutputDescriptor_set_revocation_pubkey(int64_t this_ptr, int8_tArray val) {
+void CS_LDK_DelayedPaymentOutputDescriptor_set_revocation_pubkey(int64_t this_ptr, int64_t val) {
LDKDelayedPaymentOutputDescriptor this_ptr_conv;
this_ptr_conv.inner = untag_ptr(this_ptr);
this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
this_ptr_conv.is_owned = false;
- LDKPublicKey val_ref;
- CHECK(val->arr_len == 33);
- memcpy(val_ref.compressed_form, val->elems, 33); FREE(val);
- DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_ref);
+ LDKRevocationKey val_conv;
+ val_conv.inner = untag_ptr(val);
+ val_conv.is_owned = ptr_is_owned(val);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(val_conv);
+ val_conv = RevocationKey_clone(&val_conv);
+ DelayedPaymentOutputDescriptor_set_revocation_pubkey(&this_ptr_conv, val_conv);
}
int8_tArray CS_LDK_DelayedPaymentOutputDescriptor_get_channel_keys_id(int64_t this_ptr) {
DelayedPaymentOutputDescriptor_set_channel_value_satoshis(&this_ptr_conv, val);
}
-int64_t CS_LDK_DelayedPaymentOutputDescriptor_new(int64_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, int64_t output_arg, int8_tArray revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) {
+int64_t CS_LDK_DelayedPaymentOutputDescriptor_new(int64_t outpoint_arg, int8_tArray per_commitment_point_arg, int16_t to_self_delay_arg, int64_t output_arg, int64_t revocation_pubkey_arg, int8_tArray channel_keys_id_arg, int64_t channel_value_satoshis_arg) {
LDKOutPoint outpoint_arg_conv;
outpoint_arg_conv.inner = untag_ptr(outpoint_arg);
outpoint_arg_conv.is_owned = ptr_is_owned(outpoint_arg);
CHECK_ACCESS(output_arg_ptr);
LDKTxOut output_arg_conv = *(LDKTxOut*)(output_arg_ptr);
output_arg_conv = TxOut_clone((LDKTxOut*)untag_ptr(output_arg));
- LDKPublicKey revocation_pubkey_arg_ref;
- CHECK(revocation_pubkey_arg->arr_len == 33);
- memcpy(revocation_pubkey_arg_ref.compressed_form, revocation_pubkey_arg->elems, 33); FREE(revocation_pubkey_arg);
+ LDKRevocationKey revocation_pubkey_arg_conv;
+ revocation_pubkey_arg_conv.inner = untag_ptr(revocation_pubkey_arg);
+ revocation_pubkey_arg_conv.is_owned = ptr_is_owned(revocation_pubkey_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(revocation_pubkey_arg_conv);
+ revocation_pubkey_arg_conv = RevocationKey_clone(&revocation_pubkey_arg_conv);
LDKThirtyTwoBytes channel_keys_id_arg_ref;
CHECK(channel_keys_id_arg->arr_len == 32);
memcpy(channel_keys_id_arg_ref.data, channel_keys_id_arg->elems, 32); FREE(channel_keys_id_arg);
- LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_ref, channel_keys_id_arg_ref, channel_value_satoshis_arg);
+ LDKDelayedPaymentOutputDescriptor ret_var = DelayedPaymentOutputDescriptor_new(outpoint_arg_conv, per_commitment_point_arg_ref, to_self_delay_arg, output_arg_conv, revocation_pubkey_arg_conv, channel_keys_id_arg_ref, channel_value_satoshis_arg);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
-int64_t CS_LDK_SpendableOutputDescriptor_static_output(int64_t outpoint, int64_t output) {
+int64_t CS_LDK_SpendableOutputDescriptor_static_output(int64_t outpoint, int64_t output, int8_tArray channel_keys_id) {
LDKOutPoint outpoint_conv;
outpoint_conv.inner = untag_ptr(outpoint);
outpoint_conv.is_owned = ptr_is_owned(outpoint);
CHECK_ACCESS(output_ptr);
LDKTxOut output_conv = *(LDKTxOut*)(output_ptr);
output_conv = TxOut_clone((LDKTxOut*)untag_ptr(output));
+ LDKThirtyTwoBytes channel_keys_id_ref;
+ CHECK(channel_keys_id->arr_len == 32);
+ memcpy(channel_keys_id_ref.data, channel_keys_id->elems, 32); FREE(channel_keys_id);
LDKSpendableOutputDescriptor *ret_copy = MALLOC(sizeof(LDKSpendableOutputDescriptor), "LDKSpendableOutputDescriptor");
- *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv);
+ *ret_copy = SpendableOutputDescriptor_static_output(outpoint_conv, output_conv, channel_keys_id_ref);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
CHECK_ACCESS(locktime_ptr);
LDKCOption_u32Z locktime_conv = *(LDKCOption_u32Z*)(locktime_ptr);
locktime_conv = COption_u32Z_clone((LDKCOption_u32Z*)untag_ptr(locktime));
- LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ), "LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ");
+ LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ), "LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ");
*ret_conv = SpendableOutputDescriptor_create_spendable_outputs_psbt(descriptors_constr, outputs_constr, change_destination_script_ref, feerate_sat_per_1000_weight, locktime_conv);
return tag_ptr(ret_conv, true);
}
ChannelSigner_free(this_ptr_conv);
}
-void CS_LDK_EcdsaChannelSigner_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKEcdsaChannelSigner this_ptr_conv = *(LDKEcdsaChannelSigner*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- EcdsaChannelSigner_free(this_ptr_conv);
-}
-
-static inline uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg) {
- LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
- *ret_ret = WriteableEcdsaChannelSigner_clone(arg);
- return tag_ptr(ret_ret, true);
-}
-int64_t CS_LDK_WriteableEcdsaChannelSigner_clone_ptr(int64_t arg) {
- void* arg_ptr = untag_ptr(arg);
- if (ptr_is_owned(arg)) { CHECK_ACCESS(arg_ptr); }
- LDKWriteableEcdsaChannelSigner* arg_conv = (LDKWriteableEcdsaChannelSigner*)arg_ptr;
- int64_t ret_conv = WriteableEcdsaChannelSigner_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_WriteableEcdsaChannelSigner_clone(int64_t orig) {
- void* orig_ptr = untag_ptr(orig);
- if (ptr_is_owned(orig)) { CHECK_ACCESS(orig_ptr); }
- LDKWriteableEcdsaChannelSigner* orig_conv = (LDKWriteableEcdsaChannelSigner*)orig_ptr;
- LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
- *ret_ret = WriteableEcdsaChannelSigner_clone(orig_conv);
- return tag_ptr(ret_ret, true);
-}
-
-void CS_LDK_WriteableEcdsaChannelSigner_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKWriteableEcdsaChannelSigner this_ptr_conv = *(LDKWriteableEcdsaChannelSigner*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- WriteableEcdsaChannelSigner_free(this_ptr_conv);
-}
-
int32_t CS_LDK_Recipient_clone(int64_t orig) {
LDKRecipient* orig_conv = (LDKRecipient*)untag_ptr(orig);
int32_t ret_conv = LDKRecipient_to_cs(Recipient_clone(orig_conv));
descriptor_conv.is_owned = ptr_is_owned(descriptor);
CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv);
descriptor_conv.is_owned = false;
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
*ret_conv = InMemorySigner_sign_counterparty_payment_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv);
return tag_ptr(ret_conv, true);
}
descriptor_conv.is_owned = ptr_is_owned(descriptor);
CHECK_INNER_FIELD_ACCESS_OR_NULL(descriptor_conv);
descriptor_conv.is_owned = false;
- LDKCResult_CVec_CVec_u8ZZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ), "LDKCResult_CVec_CVec_u8ZZNoneZ");
+ LDKCResult_WitnessNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_WitnessNoneZ), "LDKCResult_WitnessNoneZ");
*ret_conv = InMemorySigner_sign_dynamic_p2wsh_input(&this_arg_conv, spend_tx_ref, input_idx, &descriptor_conv);
return tag_ptr(ret_conv, true);
}
return ret_arr;
}
+void CS_LDK_EcdsaChannelSigner_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKEcdsaChannelSigner this_ptr_conv = *(LDKEcdsaChannelSigner*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ EcdsaChannelSigner_free(this_ptr_conv);
+}
+
+static inline uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg) {
+ LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
+ *ret_ret = WriteableEcdsaChannelSigner_clone(arg);
+ return tag_ptr(ret_ret, true);
+}
+int64_t CS_LDK_WriteableEcdsaChannelSigner_clone_ptr(int64_t arg) {
+ void* arg_ptr = untag_ptr(arg);
+ if (ptr_is_owned(arg)) { CHECK_ACCESS(arg_ptr); }
+ LDKWriteableEcdsaChannelSigner* arg_conv = (LDKWriteableEcdsaChannelSigner*)arg_ptr;
+ int64_t ret_conv = WriteableEcdsaChannelSigner_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_WriteableEcdsaChannelSigner_clone(int64_t orig) {
+ void* orig_ptr = untag_ptr(orig);
+ if (ptr_is_owned(orig)) { CHECK_ACCESS(orig_ptr); }
+ LDKWriteableEcdsaChannelSigner* orig_conv = (LDKWriteableEcdsaChannelSigner*)orig_ptr;
+ LDKWriteableEcdsaChannelSigner* ret_ret = MALLOC(sizeof(LDKWriteableEcdsaChannelSigner), "LDKWriteableEcdsaChannelSigner");
+ *ret_ret = WriteableEcdsaChannelSigner_clone(orig_conv);
+ return tag_ptr(ret_ret, true);
+}
+
+void CS_LDK_WriteableEcdsaChannelSigner_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKWriteableEcdsaChannelSigner this_ptr_conv = *(LDKWriteableEcdsaChannelSigner*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ WriteableEcdsaChannelSigner_free(this_ptr_conv);
+}
+
void CS_LDK_OnionMessenger_free(int64_t this_obj) {
LDKOnionMessenger this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
DefaultMessageRouter_free(this_obj_conv);
}
-int64_t CS_LDK_DefaultMessageRouter_new() {
- LDKDefaultMessageRouter ret_var = DefaultMessageRouter_new();
+int64_t CS_LDK_DefaultMessageRouter_new(int64_t network_graph, int64_t entropy_source) {
+ LDKNetworkGraph network_graph_conv;
+ network_graph_conv.inner = untag_ptr(network_graph);
+ network_graph_conv.is_owned = ptr_is_owned(network_graph);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(network_graph_conv);
+ network_graph_conv.is_owned = false;
+ void* entropy_source_ptr = untag_ptr(entropy_source);
+ CHECK_ACCESS(entropy_source_ptr);
+ LDKEntropySource entropy_source_conv = *(LDKEntropySource*)(entropy_source_ptr);
+ if (entropy_source_conv.free == LDKEntropySource_JCalls_free) {
+ // If this_arg is a JCalls struct, then we need to increment the refcnt in it.
+ LDKEntropySource_JCalls_cloned(&entropy_source_conv);
+ }
+ LDKDefaultMessageRouter ret_var = DefaultMessageRouter_new(&network_graph_conv, entropy_source_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
OnionMessagePath_set_destination(&this_ptr_conv, val_conv);
}
-int64_t CS_LDK_OnionMessagePath_new(ptrArray intermediate_nodes_arg, int64_t destination_arg) {
+int64_t CS_LDK_OnionMessagePath_get_first_node_addresses(int64_t this_ptr) {
+ LDKOnionMessagePath this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ LDKCOption_CVec_SocketAddressZZ *ret_copy = MALLOC(sizeof(LDKCOption_CVec_SocketAddressZZ), "LDKCOption_CVec_SocketAddressZZ");
+ *ret_copy = OnionMessagePath_get_first_node_addresses(&this_ptr_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+void CS_LDK_OnionMessagePath_set_first_node_addresses(int64_t this_ptr, int64_t val) {
+ LDKOnionMessagePath this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ void* val_ptr = untag_ptr(val);
+ CHECK_ACCESS(val_ptr);
+ LDKCOption_CVec_SocketAddressZZ val_conv = *(LDKCOption_CVec_SocketAddressZZ*)(val_ptr);
+ val_conv = COption_CVec_SocketAddressZZ_clone((LDKCOption_CVec_SocketAddressZZ*)untag_ptr(val));
+ OnionMessagePath_set_first_node_addresses(&this_ptr_conv, val_conv);
+}
+
+int64_t CS_LDK_OnionMessagePath_new(ptrArray intermediate_nodes_arg, int64_t destination_arg, int64_t first_node_addresses_arg) {
LDKCVec_PublicKeyZ intermediate_nodes_arg_constr;
intermediate_nodes_arg_constr.datalen = intermediate_nodes_arg->arr_len;
if (intermediate_nodes_arg_constr.datalen > 0)
CHECK_ACCESS(destination_arg_ptr);
LDKDestination destination_arg_conv = *(LDKDestination*)(destination_arg_ptr);
destination_arg_conv = Destination_clone((LDKDestination*)untag_ptr(destination_arg));
- LDKOnionMessagePath ret_var = OnionMessagePath_new(intermediate_nodes_arg_constr, destination_arg_conv);
+ void* first_node_addresses_arg_ptr = untag_ptr(first_node_addresses_arg);
+ CHECK_ACCESS(first_node_addresses_arg_ptr);
+ LDKCOption_CVec_SocketAddressZZ first_node_addresses_arg_conv = *(LDKCOption_CVec_SocketAddressZZ*)(first_node_addresses_arg_ptr);
+ LDKOnionMessagePath ret_var = OnionMessagePath_new(intermediate_nodes_arg_constr, destination_arg_conv, first_node_addresses_arg_conv);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
+int8_tArray CS_LDK_OnionMessagePath_first_node(int64_t this_arg) {
+ LDKOnionMessagePath this_arg_conv;
+ this_arg_conv.inner = untag_ptr(this_arg);
+ this_arg_conv.is_owned = ptr_is_owned(this_arg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
+ this_arg_conv.is_owned = false;
+ int8_tArray ret_arr = init_int8_tArray(33, __LINE__);
+ memcpy(ret_arr->elems, OnionMessagePath_first_node(&this_arg_conv).compressed_form, 33);
+ return ret_arr;
+}
+
void CS_LDK_Destination_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
return ret_ref;
}
+void CS_LDK_SendSuccess_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKSendSuccess this_ptr_conv = *(LDKSendSuccess*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ SendSuccess_free(this_ptr_conv);
+}
+
+static inline uint64_t SendSuccess_clone_ptr(LDKSendSuccess *NONNULL_PTR arg) {
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_SendSuccess_clone_ptr(int64_t arg) {
+ LDKSendSuccess* arg_conv = (LDKSendSuccess*)untag_ptr(arg);
+ int64_t ret_conv = SendSuccess_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_SendSuccess_clone(int64_t orig) {
+ LDKSendSuccess* orig_conv = (LDKSendSuccess*)untag_ptr(orig);
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_SendSuccess_buffered() {
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_buffered();
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_SendSuccess_buffered_awaiting_connection(int8_tArray a) {
+ LDKPublicKey a_ref;
+ CHECK(a->arr_len == 33);
+ memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
+ LDKSendSuccess *ret_copy = MALLOC(sizeof(LDKSendSuccess), "LDKSendSuccess");
+ *ret_copy = SendSuccess_buffered_awaiting_connection(a_ref);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+jboolean CS_LDK_SendSuccess_eq(int64_t a, int64_t b) {
+ LDKSendSuccess* a_conv = (LDKSendSuccess*)untag_ptr(a);
+ LDKSendSuccess* b_conv = (LDKSendSuccess*)untag_ptr(b);
+ jboolean ret_conv = SendSuccess_eq(a_conv, b_conv);
+ return ret_conv;
+}
+
void CS_LDK_SendError_free(int64_t this_ptr) {
if (!ptr_is_owned(this_ptr)) return;
void* this_ptr_ptr = untag_ptr(this_ptr);
return ret_ref;
}
-int64_t CS_LDK_SendError_invalid_first_hop() {
+int64_t CS_LDK_SendError_invalid_first_hop(int8_tArray a) {
+ LDKPublicKey a_ref;
+ CHECK(a->arr_len == 33);
+ memcpy(a_ref.compressed_form, a->elems, 33); FREE(a);
+ LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
+ *ret_copy = SendError_invalid_first_hop(a_ref);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_SendError_path_not_found() {
LDKSendError *ret_copy = MALLOC(sizeof(LDKSendError), "LDKSendError");
- *ret_copy = SendError_invalid_first_hop();
+ *ret_copy = SendError_path_not_found();
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
reply_path_conv.is_owned = ptr_is_owned(reply_path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(reply_path_conv);
reply_path_conv = BlindedPath_clone(&reply_path_conv);
- LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ), "LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ");
+ LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ), "LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ");
*ret_conv = create_onion_message(entropy_source_conv, node_signer_conv, path_conv, contents_conv, reply_path_conv);
return tag_ptr(ret_conv, true);
}
return ret_ref;
}
-int64_t CS_LDK_OnionMessenger_send_onion_message(int64_t this_arg, int64_t path, int64_t contents, int64_t reply_path) {
+int64_t CS_LDK_OnionMessenger_send_onion_message(int64_t this_arg, int64_t contents, int64_t destination, int64_t reply_path) {
LDKOnionMessenger this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
this_arg_conv.is_owned = false;
- LDKOnionMessagePath path_conv;
- path_conv.inner = untag_ptr(path);
- path_conv.is_owned = ptr_is_owned(path);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(path_conv);
- path_conv = OnionMessagePath_clone(&path_conv);
void* contents_ptr = untag_ptr(contents);
CHECK_ACCESS(contents_ptr);
LDKOnionMessageContents contents_conv = *(LDKOnionMessageContents*)(contents_ptr);
// If this_arg is a JCalls struct, then we need to increment the refcnt in it.
LDKOnionMessageContents_JCalls_cloned(&contents_conv);
}
+ void* destination_ptr = untag_ptr(destination);
+ CHECK_ACCESS(destination_ptr);
+ LDKDestination destination_conv = *(LDKDestination*)(destination_ptr);
+ destination_conv = Destination_clone((LDKDestination*)untag_ptr(destination));
LDKBlindedPath reply_path_conv;
reply_path_conv.inner = untag_ptr(reply_path);
reply_path_conv.is_owned = ptr_is_owned(reply_path);
CHECK_INNER_FIELD_ACCESS_OR_NULL(reply_path_conv);
reply_path_conv = BlindedPath_clone(&reply_path_conv);
- LDKCResult_NoneSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NoneSendErrorZ), "LDKCResult_NoneSendErrorZ");
- *ret_conv = OnionMessenger_send_onion_message(&this_arg_conv, path_conv, contents_conv, reply_path_conv);
+ LDKCResult_SendSuccessSendErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_SendSuccessSendErrorZ), "LDKCResult_SendSuccessSendErrorZ");
+ *ret_conv = OnionMessenger_send_onion_message(&this_arg_conv, contents_conv, destination_conv, reply_path_conv);
return tag_ptr(ret_conv, true);
}
return ret_conv;
}
+int64_t CS_LDK_OffersMessage_as_OnionMessageContents(int64_t this_arg) {
+ LDKOffersMessage* this_arg_conv = (LDKOffersMessage*)untag_ptr(this_arg);
+ LDKOnionMessageContents* ret_ret = MALLOC(sizeof(LDKOnionMessageContents), "LDKOnionMessageContents");
+ *ret_ret = OffersMessage_as_OnionMessageContents(this_arg_conv);
+ return tag_ptr(ret_ret, true);
+}
+
int8_tArray CS_LDK_OffersMessage_write(int64_t obj) {
LDKOffersMessage* obj_conv = (LDKOffersMessage*)untag_ptr(obj);
LDKCVec_u8Z ret_var = OffersMessage_write(obj_conv);
return ret_ref;
}
+int64_t CS_LDK_Packet_hash(int64_t o) {
+ LDKPacket o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ int64_t ret_conv = Packet_hash(&o_conv);
+ return ret_conv;
+}
+
jboolean CS_LDK_Packet_eq(int64_t a, int64_t b) {
LDKPacket a_conv;
a_conv.inner = untag_ptr(a);
return tag_ptr(ret_conv, true);
}
+int64_t CS_LDK_BlindedPath_new_for_payment(int64_tArray intermediate_nodes, int8_tArray payee_node_id, int64_t payee_tlvs, int64_t htlc_maximum_msat, int64_t entropy_source) {
+ LDKCVec_ForwardNodeZ intermediate_nodes_constr;
+ intermediate_nodes_constr.datalen = intermediate_nodes->arr_len;
+ if (intermediate_nodes_constr.datalen > 0)
+ intermediate_nodes_constr.data = MALLOC(intermediate_nodes_constr.datalen * sizeof(LDKForwardNode), "LDKCVec_ForwardNodeZ Elements");
+ else
+ intermediate_nodes_constr.data = NULL;
+ int64_t* intermediate_nodes_vals = intermediate_nodes->elems;
+ for (size_t n = 0; n < intermediate_nodes_constr.datalen; n++) {
+ int64_t intermediate_nodes_conv_13 = intermediate_nodes_vals[n];
+ LDKForwardNode intermediate_nodes_conv_13_conv;
+ intermediate_nodes_conv_13_conv.inner = untag_ptr(intermediate_nodes_conv_13);
+ intermediate_nodes_conv_13_conv.is_owned = ptr_is_owned(intermediate_nodes_conv_13);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(intermediate_nodes_conv_13_conv);
+ intermediate_nodes_conv_13_conv = ForwardNode_clone(&intermediate_nodes_conv_13_conv);
+ intermediate_nodes_constr.data[n] = intermediate_nodes_conv_13_conv;
+ }
+ FREE(intermediate_nodes);
+ LDKPublicKey payee_node_id_ref;
+ CHECK(payee_node_id->arr_len == 33);
+ memcpy(payee_node_id_ref.compressed_form, payee_node_id->elems, 33); FREE(payee_node_id);
+ LDKReceiveTlvs payee_tlvs_conv;
+ payee_tlvs_conv.inner = untag_ptr(payee_tlvs);
+ payee_tlvs_conv.is_owned = ptr_is_owned(payee_tlvs);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(payee_tlvs_conv);
+ payee_tlvs_conv = ReceiveTlvs_clone(&payee_tlvs_conv);
+ void* entropy_source_ptr = untag_ptr(entropy_source);
+ if (ptr_is_owned(entropy_source)) { CHECK_ACCESS(entropy_source_ptr); }
+ LDKEntropySource* entropy_source_conv = (LDKEntropySource*)entropy_source_ptr;
+ LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ), "LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ");
+ *ret_conv = BlindedPath_new_for_payment(intermediate_nodes_constr, payee_node_id_ref, payee_tlvs_conv, htlc_maximum_msat, entropy_source_conv);
+ return tag_ptr(ret_conv, true);
+}
+
int8_tArray CS_LDK_BlindedPath_write(int64_t obj) {
LDKBlindedPath obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_arr;
}
-int64_t CS_LDK_ReceiveTlvs_read(int8_tArray ser) {
- LDKu8slice ser_ref;
- ser_ref.datalen = ser->arr_len;
- ser_ref.data = ser->elems;
- LDKCResult_ReceiveTlvsDecodeErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ReceiveTlvsDecodeErrorZ), "LDKCResult_ReceiveTlvsDecodeErrorZ");
- *ret_conv = ReceiveTlvs_read(ser_ref);
- FREE(ser);
- return tag_ptr(ret_conv, true);
-}
-
int8_tArray CS_LDK_PaymentRelay_write(int64_t obj) {
LDKPaymentRelay obj_conv;
obj_conv.inner = untag_ptr(obj);
return ret_conv;
}
+int64_t CS_LDK_PaymentPurpose_preimage(int64_t this_arg) {
+ LDKPaymentPurpose* this_arg_conv = (LDKPaymentPurpose*)untag_ptr(this_arg);
+ LDKCOption_ThirtyTwoBytesZ *ret_copy = MALLOC(sizeof(LDKCOption_ThirtyTwoBytesZ), "LDKCOption_ThirtyTwoBytesZ");
+ *ret_copy = PaymentPurpose_preimage(this_arg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
int8_tArray CS_LDK_PaymentPurpose_write(int64_t obj) {
LDKPaymentPurpose* obj_conv = (LDKPaymentPurpose*)untag_ptr(obj);
LDKCVec_u8Z ret_var = PaymentPurpose_write(obj_conv);
ClaimedHTLC_set_value_msat(&this_ptr_conv, val);
}
-int64_t CS_LDK_ClaimedHTLC_new(int8_tArray channel_id_arg, int8_tArray user_channel_id_arg, int32_t cltv_expiry_arg, int64_t value_msat_arg) {
+int64_t CS_LDK_ClaimedHTLC_get_counterparty_skimmed_fee_msat(int64_t this_ptr) {
+ LDKClaimedHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ int64_t ret_conv = ClaimedHTLC_get_counterparty_skimmed_fee_msat(&this_ptr_conv);
+ return ret_conv;
+}
+
+void CS_LDK_ClaimedHTLC_set_counterparty_skimmed_fee_msat(int64_t this_ptr, int64_t val) {
+ LDKClaimedHTLC this_ptr_conv;
+ this_ptr_conv.inner = untag_ptr(this_ptr);
+ this_ptr_conv.is_owned = ptr_is_owned(this_ptr);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(this_ptr_conv);
+ this_ptr_conv.is_owned = false;
+ ClaimedHTLC_set_counterparty_skimmed_fee_msat(&this_ptr_conv, val);
+}
+
+int64_t CS_LDK_ClaimedHTLC_new(int8_tArray channel_id_arg, int8_tArray user_channel_id_arg, int32_t cltv_expiry_arg, int64_t value_msat_arg, int64_t counterparty_skimmed_fee_msat_arg) {
LDKThirtyTwoBytes channel_id_arg_ref;
CHECK(channel_id_arg->arr_len == 32);
memcpy(channel_id_arg_ref.data, channel_id_arg->elems, 32); FREE(channel_id_arg);
LDKU128 user_channel_id_arg_ref;
CHECK(user_channel_id_arg->arr_len == 16);
memcpy(user_channel_id_arg_ref.le_bytes, user_channel_id_arg->elems, 16); FREE(user_channel_id_arg);
- LDKClaimedHTLC ret_var = ClaimedHTLC_new(channel_id_arg_ref, user_channel_id_arg_ref, cltv_expiry_arg, value_msat_arg);
+ LDKClaimedHTLC ret_var = ClaimedHTLC_new(channel_id_arg_ref, user_channel_id_arg_ref, cltv_expiry_arg, value_msat_arg, counterparty_skimmed_fee_msat_arg);
int64_t ret_ref = 0;
CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
return ret_ref;
}
+int64_t CS_LDK_Event_connection_needed(int8_tArray node_id, int64_tArray addresses) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKCVec_SocketAddressZ addresses_constr;
+ addresses_constr.datalen = addresses->arr_len;
+ if (addresses_constr.datalen > 0)
+ addresses_constr.data = MALLOC(addresses_constr.datalen * sizeof(LDKSocketAddress), "LDKCVec_SocketAddressZ Elements");
+ else
+ addresses_constr.data = NULL;
+ int64_t* addresses_vals = addresses->elems;
+ for (size_t p = 0; p < addresses_constr.datalen; p++) {
+ int64_t addresses_conv_15 = addresses_vals[p];
+ void* addresses_conv_15_ptr = untag_ptr(addresses_conv_15);
+ CHECK_ACCESS(addresses_conv_15_ptr);
+ LDKSocketAddress addresses_conv_15_conv = *(LDKSocketAddress*)(addresses_conv_15_ptr);
+ addresses_constr.data[p] = addresses_conv_15_conv;
+ }
+ FREE(addresses);
+ LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent");
+ *ret_copy = Event_connection_needed(node_id_ref, addresses_constr);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
int64_t CS_LDK_Event_invoice_request_failed(int8_tArray payment_id) {
LDKThirtyTwoBytes payment_id_ref;
CHECK(payment_id->arr_len == 32);
return ret_ref;
}
-int64_t CS_LDK_Event_channel_closed(int8_tArray channel_id, int8_tArray user_channel_id, int64_t reason, int8_tArray counterparty_node_id, int64_t channel_capacity_sats) {
+int64_t CS_LDK_Event_channel_closed(int8_tArray channel_id, int8_tArray user_channel_id, int64_t reason, int8_tArray counterparty_node_id, int64_t channel_capacity_sats, int64_t channel_funding_txo) {
LDKThirtyTwoBytes channel_id_ref;
CHECK(channel_id->arr_len == 32);
memcpy(channel_id_ref.data, channel_id->elems, 32); FREE(channel_id);
CHECK_ACCESS(channel_capacity_sats_ptr);
LDKCOption_u64Z channel_capacity_sats_conv = *(LDKCOption_u64Z*)(channel_capacity_sats_ptr);
channel_capacity_sats_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(channel_capacity_sats));
+ LDKOutPoint channel_funding_txo_conv;
+ channel_funding_txo_conv.inner = untag_ptr(channel_funding_txo);
+ channel_funding_txo_conv.is_owned = ptr_is_owned(channel_funding_txo);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(channel_funding_txo_conv);
+ channel_funding_txo_conv = OutPoint_clone(&channel_funding_txo_conv);
LDKEvent *ret_copy = MALLOC(sizeof(LDKEvent), "LDKEvent");
- *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id_ref, reason_conv, counterparty_node_id_ref, channel_capacity_sats_conv);
+ *ret_copy = Event_channel_closed(channel_id_ref, user_channel_id_ref, reason_conv, counterparty_node_id_ref, channel_capacity_sats_conv, channel_funding_txo_conv);
int64_t ret_ref = tag_ptr(ret_copy, true);
return ret_ref;
}
return ret_ref;
}
+int64_t CS_LDK_MessageSendEvent_send_stfu(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKStfu msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = Stfu_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_stfu(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_MessageSendEvent_send_splice(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKSplice msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = Splice_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_splice(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_MessageSendEvent_send_splice_ack(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKSpliceAck msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = SpliceAck_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_splice_ack(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_MessageSendEvent_send_splice_locked(int8_tArray node_id, int64_t msg) {
+ LDKPublicKey node_id_ref;
+ CHECK(node_id->arr_len == 33);
+ memcpy(node_id_ref.compressed_form, node_id->elems, 33); FREE(node_id);
+ LDKSpliceLocked msg_conv;
+ msg_conv.inner = untag_ptr(msg);
+ msg_conv.is_owned = ptr_is_owned(msg);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(msg_conv);
+ msg_conv = SpliceLocked_clone(&msg_conv);
+ LDKMessageSendEvent *ret_copy = MALLOC(sizeof(LDKMessageSendEvent), "LDKMessageSendEvent");
+ *ret_copy = MessageSendEvent_send_splice_locked(node_id_ref, msg_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
int64_t CS_LDK_MessageSendEvent_send_tx_add_input(int8_tArray node_id, int64_t msg) {
LDKPublicKey node_id_ref;
CHECK(node_id->arr_len == 33);
return tag_ptr(ret_conv, true);
}
-jstring CS_LDK_Description_into_inner(int64_t this_arg) {
+int64_t CS_LDK_Description_into_inner(int64_t this_arg) {
LDKDescription this_arg_conv;
this_arg_conv.inner = untag_ptr(this_arg);
this_arg_conv.is_owned = ptr_is_owned(this_arg);
CHECK_INNER_FIELD_ACCESS_OR_NULL(this_arg_conv);
this_arg_conv = Description_clone(&this_arg_conv);
- LDKStr ret_str = Description_into_inner(this_arg_conv);
+ LDKUntrustedString ret_var = Description_into_inner(this_arg_conv);
+ int64_t ret_ref = 0;
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(ret_var);
+ ret_ref = tag_ptr(ret_var.inner, ret_var.is_owned);
+ return ret_ref;
+}
+
+jstring CS_LDK_Description_to_str(int64_t o) {
+ LDKDescription o_conv;
+ o_conv.inner = untag_ptr(o);
+ o_conv.is_owned = ptr_is_owned(o);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(o_conv);
+ o_conv.is_owned = false;
+ LDKStr ret_str = Description_to_str(&o_conv);
jstring ret_conv = str_ref_to_cs(ret_str.chars, ret_str.len);
Str_free(ret_str);
return ret_conv;
return ret_conv;
}
-int64_t CS_LDK_pay_invoice(int64_t invoice, int64_t retry_strategy, int64_t channelmanager) {
+int64_t CS_LDK_payment_parameters_from_zero_amount_invoice(int64_t invoice, int64_t amount_msat) {
LDKBolt11Invoice invoice_conv;
invoice_conv.inner = untag_ptr(invoice);
invoice_conv.is_owned = ptr_is_owned(invoice);
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
invoice_conv.is_owned = false;
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = pay_invoice(&invoice_conv, retry_strategy_conv, &channelmanager_conv);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = payment_parameters_from_zero_amount_invoice(&invoice_conv, amount_msat);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_pay_invoice_with_id(int64_t invoice, int8_tArray payment_id, int64_t retry_strategy, int64_t channelmanager) {
+int64_t CS_LDK_payment_parameters_from_invoice(int64_t invoice) {
LDKBolt11Invoice invoice_conv;
invoice_conv.inner = untag_ptr(invoice);
invoice_conv.is_owned = ptr_is_owned(invoice);
CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
invoice_conv.is_owned = false;
- LDKThirtyTwoBytes payment_id_ref;
- CHECK(payment_id->arr_len == 32);
- memcpy(payment_id_ref.data, payment_id->elems, 32); FREE(payment_id);
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = pay_invoice_with_id(&invoice_conv, payment_id_ref, retry_strategy_conv, &channelmanager_conv);
+ LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ* ret_conv = MALLOC(sizeof(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ), "LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ");
+ *ret_conv = payment_parameters_from_invoice(&invoice_conv);
return tag_ptr(ret_conv, true);
}
-int64_t CS_LDK_pay_zero_value_invoice(int64_t invoice, int64_t amount_msats, int64_t retry_strategy, int64_t channelmanager) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_ThirtyTwoBytesPaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_ThirtyTwoBytesPaymentErrorZ), "LDKCResult_ThirtyTwoBytesPaymentErrorZ");
- *ret_conv = pay_zero_value_invoice(&invoice_conv, amount_msats, retry_strategy_conv, &channelmanager_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_pay_zero_value_invoice_with_id(int64_t invoice, int64_t amount_msats, int8_tArray payment_id, int64_t retry_strategy, int64_t channelmanager) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- LDKThirtyTwoBytes payment_id_ref;
- CHECK(payment_id->arr_len == 32);
- memcpy(payment_id_ref.data, payment_id->elems, 32); FREE(payment_id);
- void* retry_strategy_ptr = untag_ptr(retry_strategy);
- CHECK_ACCESS(retry_strategy_ptr);
- LDKRetry retry_strategy_conv = *(LDKRetry*)(retry_strategy_ptr);
- retry_strategy_conv = Retry_clone((LDKRetry*)untag_ptr(retry_strategy));
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- LDKCResult_NonePaymentErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_NonePaymentErrorZ), "LDKCResult_NonePaymentErrorZ");
- *ret_conv = pay_zero_value_invoice_with_id(&invoice_conv, amount_msats, payment_id_ref, retry_strategy_conv, &channelmanager_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_preflight_probe_invoice(int64_t invoice, int64_t channelmanager, int64_t liquidity_limit_multiplier) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- void* liquidity_limit_multiplier_ptr = untag_ptr(liquidity_limit_multiplier);
- CHECK_ACCESS(liquidity_limit_multiplier_ptr);
- LDKCOption_u64Z liquidity_limit_multiplier_conv = *(LDKCOption_u64Z*)(liquidity_limit_multiplier_ptr);
- liquidity_limit_multiplier_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(liquidity_limit_multiplier));
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = preflight_probe_invoice(&invoice_conv, &channelmanager_conv, liquidity_limit_multiplier_conv);
- return tag_ptr(ret_conv, true);
-}
-
-int64_t CS_LDK_preflight_probe_zero_value_invoice(int64_t invoice, int64_t amount_msat, int64_t channelmanager, int64_t liquidity_limit_multiplier) {
- LDKBolt11Invoice invoice_conv;
- invoice_conv.inner = untag_ptr(invoice);
- invoice_conv.is_owned = ptr_is_owned(invoice);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(invoice_conv);
- invoice_conv.is_owned = false;
- LDKChannelManager channelmanager_conv;
- channelmanager_conv.inner = untag_ptr(channelmanager);
- channelmanager_conv.is_owned = ptr_is_owned(channelmanager);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(channelmanager_conv);
- channelmanager_conv.is_owned = false;
- void* liquidity_limit_multiplier_ptr = untag_ptr(liquidity_limit_multiplier);
- CHECK_ACCESS(liquidity_limit_multiplier_ptr);
- LDKCOption_u64Z liquidity_limit_multiplier_conv = *(LDKCOption_u64Z*)(liquidity_limit_multiplier_ptr);
- liquidity_limit_multiplier_conv = COption_u64Z_clone((LDKCOption_u64Z*)untag_ptr(liquidity_limit_multiplier));
- LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ* ret_conv = MALLOC(sizeof(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ), "LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ");
- *ret_conv = preflight_probe_zero_value_invoice(&invoice_conv, amount_msat, &channelmanager_conv, liquidity_limit_multiplier_conv);
- return tag_ptr(ret_conv, true);
-}
-
-void CS_LDK_PaymentError_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKPaymentError this_ptr_conv = *(LDKPaymentError*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- PaymentError_free(this_ptr_conv);
-}
-
-static inline uint64_t PaymentError_clone_ptr(LDKPaymentError *NONNULL_PTR arg) {
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_clone(arg);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-int64_t CS_LDK_PaymentError_clone_ptr(int64_t arg) {
- LDKPaymentError* arg_conv = (LDKPaymentError*)untag_ptr(arg);
- int64_t ret_conv = PaymentError_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_PaymentError_clone(int64_t orig) {
- LDKPaymentError* orig_conv = (LDKPaymentError*)untag_ptr(orig);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_clone(orig_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_PaymentError_invoice(jstring a) {
- LDKStr a_conv = str_ref_to_owned_c(a);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_invoice(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_PaymentError_sending(int32_t a) {
- LDKRetryableSendFailure a_conv = LDKRetryableSendFailure_from_cs(a);
- LDKPaymentError *ret_copy = MALLOC(sizeof(LDKPaymentError), "LDKPaymentError");
- *ret_copy = PaymentError_sending(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-jboolean CS_LDK_PaymentError_eq(int64_t a, int64_t b) {
- LDKPaymentError* a_conv = (LDKPaymentError*)untag_ptr(a);
- LDKPaymentError* b_conv = (LDKPaymentError*)untag_ptr(b);
- jboolean ret_conv = PaymentError_eq(a_conv, b_conv);
- return ret_conv;
-}
-
-void CS_LDK_ProbingError_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKProbingError this_ptr_conv = *(LDKProbingError*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- ProbingError_free(this_ptr_conv);
-}
-
-static inline uint64_t ProbingError_clone_ptr(LDKProbingError *NONNULL_PTR arg) {
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_clone(arg);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-int64_t CS_LDK_ProbingError_clone_ptr(int64_t arg) {
- LDKProbingError* arg_conv = (LDKProbingError*)untag_ptr(arg);
- int64_t ret_conv = ProbingError_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_ProbingError_clone(int64_t orig) {
- LDKProbingError* orig_conv = (LDKProbingError*)untag_ptr(orig);
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_clone(orig_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_ProbingError_invoice(jstring a) {
- LDKStr a_conv = str_ref_to_owned_c(a);
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_invoice(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_ProbingError_sending(int64_t a) {
- void* a_ptr = untag_ptr(a);
- CHECK_ACCESS(a_ptr);
- LDKProbeSendFailure a_conv = *(LDKProbeSendFailure*)(a_ptr);
- a_conv = ProbeSendFailure_clone((LDKProbeSendFailure*)untag_ptr(a));
- LDKProbingError *ret_copy = MALLOC(sizeof(LDKProbingError), "LDKProbingError");
- *ret_copy = ProbingError_sending(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-jboolean CS_LDK_ProbingError_eq(int64_t a, int64_t b) {
- LDKProbingError* a_conv = (LDKProbingError*)untag_ptr(a);
- LDKProbingError* b_conv = (LDKProbingError*)untag_ptr(b);
- jboolean ret_conv = ProbingError_eq(a_conv, b_conv);
- return ret_conv;
-}
-
int64_t CS_LDK_create_phantom_invoice(int64_t amt_msat, int64_t payment_hash, jstring description, int32_t invoice_expiry_delta_secs, int64_tArray phantom_route_hints, int64_t entropy_source, int64_t node_signer, int64_t logger, int32_t network, int64_t min_final_cltv_expiry_delta, int64_t duration_since_epoch) {
void* amt_msat_ptr = untag_ptr(amt_msat);
CHECK_ACCESS(amt_msat_ptr);
return ret_conv;
}
+void CS_LDK_GraphSyncError_free(int64_t this_ptr) {
+ if (!ptr_is_owned(this_ptr)) return;
+ void* this_ptr_ptr = untag_ptr(this_ptr);
+ CHECK_ACCESS(this_ptr_ptr);
+ LDKGraphSyncError this_ptr_conv = *(LDKGraphSyncError*)(this_ptr_ptr);
+ FREE(untag_ptr(this_ptr));
+ GraphSyncError_free(this_ptr_conv);
+}
+
+static inline uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg) {
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_clone(arg);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+int64_t CS_LDK_GraphSyncError_clone_ptr(int64_t arg) {
+ LDKGraphSyncError* arg_conv = (LDKGraphSyncError*)untag_ptr(arg);
+ int64_t ret_conv = GraphSyncError_clone_ptr(arg_conv);
+ return ret_conv;
+}
+
+int64_t CS_LDK_GraphSyncError_clone(int64_t orig) {
+ LDKGraphSyncError* orig_conv = (LDKGraphSyncError*)untag_ptr(orig);
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_clone(orig_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_GraphSyncError_decode_error(int64_t a) {
+ void* a_ptr = untag_ptr(a);
+ CHECK_ACCESS(a_ptr);
+ LDKDecodeError a_conv = *(LDKDecodeError*)(a_ptr);
+ a_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(a));
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_decode_error(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
+int64_t CS_LDK_GraphSyncError_lightning_error(int64_t a) {
+ LDKLightningError a_conv;
+ a_conv.inner = untag_ptr(a);
+ a_conv.is_owned = ptr_is_owned(a);
+ CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
+ a_conv = LightningError_clone(&a_conv);
+ LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
+ *ret_copy = GraphSyncError_lightning_error(a_conv);
+ int64_t ret_ref = tag_ptr(ret_copy, true);
+ return ret_ref;
+}
+
void CS_LDK_RapidGossipSync_free(int64_t this_obj) {
LDKRapidGossipSync this_obj_conv;
this_obj_conv.inner = untag_ptr(this_obj);
return ret_conv;
}
-void CS_LDK_GraphSyncError_free(int64_t this_ptr) {
- if (!ptr_is_owned(this_ptr)) return;
- void* this_ptr_ptr = untag_ptr(this_ptr);
- CHECK_ACCESS(this_ptr_ptr);
- LDKGraphSyncError this_ptr_conv = *(LDKGraphSyncError*)(this_ptr_ptr);
- FREE(untag_ptr(this_ptr));
- GraphSyncError_free(this_ptr_conv);
-}
-
-static inline uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg) {
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_clone(arg);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-int64_t CS_LDK_GraphSyncError_clone_ptr(int64_t arg) {
- LDKGraphSyncError* arg_conv = (LDKGraphSyncError*)untag_ptr(arg);
- int64_t ret_conv = GraphSyncError_clone_ptr(arg_conv);
- return ret_conv;
-}
-
-int64_t CS_LDK_GraphSyncError_clone(int64_t orig) {
- LDKGraphSyncError* orig_conv = (LDKGraphSyncError*)untag_ptr(orig);
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_clone(orig_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_GraphSyncError_decode_error(int64_t a) {
- void* a_ptr = untag_ptr(a);
- CHECK_ACCESS(a_ptr);
- LDKDecodeError a_conv = *(LDKDecodeError*)(a_ptr);
- a_conv = DecodeError_clone((LDKDecodeError*)untag_ptr(a));
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_decode_error(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
-int64_t CS_LDK_GraphSyncError_lightning_error(int64_t a) {
- LDKLightningError a_conv;
- a_conv.inner = untag_ptr(a);
- a_conv.is_owned = ptr_is_owned(a);
- CHECK_INNER_FIELD_ACCESS_OR_NULL(a_conv);
- a_conv = LightningError_clone(&a_conv);
- LDKGraphSyncError *ret_copy = MALLOC(sizeof(LDKGraphSyncError), "LDKGraphSyncError");
- *ret_copy = GraphSyncError_lightning_error(a_conv);
- int64_t ret_ref = tag_ptr(ret_copy, true);
- return ret_ref;
-}
-
--- /dev/null
+namespace org { namespace ldk { namespace enums {/**
+ * Whether this blinded HTLC is being failed backwards by the introduction node or a blinded node,
+ * which determines the failure message that should be used.
+ */
+public enum BlindedFailure {
+ /**
+ * This HTLC is being failed backwards by the introduction node, and thus should be failed with
+ * [`msgs::UpdateFailHTLC`] and error code `0x8000|0x4000|24`.
+ */
+ LDKBlindedFailure_FromIntroductionNode,
+ /**
+ * This HTLC is being failed backwards by a blinded node within the path, and thus should be
+ * failed with [`msgs::UpdateFailMalformedHTLC`] and error code `0x8000|0x4000|24`.
+ */
+ LDKBlindedFailure_FromBlindedNode,
+}} } }
* fee - this should be a relatively high priority feerate.
*/
LDKConfirmationTarget_OnChainSweep,
- /**
- * The highest feerate we will allow our channel counterparty to have in a non-anchor channel.
- *
- * This is the feerate on the transaction which we (or our counterparty) will broadcast in
- * order to close the channel unilaterally. Because our counterparty must ensure they can
- * always broadcast the latest state, this value being too low will cause immediate
- * force-closures.
- *
- * Allowing this value to be too high can allow our counterparty to burn our HTLC outputs to
- * dust, which can result in HTLCs failing or force-closures (when the dust HTLCs exceed
- * [`ChannelConfig::max_dust_htlc_exposure`]).
- *
- * Because most nodes use a feerate estimate which is based on a relatively high priority
- * transaction entering the current mempool, setting this to a small multiple of your current
- * high priority feerate estimate should suffice.
- *
- * [`ChannelConfig::max_dust_htlc_exposure`]: crate::util::config::ChannelConfig::max_dust_htlc_exposure
- */
- LDKConfirmationTarget_MaxAllowedNonAnchorChannelRemoteFee,
/**
* This is the lowest feerate we will allow our channel counterparty to have in an anchor
* channel in order to close the channel if a channel party goes away.
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKBech32Error_ty_from_ptr")] public static extern long LDKBech32Error_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKBech32Error_InvalidChar_get_invalid_char")] public static extern int LDKBech32Error_InvalidChar_get_invalid_char(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKBech32Error_InvalidData_get_invalid_data")] public static extern byte LDKBech32Error_InvalidData_get_invalid_data(long ptr);
- // struct LDKWitness TxIn_get_witness (struct LDKTxIn* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_witness")] public static extern long TxIn_get_witness(long _thing);
- // struct LDKCVec_u8Z TxIn_get_script_sig (struct LDKTxIn* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_script_sig")] public static extern long TxIn_get_script_sig(long _thing);
- // LDKThirtyTwoBytes TxIn_get_previous_txid (struct LDKTxIn* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_previous_txid")] public static extern long TxIn_get_previous_txid(long _thing);
- // uint32_t TxIn_get_previous_vout (struct LDKTxIn* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_previous_vout")] public static extern int TxIn_get_previous_vout(long _thing);
- // uint32_t TxIn_get_sequence (struct LDKTxIn* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_sequence")] public static extern int TxIn_get_sequence(long _thing);
- // struct LDKCVec_u8Z TxOut_get_script_pubkey (struct LDKTxOut* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxOut_get_script_pubkey")] public static extern long TxOut_get_script_pubkey(long _thing);
- // uint64_t TxOut_get_value (struct LDKTxOut* thing)
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxOut_get_value")] public static extern long TxOut_get_value(long _thing);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_u64Z_ty_from_ptr")] public static extern long LDKCOption_u64Z_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_u64Z_Some_get_some")] public static extern long LDKCOption_u64Z_Some_get_some(long ptr);
// struct LDKRefund CResult_RefundBolt12ParseErrorZ_get_ok(LDKCResult_RefundBolt12ParseErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSpendableOutputDescriptor_ty_from_ptr")] public static extern long LDKSpendableOutputDescriptor_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSpendableOutputDescriptor_StaticOutput_get_outpoint")] public static extern long LDKSpendableOutputDescriptor_StaticOutput_get_outpoint(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSpendableOutputDescriptor_StaticOutput_get_output")] public static extern long LDKSpendableOutputDescriptor_StaticOutput_get_output(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSpendableOutputDescriptor_StaticOutput_get_channel_keys_id")] public static extern long LDKSpendableOutputDescriptor_StaticOutput_get_channel_keys_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output")] public static extern long LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSpendableOutputDescriptor_StaticPaymentOutput_get_static_payment_output")] public static extern long LDKSpendableOutputDescriptor_StaticPaymentOutput_get_static_payment_output(long ptr);
// struct LDKSpendableOutputDescriptor CResult_SpendableOutputDescriptorDecodeErrorZ_get_ok(LDKCResult_SpendableOutputDescriptorDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpendableOutputDescriptorDecodeErrorZ_get_err")] public static extern long CResult_SpendableOutputDescriptorDecodeErrorZ_get_err(long _owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_u32Z_ty_from_ptr")] public static extern long LDKCOption_u32Z_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_u32Z_Some_get_some")] public static extern int LDKCOption_u32Z_Some_get_some(long ptr);
- // struct LDKCVec_u8Z C2Tuple_CVec_u8ZusizeZ_get_a(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8ZusizeZ_get_a")] public static extern long C2Tuple_CVec_u8ZusizeZ_get_a(long _owner);
- // uintptr_t C2Tuple_CVec_u8ZusizeZ_get_b(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8ZusizeZ_get_b")] public static extern long C2Tuple_CVec_u8ZusizeZ_get_b(long _owner);
- // struct LDKC2Tuple_CVec_u8ZusizeZ CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok")] public static extern long CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(long _owner);
- // void CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err")] public static extern void CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_err(long _owner);
+ // struct LDKCVec_u8Z C2Tuple_CVec_u8Zu64Z_get_a(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8Zu64Z_get_a")] public static extern long C2Tuple_CVec_u8Zu64Z_get_a(long _owner);
+ // uint64_t C2Tuple_CVec_u8Zu64Z_get_b(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8Zu64Z_get_b")] public static extern long C2Tuple_CVec_u8Zu64Z_get_b(long _owner);
+ // struct LDKC2Tuple_CVec_u8Zu64Z CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok")] public static extern long CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(long _owner);
+ // void CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err")] public static extern void CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_err(long _owner);
// struct LDKChannelDerivationParameters CResult_ChannelDerivationParametersDecodeErrorZ_get_ok(LDKCResult_ChannelDerivationParametersDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ChannelDerivationParametersDecodeErrorZ_get_ok")] public static extern long CResult_ChannelDerivationParametersDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_ChannelDerivationParametersDecodeErrorZ_get_err(LDKCResult_ChannelDerivationParametersDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneNoneZ_get_ok")] public static extern void CResult_NoneNoneZ_get_ok(long _owner);
// void CResult_NoneNoneZ_get_err(LDKCResult_NoneNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneNoneZ_get_err")] public static extern void CResult_NoneNoneZ_get_err(long _owner);
- // struct LDKECDSASignature C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(long _owner);
- // struct LDKCVec_ECDSASignatureZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(long _owner);
- // struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(long _owner);
- // void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err")] public static extern void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(long _owner);
- // struct LDKECDSASignature CResult_ECDSASignatureNoneZ_get_ok(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_get_ok")] public static extern long CResult_ECDSASignatureNoneZ_get_ok(long _owner);
- // void CResult_ECDSASignatureNoneZ_get_err(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_get_err")] public static extern void CResult_ECDSASignatureNoneZ_get_err(long _owner);
// struct LDKPublicKey CResult_PublicKeyNoneZ_get_ok(LDKCResult_PublicKeyNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PublicKeyNoneZ_get_ok")] public static extern long CResult_PublicKeyNoneZ_get_ok(long _owner);
// void CResult_PublicKeyNoneZ_get_err(LDKCResult_PublicKeyNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SchnorrSignatureNoneZ_get_ok")] public static extern long CResult_SchnorrSignatureNoneZ_get_ok(long _owner);
// void CResult_SchnorrSignatureNoneZ_get_err(LDKCResult_SchnorrSignatureNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SchnorrSignatureNoneZ_get_err")] public static extern void CResult_SchnorrSignatureNoneZ_get_err(long _owner);
+ // struct LDKECDSASignature CResult_ECDSASignatureNoneZ_get_ok(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_get_ok")] public static extern long CResult_ECDSASignatureNoneZ_get_ok(long _owner);
+ // void CResult_ECDSASignatureNoneZ_get_err(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_get_err")] public static extern void CResult_ECDSASignatureNoneZ_get_err(long _owner);
+ // struct LDKECDSASignature C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_a(long _owner);
+ // struct LDKCVec_ECDSASignatureZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_get_b(long _owner);
+ // struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_ok(long _owner);
+ // void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err")] public static extern void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_get_err(long _owner);
public interface LDKChannelSigner {
long get_per_commitment_point(long idx);
long release_commitment_secret(long idx);
- long validate_holder_commitment(long holder_tx, long preimages);
+ long validate_holder_commitment(long holder_tx, long outbound_htlc_preimages);
+ long validate_counterparty_revocation(long idx, long secret);
long channel_keys_id();
void provide_channel_parameters(long channel_parameters);
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_get_per_commitment_point")] public static extern long ChannelSigner_get_per_commitment_point(long _this_arg, long _idx);
// LDKThirtyTwoBytes ChannelSigner_release_commitment_secret LDKChannelSigner *NONNULL_PTR this_arg, uint64_t idx
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_release_commitment_secret")] public static extern long ChannelSigner_release_commitment_secret(long _this_arg, long _idx);
- // LDKCResult_NoneNoneZ ChannelSigner_validate_holder_commitment LDKChannelSigner *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx, struct LDKCVec_ThirtyTwoBytesZ preimages
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_validate_holder_commitment")] public static extern long ChannelSigner_validate_holder_commitment(long _this_arg, long _holder_tx, long _preimages);
+ // LDKCResult_NoneNoneZ ChannelSigner_validate_holder_commitment LDKChannelSigner *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx, struct LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_validate_holder_commitment")] public static extern long ChannelSigner_validate_holder_commitment(long _this_arg, long _holder_tx, long _outbound_htlc_preimages);
+ // LDKCResult_NoneNoneZ ChannelSigner_validate_counterparty_revocation LDKChannelSigner *NONNULL_PTR this_arg, uint64_t idx, const uint8_t (*secret)[32]
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_validate_counterparty_revocation")] public static extern long ChannelSigner_validate_counterparty_revocation(long _this_arg, long _idx, long _secret);
// LDKThirtyTwoBytes ChannelSigner_channel_keys_id LDKChannelSigner *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_channel_keys_id")] public static extern long ChannelSigner_channel_keys_id(long _this_arg);
// void ChannelSigner_provide_channel_parameters LDKChannelSigner *NONNULL_PTR this_arg, const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters
// LDKChannelPublicKeys ChannelSigner_get_pubkeys LDKChannelSigner *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_get_pubkeys")] public static extern long ChannelSigner_get_pubkeys(long _this_arg);
public interface LDKEcdsaChannelSigner {
- long sign_counterparty_commitment(long commitment_tx, long preimages);
- long validate_counterparty_revocation(long idx, long secret);
+ long sign_counterparty_commitment(long commitment_tx, long inbound_htlc_preimages, long outbound_htlc_preimages);
long sign_holder_commitment(long commitment_tx);
long sign_justice_revoked_output(long justice_tx, long input, long amount, long per_commitment_key);
long sign_justice_revoked_htlc(long justice_tx, long input, long amount, long per_commitment_key, long htlc);
ret[1] = i;
return ret;
}
- // LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ EcdsaChannelSigner_sign_counterparty_commitment LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx, struct LDKCVec_ThirtyTwoBytesZ preimages
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_EcdsaChannelSigner_sign_counterparty_commitment")] public static extern long EcdsaChannelSigner_sign_counterparty_commitment(long _this_arg, long _commitment_tx, long _preimages);
- // LDKCResult_NoneNoneZ EcdsaChannelSigner_validate_counterparty_revocation LDKEcdsaChannelSigner *NONNULL_PTR this_arg, uint64_t idx, const uint8_t (*secret)[32]
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_EcdsaChannelSigner_validate_counterparty_revocation")] public static extern long EcdsaChannelSigner_validate_counterparty_revocation(long _this_arg, long _idx, long _secret);
+ // LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ EcdsaChannelSigner_sign_counterparty_commitment LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx, struct LDKCVec_ThirtyTwoBytesZ inbound_htlc_preimages, struct LDKCVec_ThirtyTwoBytesZ outbound_htlc_preimages
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_EcdsaChannelSigner_sign_counterparty_commitment")] public static extern long EcdsaChannelSigner_sign_counterparty_commitment(long _this_arg, long _commitment_tx, long _inbound_htlc_preimages, long _outbound_htlc_preimages);
// LDKCResult_ECDSASignatureNoneZ EcdsaChannelSigner_sign_holder_commitment LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_EcdsaChannelSigner_sign_holder_commitment")] public static extern long EcdsaChannelSigner_sign_holder_commitment(long _this_arg, long _commitment_tx);
// LDKCResult_ECDSASignatureNoneZ EcdsaChannelSigner_sign_justice_revoked_output LDKEcdsaChannelSigner *NONNULL_PTR this_arg, struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32]
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_u16Z_Some_get_some")] public static extern short LDKCOption_u16Z_Some_get_some(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_boolZ_ty_from_ptr")] public static extern long LDKCOption_boolZ_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_boolZ_Some_get_some")] public static extern bool LDKCOption_boolZ_Some_get_some(long ptr);
- // struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_get_ok")] public static extern long CResult_CVec_CVec_u8ZZNoneZ_get_ok(long _owner);
- // void CResult_CVec_CVec_u8ZZNoneZ_get_err(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_get_err")] public static extern void CResult_CVec_CVec_u8ZZNoneZ_get_err(long _owner);
+ // struct LDKWitness CResult_WitnessNoneZ_get_ok(LDKCResult_WitnessNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_get_ok")] public static extern long CResult_WitnessNoneZ_get_ok(long _owner);
+ // void CResult_WitnessNoneZ_get_err(LDKCResult_WitnessNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_get_err")] public static extern void CResult_WitnessNoneZ_get_err(long _owner);
// struct LDKInMemorySigner CResult_InMemorySignerDecodeErrorZ_get_ok(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InMemorySignerDecodeErrorZ_get_ok")] public static extern long CResult_InMemorySignerDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_InMemorySignerDecodeErrorZ_get_err(LDKCResult_InMemorySignerDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_TransactionNoneZ_get_ok")] public static extern long CResult_TransactionNoneZ_get_ok(long _owner);
// void CResult_TransactionNoneZ_get_err(LDKCResult_TransactionNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_TransactionNoneZ_get_err")] public static extern void CResult_TransactionNoneZ_get_err(long _owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCandidateRouteHop_ty_from_ptr")] public static extern long LDKCandidateRouteHop_ty_from_ptr(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCandidateRouteHop_FirstHop_get_first_hop")] public static extern long LDKCandidateRouteHop_FirstHop_get_first_hop(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCandidateRouteHop_PublicHop_get_public_hop")] public static extern long LDKCandidateRouteHop_PublicHop_get_public_hop(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCandidateRouteHop_PrivateHop_get_private_hop")] public static extern long LDKCandidateRouteHop_PrivateHop_get_private_hop(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCandidateRouteHop_Blinded_get_blinded")] public static extern long LDKCandidateRouteHop_Blinded_get_blinded(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCandidateRouteHop_OneHopBlinded_get_one_hop_blinded")] public static extern long LDKCandidateRouteHop_OneHopBlinded_get_one_hop_blinded(long ptr);
public interface LDKScoreLookUp {
- long channel_penalty_msat(long short_channel_id, long source, long target, long usage, long score_params);
+ long channel_penalty_msat(long candidate, long usage, long score_params);
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKScoreLookUp_new")] public static extern long LDKScoreLookUp_new_native(long impl_idx);
public static long[] LDKScoreLookUp_new(LDKScoreLookUp impl) {
ret[1] = i;
return ret;
}
- // uint64_t ScoreLookUp_channel_penalty_msat LDKScoreLookUp *NONNULL_PTR this_arg, uint64_t short_channel_id, const struct LDKNodeId *NONNULL_PTR source, const struct LDKNodeId *NONNULL_PTR target, struct LDKChannelUsage usage, const struct LDKProbabilisticScoringFeeParameters *NONNULL_PTR score_params
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreLookUp_channel_penalty_msat")] public static extern long ScoreLookUp_channel_penalty_msat(long _this_arg, long _short_channel_id, long _source, long _target, long _usage, long _score_params);
+ // uint64_t ScoreLookUp_channel_penalty_msat LDKScoreLookUp *NONNULL_PTR this_arg, const struct LDKCandidateRouteHop *NONNULL_PTR candidate, struct LDKChannelUsage usage, const struct LDKProbabilisticScoringFeeParameters *NONNULL_PTR score_params
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreLookUp_channel_penalty_msat")] public static extern long ScoreLookUp_channel_penalty_msat(long _this_arg, long _candidate, long _usage, long _score_params);
public interface LDKScoreUpdate {
- void payment_path_failed(long path, long short_channel_id);
- void payment_path_successful(long path);
- void probe_failed(long path, long short_channel_id);
- void probe_successful(long path);
+ void payment_path_failed(long path, long short_channel_id, long duration_since_epoch);
+ void payment_path_successful(long path, long duration_since_epoch);
+ void probe_failed(long path, long short_channel_id, long duration_since_epoch);
+ void probe_successful(long path, long duration_since_epoch);
+ void time_passed(long duration_since_epoch);
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKScoreUpdate_new")] public static extern long LDKScoreUpdate_new_native(long impl_idx);
public static long[] LDKScoreUpdate_new(LDKScoreUpdate impl) {
ret[1] = i;
return ret;
}
- // void ScoreUpdate_payment_path_failed LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path, uint64_t short_channel_id
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_payment_path_failed")] public static extern void ScoreUpdate_payment_path_failed(long _this_arg, long _path, long _short_channel_id);
- // void ScoreUpdate_payment_path_successful LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_payment_path_successful")] public static extern void ScoreUpdate_payment_path_successful(long _this_arg, long _path);
- // void ScoreUpdate_probe_failed LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path, uint64_t short_channel_id
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_probe_failed")] public static extern void ScoreUpdate_probe_failed(long _this_arg, long _path, long _short_channel_id);
- // void ScoreUpdate_probe_successful LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_probe_successful")] public static extern void ScoreUpdate_probe_successful(long _this_arg, long _path);
+ // void ScoreUpdate_payment_path_failed LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path, uint64_t short_channel_id, uint64_t duration_since_epoch
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_payment_path_failed")] public static extern void ScoreUpdate_payment_path_failed(long _this_arg, long _path, long _short_channel_id, long _duration_since_epoch);
+ // void ScoreUpdate_payment_path_successful LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path, uint64_t duration_since_epoch
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_payment_path_successful")] public static extern void ScoreUpdate_payment_path_successful(long _this_arg, long _path, long _duration_since_epoch);
+ // void ScoreUpdate_probe_failed LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path, uint64_t short_channel_id, uint64_t duration_since_epoch
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_probe_failed")] public static extern void ScoreUpdate_probe_failed(long _this_arg, long _path, long _short_channel_id, long _duration_since_epoch);
+ // void ScoreUpdate_probe_successful LDKScoreUpdate *NONNULL_PTR this_arg, const struct LDKPath *NONNULL_PTR path, uint64_t duration_since_epoch
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_probe_successful")] public static extern void ScoreUpdate_probe_successful(long _this_arg, long _path, long _duration_since_epoch);
+ // void ScoreUpdate_time_passed LDKScoreUpdate *NONNULL_PTR this_arg, uint64_t duration_since_epoch
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ScoreUpdate_time_passed")] public static extern void ScoreUpdate_time_passed(long _this_arg, long _duration_since_epoch);
public interface LDKLockableScore {
long read_lock();
long write_lock();
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteLightningErrorZ_get_ok")] public static extern long CResult_RouteLightningErrorZ_get_ok(long _owner);
// struct LDKLightningError CResult_RouteLightningErrorZ_get_err(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteLightningErrorZ_get_err")] public static extern long CResult_RouteLightningErrorZ_get_err(long _owner);
+ // struct LDKBlindedPayInfo C2Tuple_BlindedPayInfoBlindedPathZ_get_a(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_a")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_get_a(long _owner);
+ // struct LDKBlindedPath C2Tuple_BlindedPayInfoBlindedPathZ_get_b(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_b")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_get_b(long _owner);
+ // struct LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok")] public static extern long CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(long _owner);
+ // void CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err")] public static extern void CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_err(long _owner);
+ // struct LDKOnionMessagePath CResult_OnionMessagePathNoneZ_get_ok(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_get_ok")] public static extern long CResult_OnionMessagePathNoneZ_get_ok(long _owner);
+ // void CResult_OnionMessagePathNoneZ_get_err(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_get_err")] public static extern void CResult_OnionMessagePathNoneZ_get_err(long _owner);
+ // struct LDKCVec_BlindedPathZ CResult_CVec_BlindedPathZNoneZ_get_ok(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_get_ok")] public static extern long CResult_CVec_BlindedPathZNoneZ_get_ok(long _owner);
+ // void CResult_CVec_BlindedPathZNoneZ_get_err(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_get_err")] public static extern void CResult_CVec_BlindedPathZNoneZ_get_err(long _owner);
// struct LDKInFlightHtlcs CResult_InFlightHtlcsDecodeErrorZ_get_ok(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InFlightHtlcsDecodeErrorZ_get_ok")] public static extern long CResult_InFlightHtlcsDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_InFlightHtlcsDecodeErrorZ_get_err(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentParametersDecodeErrorZ_get_ok")] public static extern long CResult_PaymentParametersDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_PaymentParametersDecodeErrorZ_get_err(LDKCResult_PaymentParametersDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentParametersDecodeErrorZ_get_err")] public static extern long CResult_PaymentParametersDecodeErrorZ_get_err(long _owner);
- // struct LDKBlindedPayInfo C2Tuple_BlindedPayInfoBlindedPathZ_get_a(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_a")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_get_a(long _owner);
- // struct LDKBlindedPath C2Tuple_BlindedPayInfoBlindedPathZ_get_b(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_get_b")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_get_b(long _owner);
// struct LDKRouteHint CResult_RouteHintDecodeErrorZ_get_ok(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteHintDecodeErrorZ_get_ok")] public static extern long CResult_RouteHintDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_RouteHintDecodeErrorZ_get_err(LDKCResult_RouteHintDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_usizeTransactionZ_get_a")] public static extern long C2Tuple_usizeTransactionZ_get_a(long _owner);
// struct LDKTransaction C2Tuple_usizeTransactionZ_get_b(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_usizeTransactionZ_get_b")] public static extern long C2Tuple_usizeTransactionZ_get_b(long _owner);
- // struct LDKThirtyTwoBytes C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a")] public static extern long C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(long _owner);
- // struct LDKCOption_ThirtyTwoBytesZ C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b")] public static extern long C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(long _owner);
+ // struct LDKThirtyTwoBytes C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a")] public static extern long C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(long _owner);
+ // uint32_t C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b")] public static extern int C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(long _owner);
+ // struct LDKCOption_ThirtyTwoBytesZ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c")] public static extern long C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(long _owner);
// enum LDKChannelMonitorUpdateStatus CResult_ChannelMonitorUpdateStatusNoneZ_get_ok(LDKCResult_ChannelMonitorUpdateStatusNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ChannelMonitorUpdateStatusNoneZ_get_ok")] public static extern ChannelMonitorUpdateStatus CResult_ChannelMonitorUpdateStatusNoneZ_get_ok(long _owner);
// void CResult_ChannelMonitorUpdateStatusNoneZ_get_err(LDKCResult_ChannelMonitorUpdateStatusNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendFundingCreated_get_msg")] public static extern long LDKMessageSendEvent_SendFundingCreated_get_msg(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendFundingSigned_get_node_id")] public static extern long LDKMessageSendEvent_SendFundingSigned_get_node_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendFundingSigned_get_msg")] public static extern long LDKMessageSendEvent_SendFundingSigned_get_msg(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendStfu_get_node_id")] public static extern long LDKMessageSendEvent_SendStfu_get_node_id(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendStfu_get_msg")] public static extern long LDKMessageSendEvent_SendStfu_get_msg(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendSplice_get_node_id")] public static extern long LDKMessageSendEvent_SendSplice_get_node_id(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendSplice_get_msg")] public static extern long LDKMessageSendEvent_SendSplice_get_msg(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendSpliceAck_get_node_id")] public static extern long LDKMessageSendEvent_SendSpliceAck_get_node_id(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendSpliceAck_get_msg")] public static extern long LDKMessageSendEvent_SendSpliceAck_get_msg(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendSpliceLocked_get_node_id")] public static extern long LDKMessageSendEvent_SendSpliceLocked_get_node_id(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendSpliceLocked_get_msg")] public static extern long LDKMessageSendEvent_SendSpliceLocked_get_msg(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendTxAddInput_get_node_id")] public static extern long LDKMessageSendEvent_SendTxAddInput_get_node_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendTxAddInput_get_msg")] public static extern long LDKMessageSendEvent_SendTxAddInput_get_msg(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageSendEvent_SendTxAddOutput_get_node_id")] public static extern long LDKMessageSendEvent_SendTxAddOutput_get_node_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NetworkGraphDecodeErrorZ_get_err")] public static extern long CResult_NetworkGraphDecodeErrorZ_get_err(long _owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_CVec_SocketAddressZZ_ty_from_ptr")] public static extern long LDKCOption_CVec_SocketAddressZZ_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_CVec_SocketAddressZZ_Some_get_some")] public static extern long LDKCOption_CVec_SocketAddressZZ_Some_get_some(long ptr);
+ // struct LDKPendingHTLCInfo CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok")] public static extern long CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(long _owner);
+ // struct LDKInboundHTLCErr CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_get_err")] public static extern long CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(long _owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_TxOutZ_ty_from_ptr")] public static extern long LDKCOption_TxOutZ_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_TxOutZ_Some_get_some")] public static extern long LDKCOption_TxOutZ_Some_get_some(long ptr);
// struct LDKCoinSelection CResult_CoinSelectionNoneZ_get_ok(LDKCResult_CoinSelectionNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PhantomRouteHintsDecodeErrorZ_get_ok")] public static extern long CResult_PhantomRouteHintsDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_PhantomRouteHintsDecodeErrorZ_get_err(LDKCResult_PhantomRouteHintsDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PhantomRouteHintsDecodeErrorZ_get_err")] public static extern long CResult_PhantomRouteHintsDecodeErrorZ_get_err(long _owner);
+ // struct LDKBlindedForward CResult_BlindedForwardDecodeErrorZ_get_ok(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_get_ok")] public static extern long CResult_BlindedForwardDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_BlindedForwardDecodeErrorZ_get_err(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_get_err")] public static extern long CResult_BlindedForwardDecodeErrorZ_get_err(long _owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_ty_from_ptr")] public static extern long LDKPendingHTLCRouting_ty_from_ptr(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Forward_get_onion_packet")] public static extern long LDKPendingHTLCRouting_Forward_get_onion_packet(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Forward_get_short_channel_id")] public static extern long LDKPendingHTLCRouting_Forward_get_short_channel_id(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Forward_get_blinded")] public static extern long LDKPendingHTLCRouting_Forward_get_blinded(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Receive_get_payment_data")] public static extern long LDKPendingHTLCRouting_Receive_get_payment_data(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Receive_get_payment_metadata")] public static extern long LDKPendingHTLCRouting_Receive_get_payment_metadata(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Receive_get_incoming_cltv_expiry")] public static extern int LDKPendingHTLCRouting_Receive_get_incoming_cltv_expiry(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Receive_get_phantom_shared_secret")] public static extern long LDKPendingHTLCRouting_Receive_get_phantom_shared_secret(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Receive_get_custom_tlvs")] public static extern long LDKPendingHTLCRouting_Receive_get_custom_tlvs(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_Receive_get_requires_blinded_error")] public static extern bool LDKPendingHTLCRouting_Receive_get_requires_blinded_error(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_data")] public static extern long LDKPendingHTLCRouting_ReceiveKeysend_get_payment_data(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_preimage")] public static extern long LDKPendingHTLCRouting_ReceiveKeysend_get_payment_preimage(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_payment_metadata")] public static extern long LDKPendingHTLCRouting_ReceiveKeysend_get_payment_metadata(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_incoming_cltv_expiry")] public static extern int LDKPendingHTLCRouting_ReceiveKeysend_get_incoming_cltv_expiry(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPendingHTLCRouting_ReceiveKeysend_get_custom_tlvs")] public static extern long LDKPendingHTLCRouting_ReceiveKeysend_get_custom_tlvs(long ptr);
+ // struct LDKPendingHTLCRouting CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_get_ok")] public static extern long CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_PendingHTLCRoutingDecodeErrorZ_get_err(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_get_err")] public static extern long CResult_PendingHTLCRoutingDecodeErrorZ_get_err(long _owner);
+ // struct LDKPendingHTLCInfo CResult_PendingHTLCInfoDecodeErrorZ_get_ok(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_get_ok")] public static extern long CResult_PendingHTLCInfoDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_PendingHTLCInfoDecodeErrorZ_get_err(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_get_err")] public static extern long CResult_PendingHTLCInfoDecodeErrorZ_get_err(long _owner);
+ // enum LDKBlindedFailure CResult_BlindedFailureDecodeErrorZ_get_ok(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_get_ok")] public static extern BlindedFailure CResult_BlindedFailureDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_BlindedFailureDecodeErrorZ_get_err(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_get_err")] public static extern long CResult_BlindedFailureDecodeErrorZ_get_err(long _owner);
// enum LDKChannelShutdownState CResult_ChannelShutdownStateDecodeErrorZ_get_ok(LDKCResult_ChannelShutdownStateDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ChannelShutdownStateDecodeErrorZ_get_ok")] public static extern ChannelShutdownState CResult_ChannelShutdownStateDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_ChannelShutdownStateDecodeErrorZ_get_err(LDKCResult_ChannelShutdownStateDecodeErrorZ *NONNULL_PTR owner);
long generate_channel_keys_id(bool inbound, long channel_value_satoshis, long user_channel_id);
long derive_channel_signer(long channel_value_satoshis, long channel_keys_id);
long read_chan_signer(long reader);
- long get_destination_script();
+ long get_destination_script(long channel_keys_id);
long get_shutdown_scriptpubkey();
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSignerProvider_new")] public static extern long LDKSignerProvider_new_native(long impl_idx);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignerProvider_derive_channel_signer")] public static extern long SignerProvider_derive_channel_signer(long _this_arg, long _channel_value_satoshis, long _channel_keys_id);
// LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ SignerProvider_read_chan_signer LDKSignerProvider *NONNULL_PTR this_arg, struct LDKu8slice reader
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignerProvider_read_chan_signer")] public static extern long SignerProvider_read_chan_signer(long _this_arg, long _reader);
- // LDKCResult_CVec_u8ZNoneZ SignerProvider_get_destination_script LDKSignerProvider *NONNULL_PTR this_arg
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignerProvider_get_destination_script")] public static extern long SignerProvider_get_destination_script(long _this_arg);
+ // LDKCResult_CVec_u8ZNoneZ SignerProvider_get_destination_script LDKSignerProvider *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes channel_keys_id
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignerProvider_get_destination_script")] public static extern long SignerProvider_get_destination_script(long _this_arg, long _channel_keys_id);
// LDKCResult_ShutdownScriptNoneZ SignerProvider_get_shutdown_scriptpubkey LDKSignerProvider *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignerProvider_get_shutdown_scriptpubkey")] public static extern long SignerProvider_get_shutdown_scriptpubkey(long _this_arg);
public interface LDKFeeEstimator {
}
// uint32_t FeeEstimator_get_est_sat_per_1000_weight LDKFeeEstimator *NONNULL_PTR this_arg, enum LDKConfirmationTarget confirmation_target
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FeeEstimator_get_est_sat_per_1000_weight")] public static extern int FeeEstimator_get_est_sat_per_1000_weight(long _this_arg, ConfirmationTarget _confirmation_target);
+ public interface LDKMessageRouter {
+ long find_path(long sender, long peers, long destination);
+ long create_blinded_paths(long recipient, long peers);
+ }
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageRouter_new")] public static extern long LDKMessageRouter_new_native(long impl_idx);
+ public static long[] LDKMessageRouter_new(LDKMessageRouter impl) {
+ long new_obj_idx = js_objs.Count;
+ int i = 0;
+ for (; i < js_objs.Count; i++) {
+ if (js_objs[i] == null || !js_objs[i].IsAlive) { new_obj_idx = i; break; }
+ }
+ if (i == js_objs.Count) {
+ js_objs.Add(new WeakReference(impl));
+ } else {
+ js_objs[i] = new WeakReference(impl);
+ }
+ long[] ret = new long[2];
+ ret[0] = LDKMessageRouter_new_native(i);
+ ret[1] = i;
+ return ret;
+ }
+ // LDKCResult_OnionMessagePathNoneZ MessageRouter_find_path LDKMessageRouter *NONNULL_PTR this_arg, struct LDKPublicKey sender, struct LDKCVec_PublicKeyZ peers, struct LDKDestination destination
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageRouter_find_path")] public static extern long MessageRouter_find_path(long _this_arg, long _sender, long _peers, long _destination);
+ // LDKCResult_CVec_BlindedPathZNoneZ MessageRouter_create_blinded_paths LDKMessageRouter *NONNULL_PTR this_arg, struct LDKPublicKey recipient, struct LDKCVec_PublicKeyZ peers
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageRouter_create_blinded_paths")] public static extern long MessageRouter_create_blinded_paths(long _this_arg, long _recipient, long _peers);
public interface LDKRouter {
long find_route(long payer, long route_params, long first_hops, long inflight_htlcs);
long find_route_with_id(long payer, long route_params, long first_hops, long inflight_htlcs, long _payment_hash, long _payment_id);
+ long create_blinded_payment_paths(long recipient, long first_hops, long tlvs, long amount_msats);
}
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKRouter_new")] public static extern long LDKRouter_new_native(long impl_idx);
- public static long[] LDKRouter_new(LDKRouter impl) {
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKRouter_new")] public static extern long LDKRouter_new_native(long impl_idx, long MessageRouter);
+ public static long[] LDKRouter_new(LDKRouter impl, long MessageRouter) {
long new_obj_idx = js_objs.Count;
int i = 0;
for (; i < js_objs.Count; i++) {
js_objs[i] = new WeakReference(impl);
}
long[] ret = new long[2];
- ret[0] = LDKRouter_new_native(i);
+ ret[0] = LDKRouter_new_native(i, MessageRouter);
ret[1] = i;
return ret;
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Router_find_route")] public static extern long Router_find_route(long _this_arg, long _payer, long _route_params, long _first_hops, long _inflight_htlcs);
// LDKCResult_RouteLightningErrorZ Router_find_route_with_id LDKRouter *NONNULL_PTR this_arg, struct LDKPublicKey payer, const struct LDKRouteParameters *NONNULL_PTR route_params, struct LDKCVec_ChannelDetailsZ *first_hops, struct LDKInFlightHtlcs inflight_htlcs, struct LDKThirtyTwoBytes _payment_hash, struct LDKThirtyTwoBytes _payment_id
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Router_find_route_with_id")] public static extern long Router_find_route_with_id(long _this_arg, long _payer, long _route_params, long _first_hops, long _inflight_htlcs, long __payment_hash, long __payment_id);
+ // LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ Router_create_blinded_payment_paths LDKRouter *NONNULL_PTR this_arg, struct LDKPublicKey recipient, struct LDKCVec_ChannelDetailsZ first_hops, struct LDKReceiveTlvs tlvs, uint64_t amount_msats
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Router_create_blinded_payment_paths")] public static extern long Router_create_blinded_payment_paths(long _this_arg, long _recipient, long _first_hops, long _tlvs, long _amount_msats);
// struct LDKThirtyTwoBytes C2Tuple_ThirtyTwoBytesChannelManagerZ_get_a(LDKC2Tuple_ThirtyTwoBytesChannelManagerZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesChannelManagerZ_get_a")] public static extern long C2Tuple_ThirtyTwoBytesChannelManagerZ_get_a(long _owner);
// struct LDKChannelManager C2Tuple_ThirtyTwoBytesChannelManagerZ_get_b(LDKC2Tuple_ThirtyTwoBytesChannelManagerZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyTypeZ_get_a")] public static extern long C2Tuple_PublicKeyTypeZ_get_a(long _owner);
// struct LDKType C2Tuple_PublicKeyTypeZ_get_b(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyTypeZ_get_b")] public static extern long C2Tuple_PublicKeyTypeZ_get_b(long _owner);
+ // struct LDKPublicKey C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a")] public static extern long C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(long _owner);
+ // struct LDKCVec_SocketAddressZ C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b")] public static extern long C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(long _owner);
public interface LDKOnionMessageContents {
long tlv_type();
long write();
+ long debug_str();
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKOnionMessageContents_new")] public static extern long LDKOnionMessageContents_new_native(long impl_idx);
public static long[] LDKOnionMessageContents_new(LDKOnionMessageContents impl) {
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageContents_tlv_type")] public static extern long OnionMessageContents_tlv_type(long _this_arg);
// LDKCVec_u8Z OnionMessageContents_write LDKOnionMessageContents *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageContents_write")] public static extern long OnionMessageContents_write(long _this_arg);
+ // LDKStr OnionMessageContents_debug_str LDKOnionMessageContents *NONNULL_PTR this_arg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageContents_debug_str")] public static extern long OnionMessageContents_debug_str(long _this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_OnionMessageContentsZ_ty_from_ptr")] public static extern long LDKCOption_OnionMessageContentsZ_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCOption_OnionMessageContentsZ_Some_get_some")] public static extern long LDKCOption_OnionMessageContentsZ_Some_get_some(long ptr);
// struct LDKCOption_OnionMessageContentsZ CResult_COption_OnionMessageContentsZDecodeErrorZ_get_ok(LDKCResult_COption_OnionMessageContentsZDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_AcceptChannelV2DecodeErrorZ_get_ok")] public static extern long CResult_AcceptChannelV2DecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_AcceptChannelV2DecodeErrorZ_get_err(LDKCResult_AcceptChannelV2DecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_AcceptChannelV2DecodeErrorZ_get_err")] public static extern long CResult_AcceptChannelV2DecodeErrorZ_get_err(long _owner);
+ // struct LDKStfu CResult_StfuDecodeErrorZ_get_ok(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_get_ok")] public static extern long CResult_StfuDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_StfuDecodeErrorZ_get_err(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_get_err")] public static extern long CResult_StfuDecodeErrorZ_get_err(long _owner);
+ // struct LDKSplice CResult_SpliceDecodeErrorZ_get_ok(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_get_ok")] public static extern long CResult_SpliceDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_SpliceDecodeErrorZ_get_err(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_get_err")] public static extern long CResult_SpliceDecodeErrorZ_get_err(long _owner);
+ // struct LDKSpliceAck CResult_SpliceAckDecodeErrorZ_get_ok(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_get_ok")] public static extern long CResult_SpliceAckDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_SpliceAckDecodeErrorZ_get_err(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_get_err")] public static extern long CResult_SpliceAckDecodeErrorZ_get_err(long _owner);
+ // struct LDKSpliceLocked CResult_SpliceLockedDecodeErrorZ_get_ok(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_get_ok")] public static extern long CResult_SpliceLockedDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_SpliceLockedDecodeErrorZ_get_err(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_get_err")] public static extern long CResult_SpliceLockedDecodeErrorZ_get_err(long _owner);
// struct LDKTxAddInput CResult_TxAddInputDecodeErrorZ_get_ok(LDKCResult_TxAddInputDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_TxAddInputDecodeErrorZ_get_ok")] public static extern long CResult_TxAddInputDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_TxAddInputDecodeErrorZ_get_err(LDKCResult_TxAddInputDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok")] public static extern long CResult_UpdateFulfillHTLCDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UpdateFulfillHTLCDecodeErrorZ_get_err")] public static extern long CResult_UpdateFulfillHTLCDecodeErrorZ_get_err(long _owner);
+ // struct LDKOnionPacket CResult_OnionPacketDecodeErrorZ_get_ok(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_get_ok")] public static extern long CResult_OnionPacketDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_OnionPacketDecodeErrorZ_get_err(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_get_err")] public static extern long CResult_OnionPacketDecodeErrorZ_get_err(long _owner);
// struct LDKUpdateAddHTLC CResult_UpdateAddHTLCDecodeErrorZ_get_ok(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UpdateAddHTLCDecodeErrorZ_get_ok")] public static extern long CResult_UpdateAddHTLCDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_UpdateAddHTLCDecodeErrorZ_get_err(LDKCResult_UpdateAddHTLCDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessageDecodeErrorZ_get_ok")] public static extern long CResult_OnionMessageDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_OnionMessageDecodeErrorZ_get_err(LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessageDecodeErrorZ_get_err")] public static extern long CResult_OnionMessageDecodeErrorZ_get_err(long _owner);
+ // struct LDKFinalOnionHopData CResult_FinalOnionHopDataDecodeErrorZ_get_ok(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_get_ok")] public static extern long CResult_FinalOnionHopDataDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_FinalOnionHopDataDecodeErrorZ_get_err(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_get_err")] public static extern long CResult_FinalOnionHopDataDecodeErrorZ_get_err(long _owner);
// struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PingDecodeErrorZ_get_ok")] public static extern long CResult_PingDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_PingDecodeErrorZ_get_err(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_PaymentClaimed_get_purpose")] public static extern long LDKEvent_PaymentClaimed_get_purpose(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_PaymentClaimed_get_htlcs")] public static extern long LDKEvent_PaymentClaimed_get_htlcs(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_PaymentClaimed_get_sender_intended_total_msat")] public static extern long LDKEvent_PaymentClaimed_get_sender_intended_total_msat(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_ConnectionNeeded_get_node_id")] public static extern long LDKEvent_ConnectionNeeded_get_node_id(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_ConnectionNeeded_get_addresses")] public static extern long LDKEvent_ConnectionNeeded_get_addresses(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_InvoiceRequestFailed_get_payment_id")] public static extern long LDKEvent_InvoiceRequestFailed_get_payment_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_PaymentSent_get_payment_id")] public static extern long LDKEvent_PaymentSent_get_payment_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_PaymentSent_get_payment_preimage")] public static extern long LDKEvent_PaymentSent_get_payment_preimage(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_ChannelClosed_get_reason")] public static extern long LDKEvent_ChannelClosed_get_reason(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_ChannelClosed_get_counterparty_node_id")] public static extern long LDKEvent_ChannelClosed_get_counterparty_node_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_ChannelClosed_get_channel_capacity_sats")] public static extern long LDKEvent_ChannelClosed_get_channel_capacity_sats(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_ChannelClosed_get_channel_funding_txo")] public static extern long LDKEvent_ChannelClosed_get_channel_funding_txo(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_DiscardFunding_get_channel_id")] public static extern long LDKEvent_DiscardFunding_get_channel_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_DiscardFunding_get_transaction")] public static extern long LDKEvent_DiscardFunding_get_transaction(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKEvent_OpenChannelRequest_get_temporary_channel_id")] public static extern long LDKEvent_OpenChannelRequest_get_temporary_channel_id(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UntrustedStringDecodeErrorZ_get_ok")] public static extern long CResult_UntrustedStringDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_UntrustedStringDecodeErrorZ_get_err(LDKCResult_UntrustedStringDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UntrustedStringDecodeErrorZ_get_err")] public static extern long CResult_UntrustedStringDecodeErrorZ_get_err(long _owner);
- // struct LDKReceiveTlvs CResult_ReceiveTlvsDecodeErrorZ_get_ok(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_get_ok")] public static extern long CResult_ReceiveTlvsDecodeErrorZ_get_ok(long _owner);
- // struct LDKDecodeError CResult_ReceiveTlvsDecodeErrorZ_get_err(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_get_err")] public static extern long CResult_ReceiveTlvsDecodeErrorZ_get_err(long _owner);
+ // struct LDKThirtyTwoBytes C2Tuple__u832u16Z_get_a(LDKC2Tuple__u832u16Z *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple__u832u16Z_get_a")] public static extern long C2Tuple__u832u16Z_get_a(long _owner);
+ // uint16_t C2Tuple__u832u16Z_get_b(LDKC2Tuple__u832u16Z *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple__u832u16Z_get_b")] public static extern short C2Tuple__u832u16Z_get_b(long _owner);
// struct LDKPaymentRelay CResult_PaymentRelayDecodeErrorZ_get_ok(LDKCResult_PaymentRelayDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentRelayDecodeErrorZ_get_ok")] public static extern long CResult_PaymentRelayDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_PaymentRelayDecodeErrorZ_get_err(LDKCResult_PaymentRelayDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentConstraintsDecodeErrorZ_get_ok")] public static extern long CResult_PaymentConstraintsDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_PaymentConstraintsDecodeErrorZ_get_err(LDKCResult_PaymentConstraintsDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentConstraintsDecodeErrorZ_get_err")] public static extern long CResult_PaymentConstraintsDecodeErrorZ_get_err(long _owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPaymentError_ty_from_ptr")] public static extern long LDKPaymentError_ty_from_ptr(long ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPaymentError_Invoice_get_invoice")] public static extern long LDKPaymentError_Invoice_get_invoice(long ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKPaymentError_Sending_get_sending")] public static extern RetryableSendFailure LDKPaymentError_Sending_get_sending(long ptr);
- // struct LDKThirtyTwoBytes CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_get_ok")] public static extern long CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(long _owner);
- // struct LDKPaymentError CResult_ThirtyTwoBytesPaymentErrorZ_get_err(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_get_err")] public static extern long CResult_ThirtyTwoBytesPaymentErrorZ_get_err(long _owner);
- // void CResult_NonePaymentErrorZ_get_ok(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_get_ok")] public static extern void CResult_NonePaymentErrorZ_get_ok(long _owner);
- // struct LDKPaymentError CResult_NonePaymentErrorZ_get_err(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_get_err")] public static extern long CResult_NonePaymentErrorZ_get_err(long _owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKProbingError_ty_from_ptr")] public static extern long LDKProbingError_ty_from_ptr(long ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKProbingError_Invoice_get_invoice")] public static extern long LDKProbingError_Invoice_get_invoice(long ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKProbingError_Sending_get_sending")] public static extern long LDKProbingError_Sending_get_sending(long ptr);
- // struct LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok")] public static extern long CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(long _owner);
- // struct LDKProbingError CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err")] public static extern long CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(long _owner);
+ // struct LDKThirtyTwoBytes C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a")] public static extern long C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(long _owner);
+ // struct LDKRecipientOnionFields C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b")] public static extern long C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(long _owner);
+ // struct LDKRouteParameters C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c")] public static extern long C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(long _owner);
+ // struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok")] public static extern long CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(long _owner);
+ // void CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err")] public static extern void CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_err(long _owner);
// struct LDKStr CResult_StrSecp256k1ErrorZ_get_ok(LDKCResult_StrSecp256k1ErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StrSecp256k1ErrorZ_get_ok")] public static extern long CResult_StrSecp256k1ErrorZ_get_ok(long _owner);
// enum LDKSecp256k1Error CResult_StrSecp256k1ErrorZ_get_err(LDKCResult_StrSecp256k1ErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StrSecp256k1ErrorZ_get_err")] public static extern Secp256k1Error CResult_StrSecp256k1ErrorZ_get_err(long _owner);
- // struct LDKOnionMessagePath CResult_OnionMessagePathNoneZ_get_ok(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_get_ok")] public static extern long CResult_OnionMessagePathNoneZ_get_ok(long _owner);
- // void CResult_OnionMessagePathNoneZ_get_err(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_get_err")] public static extern void CResult_OnionMessagePathNoneZ_get_err(long _owner);
- // struct LDKPublicKey C2Tuple_PublicKeyOnionMessageZ_get_a(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyOnionMessageZ_get_a")] public static extern long C2Tuple_PublicKeyOnionMessageZ_get_a(long _owner);
- // struct LDKOnionMessage C2Tuple_PublicKeyOnionMessageZ_get_b(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyOnionMessageZ_get_b")] public static extern long C2Tuple_PublicKeyOnionMessageZ_get_b(long _owner);
+ // struct LDKPublicKey C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a")] public static extern long C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(long _owner);
+ // struct LDKOnionMessage C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b")] public static extern long C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(long _owner);
+ // struct LDKCOption_CVec_SocketAddressZZ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c")] public static extern long C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(long _owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSendError_ty_from_ptr")] public static extern long LDKSendError_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSendError_Secp256k1_get_secp256k1")] public static extern Secp256k1Error LDKSendError_Secp256k1_get_secp256k1(long ptr);
- // struct LDKC2Tuple_PublicKeyOnionMessageZ CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok")] public static extern long CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(long _owner);
- // struct LDKSendError CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err")] public static extern long CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(long _owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSendError_InvalidFirstHop_get_invalid_first_hop")] public static extern long LDKSendError_InvalidFirstHop_get_invalid_first_hop(long ptr);
+ // struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok")] public static extern long CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(long _owner);
+ // struct LDKSendError CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err")] public static extern long CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(long _owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKParsedOnionMessageContents_ty_from_ptr")] public static extern long LDKParsedOnionMessageContents_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKParsedOnionMessageContents_Offers_get_offers")] public static extern long LDKParsedOnionMessageContents_Offers_get_offers(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKParsedOnionMessageContents_Custom_get_custom")] public static extern long LDKParsedOnionMessageContents_Custom_get_custom(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PeeledOnionNoneZ_get_ok")] public static extern long CResult_PeeledOnionNoneZ_get_ok(long _owner);
// void CResult_PeeledOnionNoneZ_get_err(LDKCResult_PeeledOnionNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PeeledOnionNoneZ_get_err")] public static extern void CResult_PeeledOnionNoneZ_get_err(long _owner);
- // void CResult_NoneSendErrorZ_get_ok(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneSendErrorZ_get_ok")] public static extern void CResult_NoneSendErrorZ_get_ok(long _owner);
- // struct LDKSendError CResult_NoneSendErrorZ_get_err(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneSendErrorZ_get_err")] public static extern long CResult_NoneSendErrorZ_get_err(long _owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSendSuccess_ty_from_ptr")] public static extern long LDKSendSuccess_ty_from_ptr(long ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKSendSuccess_BufferedAwaitingConnection_get_buffered_awaiting_connection")] public static extern long LDKSendSuccess_BufferedAwaitingConnection_get_buffered_awaiting_connection(long ptr);
+ // struct LDKSendSuccess CResult_SendSuccessSendErrorZ_get_ok(LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SendSuccessSendErrorZ_get_ok")] public static extern long CResult_SendSuccessSendErrorZ_get_ok(long _owner);
+ // struct LDKSendError CResult_SendSuccessSendErrorZ_get_err(LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SendSuccessSendErrorZ_get_err")] public static extern long CResult_SendSuccessSendErrorZ_get_err(long _owner);
// struct LDKBlindedPath CResult_BlindedPathNoneZ_get_ok(LDKCResult_BlindedPathNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedPathNoneZ_get_ok")] public static extern long CResult_BlindedPathNoneZ_get_ok(long _owner);
// void CResult_BlindedPathNoneZ_get_err(LDKCResult_BlindedPathNoneZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InvoiceErrorDecodeErrorZ_get_ok")] public static extern long CResult_InvoiceErrorDecodeErrorZ_get_ok(long _owner);
// struct LDKDecodeError CResult_InvoiceErrorDecodeErrorZ_get_err(LDKCResult_InvoiceErrorDecodeErrorZ *NONNULL_PTR owner);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InvoiceErrorDecodeErrorZ_get_err")] public static extern long CResult_InvoiceErrorDecodeErrorZ_get_err(long _owner);
+ // struct LDKDelayedPaymentBasepoint CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok")] public static extern long CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_get_err")] public static extern long CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(long _owner);
+ // struct LDKDelayedPaymentKey CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_get_ok")] public static extern long CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_DelayedPaymentKeyDecodeErrorZ_get_err(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_get_err")] public static extern long CResult_DelayedPaymentKeyDecodeErrorZ_get_err(long _owner);
+ // struct LDKHtlcBasepoint CResult_HtlcBasepointDecodeErrorZ_get_ok(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_get_ok")] public static extern long CResult_HtlcBasepointDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_HtlcBasepointDecodeErrorZ_get_err(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_get_err")] public static extern long CResult_HtlcBasepointDecodeErrorZ_get_err(long _owner);
+ // struct LDKHtlcKey CResult_HtlcKeyDecodeErrorZ_get_ok(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_get_ok")] public static extern long CResult_HtlcKeyDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_HtlcKeyDecodeErrorZ_get_err(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_get_err")] public static extern long CResult_HtlcKeyDecodeErrorZ_get_err(long _owner);
+ // struct LDKRevocationBasepoint CResult_RevocationBasepointDecodeErrorZ_get_ok(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_get_ok")] public static extern long CResult_RevocationBasepointDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_RevocationBasepointDecodeErrorZ_get_err(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_get_err")] public static extern long CResult_RevocationBasepointDecodeErrorZ_get_err(long _owner);
+ // struct LDKRevocationKey CResult_RevocationKeyDecodeErrorZ_get_ok(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_get_ok")] public static extern long CResult_RevocationKeyDecodeErrorZ_get_ok(long _owner);
+ // struct LDKDecodeError CResult_RevocationKeyDecodeErrorZ_get_err(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR owner);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_get_err")] public static extern long CResult_RevocationKeyDecodeErrorZ_get_err(long _owner);
public interface LDKFilter {
void register_tx(long txid, long script_pubkey);
void register_output(long output);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Confirm_transaction_unconfirmed")] public static extern void Confirm_transaction_unconfirmed(long _this_arg, long _txid);
// void Confirm_best_block_updated LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Confirm_best_block_updated")] public static extern void Confirm_best_block_updated(long _this_arg, long _header, int _height);
- // LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ Confirm_get_relevant_txids LDKConfirm *NONNULL_PTR this_arg
+ // LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ Confirm_get_relevant_txids LDKConfirm *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Confirm_get_relevant_txids")] public static extern long Confirm_get_relevant_txids(long _this_arg);
public interface LDKEventHandler {
void handle_event(long _event);
void handle_channel_ready(long their_node_id, long msg);
void handle_shutdown(long their_node_id, long msg);
void handle_closing_signed(long their_node_id, long msg);
+ void handle_stfu(long their_node_id, long msg);
+ void handle_splice(long their_node_id, long msg);
+ void handle_splice_ack(long their_node_id, long msg);
+ void handle_splice_locked(long their_node_id, long msg);
void handle_tx_add_input(long their_node_id, long msg);
void handle_tx_add_output(long their_node_id, long msg);
void handle_tx_remove_input(long their_node_id, long msg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_shutdown")] public static extern void ChannelMessageHandler_handle_shutdown(long _this_arg, long _their_node_id, long _msg);
// void ChannelMessageHandler_handle_closing_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKClosingSigned *NONNULL_PTR msg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_closing_signed")] public static extern void ChannelMessageHandler_handle_closing_signed(long _this_arg, long _their_node_id, long _msg);
+ // void ChannelMessageHandler_handle_stfu LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKStfu *NONNULL_PTR msg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_stfu")] public static extern void ChannelMessageHandler_handle_stfu(long _this_arg, long _their_node_id, long _msg);
+ // void ChannelMessageHandler_handle_splice LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKSplice *NONNULL_PTR msg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_splice")] public static extern void ChannelMessageHandler_handle_splice(long _this_arg, long _their_node_id, long _msg);
+ // void ChannelMessageHandler_handle_splice_ack LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKSpliceAck *NONNULL_PTR msg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_splice_ack")] public static extern void ChannelMessageHandler_handle_splice_ack(long _this_arg, long _their_node_id, long _msg);
+ // void ChannelMessageHandler_handle_splice_locked LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKSpliceLocked *NONNULL_PTR msg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_splice_locked")] public static extern void ChannelMessageHandler_handle_splice_locked(long _this_arg, long _their_node_id, long _msg);
// void ChannelMessageHandler_handle_tx_add_input LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKTxAddInput *NONNULL_PTR msg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMessageHandler_handle_tx_add_input")] public static extern void ChannelMessageHandler_handle_tx_add_input(long _this_arg, long _their_node_id, long _msg);
// void ChannelMessageHandler_handle_tx_add_output LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKTxAddOutput *NONNULL_PTR msg
// LDKInitFeatures RoutingMessageHandler_provided_init_features LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RoutingMessageHandler_provided_init_features")] public static extern long RoutingMessageHandler_provided_init_features(long _this_arg, long _their_node_id);
public interface LDKOnionMessageHandler {
+ long get_and_clear_connections_needed();
void handle_onion_message(long peer_node_id, long msg);
long next_onion_message_for_peer(long peer_node_id);
long peer_connected(long their_node_id, long init, bool inbound);
void peer_disconnected(long their_node_id);
+ void timer_tick_occurred();
long provided_node_features();
long provided_init_features(long their_node_id);
}
ret[1] = i;
return ret;
}
+ // LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ OnionMessageHandler_get_and_clear_connections_needed LDKOnionMessageHandler *NONNULL_PTR this_arg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_get_and_clear_connections_needed")] public static extern long OnionMessageHandler_get_and_clear_connections_needed(long _this_arg);
// void OnionMessageHandler_handle_onion_message LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey peer_node_id, const struct LDKOnionMessage *NONNULL_PTR msg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_handle_onion_message")] public static extern void OnionMessageHandler_handle_onion_message(long _this_arg, long _peer_node_id, long _msg);
// LDKOnionMessage OnionMessageHandler_next_onion_message_for_peer LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey peer_node_id
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_peer_connected")] public static extern long OnionMessageHandler_peer_connected(long _this_arg, long _their_node_id, long _init, bool _inbound);
// void OnionMessageHandler_peer_disconnected LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_peer_disconnected")] public static extern void OnionMessageHandler_peer_disconnected(long _this_arg, long _their_node_id);
+ // void OnionMessageHandler_timer_tick_occurred LDKOnionMessageHandler *NONNULL_PTR this_arg
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_timer_tick_occurred")] public static extern void OnionMessageHandler_timer_tick_occurred(long _this_arg);
// LDKNodeFeatures OnionMessageHandler_provided_node_features LDKOnionMessageHandler *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_provided_node_features")] public static extern long OnionMessageHandler_provided_node_features(long _this_arg);
// LDKInitFeatures OnionMessageHandler_provided_init_features LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
}
// LDKCVec_u8Z Score_write LDKScore *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Score_write")] public static extern long Score_write(long _this_arg);
- public interface LDKMessageRouter {
- long find_path(long sender, long peers, long destination);
- }
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKMessageRouter_new")] public static extern long LDKMessageRouter_new_native(long impl_idx);
- public static long[] LDKMessageRouter_new(LDKMessageRouter impl) {
- long new_obj_idx = js_objs.Count;
- int i = 0;
- for (; i < js_objs.Count; i++) {
- if (js_objs[i] == null || !js_objs[i].IsAlive) { new_obj_idx = i; break; }
- }
- if (i == js_objs.Count) {
- js_objs.Add(new WeakReference(impl));
- } else {
- js_objs[i] = new WeakReference(impl);
- }
- long[] ret = new long[2];
- ret[0] = LDKMessageRouter_new_native(i);
- ret[1] = i;
- return ret;
- }
- // LDKCResult_OnionMessagePathNoneZ MessageRouter_find_path LDKMessageRouter *NONNULL_PTR this_arg, struct LDKPublicKey sender, struct LDKCVec_PublicKeyZ peers, struct LDKDestination destination
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageRouter_find_path")] public static extern long MessageRouter_find_path(long _this_arg, long _sender, long _peers, long _destination);
public interface LDKCoinSelectionSource {
long select_confirmed_utxos(long claim_id, long must_spend, long must_pay_to, int target_feerate_sat_per_1000_weight);
- long sign_tx(long tx);
+ long sign_psbt(long psbt);
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKCoinSelectionSource_new")] public static extern long LDKCoinSelectionSource_new_native(long impl_idx);
public static long[] LDKCoinSelectionSource_new(LDKCoinSelectionSource impl) {
}
// LDKCResult_CoinSelectionNoneZ CoinSelectionSource_select_confirmed_utxos LDKCoinSelectionSource *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes claim_id, struct LDKCVec_InputZ must_spend, struct LDKCVec_TxOutZ must_pay_to, uint32_t target_feerate_sat_per_1000_weight
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CoinSelectionSource_select_confirmed_utxos")] public static extern long CoinSelectionSource_select_confirmed_utxos(long _this_arg, long _claim_id, long _must_spend, long _must_pay_to, int _target_feerate_sat_per_1000_weight);
- // LDKCResult_TransactionNoneZ CoinSelectionSource_sign_tx LDKCoinSelectionSource *NONNULL_PTR this_arg, struct LDKTransaction tx
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CoinSelectionSource_sign_tx")] public static extern long CoinSelectionSource_sign_tx(long _this_arg, long _tx);
+ // LDKCResult_TransactionNoneZ CoinSelectionSource_sign_psbt LDKCoinSelectionSource *NONNULL_PTR this_arg, struct LDKCVec_u8Z psbt
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CoinSelectionSource_sign_psbt")] public static extern long CoinSelectionSource_sign_psbt(long _this_arg, long _psbt);
public interface LDKWalletSource {
long list_confirmed_utxos();
long get_change_script();
- long sign_tx(long tx);
+ long sign_psbt(long psbt);
}
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKWalletSource_new")] public static extern long LDKWalletSource_new_native(long impl_idx);
public static long[] LDKWalletSource_new(LDKWalletSource impl) {
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WalletSource_list_confirmed_utxos")] public static extern long WalletSource_list_confirmed_utxos(long _this_arg);
// LDKCResult_CVec_u8ZNoneZ WalletSource_get_change_script LDKWalletSource *NONNULL_PTR this_arg
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WalletSource_get_change_script")] public static extern long WalletSource_get_change_script(long _this_arg);
- // LDKCResult_TransactionNoneZ WalletSource_sign_tx LDKWalletSource *NONNULL_PTR this_arg, struct LDKTransaction tx
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WalletSource_sign_tx")] public static extern long WalletSource_sign_tx(long _this_arg, long _tx);
+ // LDKCResult_TransactionNoneZ WalletSource_sign_psbt LDKWalletSource *NONNULL_PTR this_arg, struct LDKCVec_u8Z psbt
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WalletSource_sign_psbt")] public static extern long WalletSource_sign_psbt(long _this_arg, long _psbt);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKGossipSync_ty_from_ptr")] public static extern long LDKGossipSync_ty_from_ptr(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKGossipSync_P2P_get_p2p")] public static extern long LDKGossipSync_P2P_get_p2p(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LDKGossipSync_Rapid_get_rapid")] public static extern long LDKGossipSync_Rapid_get_rapid(long ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_U128_le_bytes")] public static extern long U128_le_bytes(long _val);
// struct LDKU128 U128_new(struct LDKSixteenBytes le_bytes);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_U128_new")] public static extern long U128_new(long _le_bytes);
+ // struct LDKWitnessProgram WitnessProgram_new(struct LDKWitnessVersion version, struct LDKCVec_u8Z program);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WitnessProgram_new")] public static extern long WitnessProgram_new(byte _version, long _program);
+ // struct LDKWitnessVersion WitnessProgram_get_version(const struct LDKWitnessProgram *NONNULL_PTR prog);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WitnessProgram_get_version")] public static extern byte WitnessProgram_get_version(long _prog);
+ // struct LDKu8slice WitnessProgram_get_program(const struct LDKWitnessProgram *NONNULL_PTR prog);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WitnessProgram_get_program")] public static extern long WitnessProgram_get_program(long _prog);
+ // uint64_t WitnessProgram_clone_ptr(LDKWitnessProgram *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WitnessProgram_clone_ptr")] public static extern long WitnessProgram_clone_ptr(long _arg);
+ // struct LDKWitnessProgram WitnessProgram_clone(const struct LDKWitnessProgram *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WitnessProgram_clone")] public static extern long WitnessProgram_clone(long _orig);
+ // void WitnessProgram_free(struct LDKWitnessProgram o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WitnessProgram_free")] public static extern void WitnessProgram_free(long _o);
// struct LDKBigEndianScalar BigEndianScalar_new(struct LDKThirtyTwoBytes big_endian_bytes);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_BigEndianScalar_new")] public static extern long BigEndianScalar_new(long _big_endian_bytes);
// uint64_t Bech32Error_clone_ptr(LDKBech32Error *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Transaction_free")] public static extern void Transaction_free(long __res);
// void Witness_free(struct LDKWitness _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Witness_free")] public static extern void Witness_free(long __res);
- // void TxIn_free(struct LDKTxIn _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_free")] public static extern void TxIn_free(long __res);
// struct LDKTxIn TxIn_new(struct LDKWitness witness, struct LDKCVec_u8Z script_sig, uint32_t sequence, struct LDKThirtyTwoBytes previous_txid, uint32_t previous_vout);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_new")] public static extern long TxIn_new(long _witness, long _script_sig, int _sequence, long _previous_txid, int _previous_vout);
+ // struct LDKWitness TxIn_get_witness(const struct LDKTxIn *NONNULL_PTR txin);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_witness")] public static extern long TxIn_get_witness(long _txin);
+ // struct LDKu8slice TxIn_get_script_sig(const struct LDKTxIn *NONNULL_PTR txin);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_script_sig")] public static extern long TxIn_get_script_sig(long _txin);
+ // uint32_t TxIn_get_sequence(const struct LDKTxIn *NONNULL_PTR txin);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_sequence")] public static extern int TxIn_get_sequence(long _txin);
+ // struct LDKThirtyTwoBytes TxIn_get_previous_txid(const struct LDKTxIn *NONNULL_PTR txin);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_previous_txid")] public static extern long TxIn_get_previous_txid(long _txin);
+ // uint32_t TxIn_get_previous_vout(const struct LDKTxIn *NONNULL_PTR txin);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_get_previous_vout")] public static extern int TxIn_get_previous_vout(long _txin);
+ // void TxIn_free(struct LDKTxIn _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxIn_free")] public static extern void TxIn_free(long __res);
// struct LDKTxOut TxOut_new(struct LDKCVec_u8Z script_pubkey, uint64_t value);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxOut_new")] public static extern long TxOut_new(long _script_pubkey, long _value);
+ // struct LDKu8slice TxOut_get_script_pubkey(const struct LDKTxOut *NONNULL_PTR txout);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxOut_get_script_pubkey")] public static extern long TxOut_get_script_pubkey(long _txout);
+ // uint64_t TxOut_get_value(const struct LDKTxOut *NONNULL_PTR txout);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxOut_get_value")] public static extern long TxOut_get_value(long _txout);
// void TxOut_free(struct LDKTxOut _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxOut_free")] public static extern void TxOut_free(long __res);
// uint64_t TxOut_clone_ptr(LDKTxOut *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_u32Z_clone_ptr")] public static extern long COption_u32Z_clone_ptr(long _arg);
// struct LDKCOption_u32Z COption_u32Z_clone(const struct LDKCOption_u32Z *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_u32Z_clone")] public static extern long COption_u32Z_clone(long _orig);
- // uint64_t C2Tuple_CVec_u8ZusizeZ_clone_ptr(LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8ZusizeZ_clone_ptr")] public static extern long C2Tuple_CVec_u8ZusizeZ_clone_ptr(long _arg);
- // struct LDKC2Tuple_CVec_u8ZusizeZ C2Tuple_CVec_u8ZusizeZ_clone(const struct LDKC2Tuple_CVec_u8ZusizeZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8ZusizeZ_clone")] public static extern long C2Tuple_CVec_u8ZusizeZ_clone(long _orig);
- // struct LDKC2Tuple_CVec_u8ZusizeZ C2Tuple_CVec_u8ZusizeZ_new(struct LDKCVec_u8Z a, uintptr_t b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8ZusizeZ_new")] public static extern long C2Tuple_CVec_u8ZusizeZ_new(long _a, long _b);
- // void C2Tuple_CVec_u8ZusizeZ_free(struct LDKC2Tuple_CVec_u8ZusizeZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8ZusizeZ_free")] public static extern void C2Tuple_CVec_u8ZusizeZ_free(long __res);
- // struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(struct LDKC2Tuple_CVec_u8ZusizeZ o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok")] public static extern long CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(long _o);
- // struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err")] public static extern long CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err();
- // bool CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(const struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok")] public static extern bool CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(long _o);
- // void CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free")] public static extern void CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(long __res);
- // uint64_t CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr")] public static extern long CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(long _arg);
- // struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(const struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone")] public static extern long CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(long _orig);
+ // uint64_t C2Tuple_CVec_u8Zu64Z_clone_ptr(LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8Zu64Z_clone_ptr")] public static extern long C2Tuple_CVec_u8Zu64Z_clone_ptr(long _arg);
+ // struct LDKC2Tuple_CVec_u8Zu64Z C2Tuple_CVec_u8Zu64Z_clone(const struct LDKC2Tuple_CVec_u8Zu64Z *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8Zu64Z_clone")] public static extern long C2Tuple_CVec_u8Zu64Z_clone(long _orig);
+ // struct LDKC2Tuple_CVec_u8Zu64Z C2Tuple_CVec_u8Zu64Z_new(struct LDKCVec_u8Z a, uint64_t b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8Zu64Z_new")] public static extern long C2Tuple_CVec_u8Zu64Z_new(long _a, long _b);
+ // void C2Tuple_CVec_u8Zu64Z_free(struct LDKC2Tuple_CVec_u8Zu64Z _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_CVec_u8Zu64Z_free")] public static extern void C2Tuple_CVec_u8Zu64Z_free(long __res);
+ // struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(struct LDKC2Tuple_CVec_u8Zu64Z o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok")] public static extern long CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(long _o);
+ // struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err")] public static extern long CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err();
+ // bool CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(const struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok")] public static extern bool CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(long _o);
+ // void CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free")] public static extern void CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(long __res);
+ // uint64_t CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr")] public static extern long CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(const struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone")] public static extern long CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(long _orig);
// struct LDKCResult_ChannelDerivationParametersDecodeErrorZ CResult_ChannelDerivationParametersDecodeErrorZ_ok(struct LDKChannelDerivationParameters o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ChannelDerivationParametersDecodeErrorZ_ok")] public static extern long CResult_ChannelDerivationParametersDecodeErrorZ_ok(long _o);
// struct LDKCResult_ChannelDerivationParametersDecodeErrorZ CResult_ChannelDerivationParametersDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneNoneZ_clone_ptr")] public static extern long CResult_NoneNoneZ_clone_ptr(long _arg);
// struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_clone(const struct LDKCResult_NoneNoneZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneNoneZ_clone")] public static extern long CResult_NoneNoneZ_clone(long _orig);
- // void CVec_ECDSASignatureZ_free(struct LDKCVec_ECDSASignatureZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_ECDSASignatureZ_free")] public static extern void CVec_ECDSASignatureZ_free(long __res);
- // uint64_t C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(long _arg);
- // struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(const struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(long _orig);
- // struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(struct LDKECDSASignature a, struct LDKCVec_ECDSASignatureZ b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(long _a, long _b);
- // void C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free")] public static extern void C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(long __res);
- // struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(long _o);
- // struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err();
- // bool CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(const struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok")] public static extern bool CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(long _o);
- // void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free")] public static extern void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(long __res);
- // uint64_t CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(long _arg);
- // struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(const struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(long _orig);
- // struct LDKCResult_ECDSASignatureNoneZ CResult_ECDSASignatureNoneZ_ok(struct LDKECDSASignature o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_ok")] public static extern long CResult_ECDSASignatureNoneZ_ok(long _o);
- // struct LDKCResult_ECDSASignatureNoneZ CResult_ECDSASignatureNoneZ_err(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_err")] public static extern long CResult_ECDSASignatureNoneZ_err();
- // bool CResult_ECDSASignatureNoneZ_is_ok(const struct LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_is_ok")] public static extern bool CResult_ECDSASignatureNoneZ_is_ok(long _o);
- // void CResult_ECDSASignatureNoneZ_free(struct LDKCResult_ECDSASignatureNoneZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_free")] public static extern void CResult_ECDSASignatureNoneZ_free(long __res);
- // uint64_t CResult_ECDSASignatureNoneZ_clone_ptr(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_clone_ptr")] public static extern long CResult_ECDSASignatureNoneZ_clone_ptr(long _arg);
- // struct LDKCResult_ECDSASignatureNoneZ CResult_ECDSASignatureNoneZ_clone(const struct LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_clone")] public static extern long CResult_ECDSASignatureNoneZ_clone(long _orig);
// struct LDKCResult_PublicKeyNoneZ CResult_PublicKeyNoneZ_ok(struct LDKPublicKey o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PublicKeyNoneZ_ok")] public static extern long CResult_PublicKeyNoneZ_ok(long _o);
// struct LDKCResult_PublicKeyNoneZ CResult_PublicKeyNoneZ_err(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SchnorrSignatureNoneZ_clone_ptr")] public static extern long CResult_SchnorrSignatureNoneZ_clone_ptr(long _arg);
// struct LDKCResult_SchnorrSignatureNoneZ CResult_SchnorrSignatureNoneZ_clone(const struct LDKCResult_SchnorrSignatureNoneZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SchnorrSignatureNoneZ_clone")] public static extern long CResult_SchnorrSignatureNoneZ_clone(long _orig);
+ // struct LDKCResult_ECDSASignatureNoneZ CResult_ECDSASignatureNoneZ_ok(struct LDKECDSASignature o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_ok")] public static extern long CResult_ECDSASignatureNoneZ_ok(long _o);
+ // struct LDKCResult_ECDSASignatureNoneZ CResult_ECDSASignatureNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_err")] public static extern long CResult_ECDSASignatureNoneZ_err();
+ // bool CResult_ECDSASignatureNoneZ_is_ok(const struct LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_is_ok")] public static extern bool CResult_ECDSASignatureNoneZ_is_ok(long _o);
+ // void CResult_ECDSASignatureNoneZ_free(struct LDKCResult_ECDSASignatureNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_free")] public static extern void CResult_ECDSASignatureNoneZ_free(long __res);
+ // uint64_t CResult_ECDSASignatureNoneZ_clone_ptr(LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_clone_ptr")] public static extern long CResult_ECDSASignatureNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_ECDSASignatureNoneZ CResult_ECDSASignatureNoneZ_clone(const struct LDKCResult_ECDSASignatureNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ECDSASignatureNoneZ_clone")] public static extern long CResult_ECDSASignatureNoneZ_clone(long _orig);
// struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(struct LDKWriteableEcdsaChannelSigner o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok")] public static extern long CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(long _o);
// struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ CResult_WriteableEcdsaChannelSignerDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_boolZ_clone_ptr")] public static extern long COption_boolZ_clone_ptr(long _arg);
// struct LDKCOption_boolZ COption_boolZ_clone(const struct LDKCOption_boolZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_boolZ_clone")] public static extern long COption_boolZ_clone(long _orig);
- // void CVec_CVec_u8ZZ_free(struct LDKCVec_CVec_u8ZZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_CVec_u8ZZ_free")] public static extern void CVec_CVec_u8ZZ_free(long __res);
- // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_ok(struct LDKCVec_CVec_u8ZZ o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_ok")] public static extern long CResult_CVec_CVec_u8ZZNoneZ_ok(long _o);
- // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_err(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_err")] public static extern long CResult_CVec_CVec_u8ZZNoneZ_err();
- // bool CResult_CVec_CVec_u8ZZNoneZ_is_ok(const struct LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_is_ok")] public static extern bool CResult_CVec_CVec_u8ZZNoneZ_is_ok(long _o);
- // void CResult_CVec_CVec_u8ZZNoneZ_free(struct LDKCResult_CVec_CVec_u8ZZNoneZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_free")] public static extern void CResult_CVec_CVec_u8ZZNoneZ_free(long __res);
- // uint64_t CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_clone_ptr")] public static extern long CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(long _arg);
- // struct LDKCResult_CVec_CVec_u8ZZNoneZ CResult_CVec_CVec_u8ZZNoneZ_clone(const struct LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_CVec_u8ZZNoneZ_clone")] public static extern long CResult_CVec_CVec_u8ZZNoneZ_clone(long _orig);
+ // struct LDKCResult_WitnessNoneZ CResult_WitnessNoneZ_ok(struct LDKWitness o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_ok")] public static extern long CResult_WitnessNoneZ_ok(long _o);
+ // struct LDKCResult_WitnessNoneZ CResult_WitnessNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_err")] public static extern long CResult_WitnessNoneZ_err();
+ // bool CResult_WitnessNoneZ_is_ok(const struct LDKCResult_WitnessNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_is_ok")] public static extern bool CResult_WitnessNoneZ_is_ok(long _o);
+ // void CResult_WitnessNoneZ_free(struct LDKCResult_WitnessNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_free")] public static extern void CResult_WitnessNoneZ_free(long __res);
+ // uint64_t CResult_WitnessNoneZ_clone_ptr(LDKCResult_WitnessNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_clone_ptr")] public static extern long CResult_WitnessNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_WitnessNoneZ CResult_WitnessNoneZ_clone(const struct LDKCResult_WitnessNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_WitnessNoneZ_clone")] public static extern long CResult_WitnessNoneZ_clone(long _orig);
+ // void CVec_ECDSASignatureZ_free(struct LDKCVec_ECDSASignatureZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_ECDSASignatureZ_free")] public static extern void CVec_ECDSASignatureZ_free(long __res);
+ // uint64_t C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone_ptr(long _arg);
+ // struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(const struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_clone(long _orig);
+ // struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(struct LDKECDSASignature a, struct LDKCVec_ECDSASignatureZ b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new")] public static extern long C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_new(long _a, long _b);
+ // void C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free")] public static extern void C2Tuple_ECDSASignatureCVec_ECDSASignatureZZ_free(long __res);
+ // struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(struct LDKC2Tuple_ECDSASignatureCVec_ECDSASignatureZZ o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_ok(long _o);
+ // struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_err();
+ // bool CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(const struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok")] public static extern bool CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_is_ok(long _o);
+ // void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free")] public static extern void CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_free(long __res);
+ // uint64_t CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(const struct LDKCResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone")] public static extern long CResult_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ_clone(long _orig);
// struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_ok(struct LDKInMemorySigner o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InMemorySignerDecodeErrorZ_ok")] public static extern long CResult_InMemorySignerDecodeErrorZ_ok(long _o);
// struct LDKCResult_InMemorySignerDecodeErrorZ CResult_InMemorySignerDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteLightningErrorZ_clone_ptr")] public static extern long CResult_RouteLightningErrorZ_clone_ptr(long _arg);
// struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_clone(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteLightningErrorZ_clone")] public static extern long CResult_RouteLightningErrorZ_clone(long _orig);
+ // uint64_t C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(long _arg);
+ // struct LDKC2Tuple_BlindedPayInfoBlindedPathZ C2Tuple_BlindedPayInfoBlindedPathZ_clone(const struct LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_clone(long _orig);
+ // struct LDKC2Tuple_BlindedPayInfoBlindedPathZ C2Tuple_BlindedPayInfoBlindedPathZ_new(struct LDKBlindedPayInfo a, struct LDKBlindedPath b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_new")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_new(long _a, long _b);
+ // void C2Tuple_BlindedPayInfoBlindedPathZ_free(struct LDKC2Tuple_BlindedPayInfoBlindedPathZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_free")] public static extern void C2Tuple_BlindedPayInfoBlindedPathZ_free(long __res);
+ // void CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(struct LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free")] public static extern void CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(long __res);
+ // struct LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(struct LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok")] public static extern long CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(long _o);
+ // struct LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err")] public static extern long CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err();
+ // bool CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(const struct LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok")] public static extern bool CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(long _o);
+ // void CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(struct LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free")] public static extern void CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(long __res);
+ // uint64_t CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr")] public static extern long CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(const struct LDKCResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone")] public static extern long CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(long _orig);
+ // void CVec_PublicKeyZ_free(struct LDKCVec_PublicKeyZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_PublicKeyZ_free")] public static extern void CVec_PublicKeyZ_free(long __res);
+ // struct LDKCResult_OnionMessagePathNoneZ CResult_OnionMessagePathNoneZ_ok(struct LDKOnionMessagePath o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_ok")] public static extern long CResult_OnionMessagePathNoneZ_ok(long _o);
+ // struct LDKCResult_OnionMessagePathNoneZ CResult_OnionMessagePathNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_err")] public static extern long CResult_OnionMessagePathNoneZ_err();
+ // bool CResult_OnionMessagePathNoneZ_is_ok(const struct LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_is_ok")] public static extern bool CResult_OnionMessagePathNoneZ_is_ok(long _o);
+ // void CResult_OnionMessagePathNoneZ_free(struct LDKCResult_OnionMessagePathNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_free")] public static extern void CResult_OnionMessagePathNoneZ_free(long __res);
+ // uint64_t CResult_OnionMessagePathNoneZ_clone_ptr(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_clone_ptr")] public static extern long CResult_OnionMessagePathNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_OnionMessagePathNoneZ CResult_OnionMessagePathNoneZ_clone(const struct LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_clone")] public static extern long CResult_OnionMessagePathNoneZ_clone(long _orig);
+ // struct LDKCResult_CVec_BlindedPathZNoneZ CResult_CVec_BlindedPathZNoneZ_ok(struct LDKCVec_BlindedPathZ o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_ok")] public static extern long CResult_CVec_BlindedPathZNoneZ_ok(long _o);
+ // struct LDKCResult_CVec_BlindedPathZNoneZ CResult_CVec_BlindedPathZNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_err")] public static extern long CResult_CVec_BlindedPathZNoneZ_err();
+ // bool CResult_CVec_BlindedPathZNoneZ_is_ok(const struct LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_is_ok")] public static extern bool CResult_CVec_BlindedPathZNoneZ_is_ok(long _o);
+ // void CResult_CVec_BlindedPathZNoneZ_free(struct LDKCResult_CVec_BlindedPathZNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_free")] public static extern void CResult_CVec_BlindedPathZNoneZ_free(long __res);
+ // uint64_t CResult_CVec_BlindedPathZNoneZ_clone_ptr(LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_clone_ptr")] public static extern long CResult_CVec_BlindedPathZNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_CVec_BlindedPathZNoneZ CResult_CVec_BlindedPathZNoneZ_clone(const struct LDKCResult_CVec_BlindedPathZNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_BlindedPathZNoneZ_clone")] public static extern long CResult_CVec_BlindedPathZNoneZ_clone(long _orig);
// struct LDKCResult_InFlightHtlcsDecodeErrorZ CResult_InFlightHtlcsDecodeErrorZ_ok(struct LDKInFlightHtlcs o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InFlightHtlcsDecodeErrorZ_ok")] public static extern long CResult_InFlightHtlcsDecodeErrorZ_ok(long _o);
// struct LDKCResult_InFlightHtlcsDecodeErrorZ CResult_InFlightHtlcsDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentParametersDecodeErrorZ_clone_ptr")] public static extern long CResult_PaymentParametersDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_PaymentParametersDecodeErrorZ CResult_PaymentParametersDecodeErrorZ_clone(const struct LDKCResult_PaymentParametersDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentParametersDecodeErrorZ_clone")] public static extern long CResult_PaymentParametersDecodeErrorZ_clone(long _orig);
- // uint64_t C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_clone_ptr(long _arg);
- // struct LDKC2Tuple_BlindedPayInfoBlindedPathZ C2Tuple_BlindedPayInfoBlindedPathZ_clone(const struct LDKC2Tuple_BlindedPayInfoBlindedPathZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_clone")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_clone(long _orig);
- // struct LDKC2Tuple_BlindedPayInfoBlindedPathZ C2Tuple_BlindedPayInfoBlindedPathZ_new(struct LDKBlindedPayInfo a, struct LDKBlindedPath b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_new")] public static extern long C2Tuple_BlindedPayInfoBlindedPathZ_new(long _a, long _b);
- // void C2Tuple_BlindedPayInfoBlindedPathZ_free(struct LDKC2Tuple_BlindedPayInfoBlindedPathZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_BlindedPayInfoBlindedPathZ_free")] public static extern void C2Tuple_BlindedPayInfoBlindedPathZ_free(long __res);
- // void CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(struct LDKCVec_C2Tuple_BlindedPayInfoBlindedPathZZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free")] public static extern void CVec_C2Tuple_BlindedPayInfoBlindedPathZZ_free(long __res);
// void CVec_RouteHintZ_free(struct LDKCVec_RouteHintZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_RouteHintZ_free")] public static extern void CVec_RouteHintZ_free(long __res);
// void CVec_RouteHintHopZ_free(struct LDKCVec_RouteHintHopZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteHintHopDecodeErrorZ_clone_ptr")] public static extern long CResult_RouteHintHopDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_RouteHintHopDecodeErrorZ CResult_RouteHintHopDecodeErrorZ_clone(const struct LDKCResult_RouteHintHopDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RouteHintHopDecodeErrorZ_clone")] public static extern long CResult_RouteHintHopDecodeErrorZ_clone(long _orig);
- // void CVec_PublicKeyZ_free(struct LDKCVec_PublicKeyZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_PublicKeyZ_free")] public static extern void CVec_PublicKeyZ_free(long __res);
// struct LDKCResult_FixedPenaltyScorerDecodeErrorZ CResult_FixedPenaltyScorerDecodeErrorZ_ok(struct LDKFixedPenaltyScorer o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FixedPenaltyScorerDecodeErrorZ_ok")] public static extern long CResult_FixedPenaltyScorerDecodeErrorZ_ok(long _o);
// struct LDKCResult_FixedPenaltyScorerDecodeErrorZ CResult_FixedPenaltyScorerDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_usizeTransactionZ_free")] public static extern void C2Tuple_usizeTransactionZ_free(long __res);
// void CVec_C2Tuple_usizeTransactionZZ_free(struct LDKCVec_C2Tuple_usizeTransactionZZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C2Tuple_usizeTransactionZZ_free")] public static extern void CVec_C2Tuple_usizeTransactionZZ_free(long __res);
- // uint64_t C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr")] public static extern long C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(long _arg);
- // struct LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(const struct LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone")] public static extern long C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(long _orig);
- // struct LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(struct LDKThirtyTwoBytes a, struct LDKCOption_ThirtyTwoBytesZ b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new")] public static extern long C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(long _a, long _b);
- // void C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(struct LDKC2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free")] public static extern void C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(long __res);
- // void CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free(struct LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free")] public static extern void CVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ_free(long __res);
+ // uint64_t C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr")] public static extern long C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(long _arg);
+ // struct LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(const struct LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone")] public static extern long C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(long _orig);
+ // struct LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(struct LDKThirtyTwoBytes a, uint32_t b, struct LDKCOption_ThirtyTwoBytesZ c);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new")] public static extern long C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(long _a, int _b, long _c);
+ // void C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(struct LDKC3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free")] public static extern void C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(long __res);
+ // void CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free(struct LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free")] public static extern void CVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ_free(long __res);
// struct LDKCResult_ChannelMonitorUpdateStatusNoneZ CResult_ChannelMonitorUpdateStatusNoneZ_ok(enum LDKChannelMonitorUpdateStatus o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ChannelMonitorUpdateStatusNoneZ_ok")] public static extern long CResult_ChannelMonitorUpdateStatusNoneZ_ok(ChannelMonitorUpdateStatus _o);
// struct LDKCResult_ChannelMonitorUpdateStatusNoneZ CResult_ChannelMonitorUpdateStatusNoneZ_err(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_CVec_SocketAddressZZ_clone_ptr")] public static extern long COption_CVec_SocketAddressZZ_clone_ptr(long _arg);
// struct LDKCOption_CVec_SocketAddressZZ COption_CVec_SocketAddressZZ_clone(const struct LDKCOption_CVec_SocketAddressZZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_CVec_SocketAddressZZ_clone")] public static extern long COption_CVec_SocketAddressZZ_clone(long _orig);
+ // struct LDKCResult_PendingHTLCInfoInboundHTLCErrZ CResult_PendingHTLCInfoInboundHTLCErrZ_ok(struct LDKPendingHTLCInfo o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_ok")] public static extern long CResult_PendingHTLCInfoInboundHTLCErrZ_ok(long _o);
+ // struct LDKCResult_PendingHTLCInfoInboundHTLCErrZ CResult_PendingHTLCInfoInboundHTLCErrZ_err(struct LDKInboundHTLCErr e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_err")] public static extern long CResult_PendingHTLCInfoInboundHTLCErrZ_err(long _e);
+ // bool CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(const struct LDKCResult_PendingHTLCInfoInboundHTLCErrZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok")] public static extern bool CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(long _o);
+ // void CResult_PendingHTLCInfoInboundHTLCErrZ_free(struct LDKCResult_PendingHTLCInfoInboundHTLCErrZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoInboundHTLCErrZ_free")] public static extern void CResult_PendingHTLCInfoInboundHTLCErrZ_free(long __res);
// void CVec_HTLCOutputInCommitmentZ_free(struct LDKCVec_HTLCOutputInCommitmentZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_HTLCOutputInCommitmentZ_free")] public static extern void CVec_HTLCOutputInCommitmentZ_free(long __res);
// void CVec_HTLCDescriptorZ_free(struct LDKCVec_HTLCDescriptorZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PhantomRouteHintsDecodeErrorZ_clone_ptr")] public static extern long CResult_PhantomRouteHintsDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_PhantomRouteHintsDecodeErrorZ CResult_PhantomRouteHintsDecodeErrorZ_clone(const struct LDKCResult_PhantomRouteHintsDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PhantomRouteHintsDecodeErrorZ_clone")] public static extern long CResult_PhantomRouteHintsDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_BlindedForwardDecodeErrorZ CResult_BlindedForwardDecodeErrorZ_ok(struct LDKBlindedForward o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_ok")] public static extern long CResult_BlindedForwardDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_BlindedForwardDecodeErrorZ CResult_BlindedForwardDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_err")] public static extern long CResult_BlindedForwardDecodeErrorZ_err(long _e);
+ // bool CResult_BlindedForwardDecodeErrorZ_is_ok(const struct LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_is_ok")] public static extern bool CResult_BlindedForwardDecodeErrorZ_is_ok(long _o);
+ // void CResult_BlindedForwardDecodeErrorZ_free(struct LDKCResult_BlindedForwardDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_free")] public static extern void CResult_BlindedForwardDecodeErrorZ_free(long __res);
+ // uint64_t CResult_BlindedForwardDecodeErrorZ_clone_ptr(LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_clone_ptr")] public static extern long CResult_BlindedForwardDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_BlindedForwardDecodeErrorZ CResult_BlindedForwardDecodeErrorZ_clone(const struct LDKCResult_BlindedForwardDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedForwardDecodeErrorZ_clone")] public static extern long CResult_BlindedForwardDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_PendingHTLCRoutingDecodeErrorZ CResult_PendingHTLCRoutingDecodeErrorZ_ok(struct LDKPendingHTLCRouting o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_ok")] public static extern long CResult_PendingHTLCRoutingDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_PendingHTLCRoutingDecodeErrorZ CResult_PendingHTLCRoutingDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_err")] public static extern long CResult_PendingHTLCRoutingDecodeErrorZ_err(long _e);
+ // bool CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(const struct LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_is_ok")] public static extern bool CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(long _o);
+ // void CResult_PendingHTLCRoutingDecodeErrorZ_free(struct LDKCResult_PendingHTLCRoutingDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_free")] public static extern void CResult_PendingHTLCRoutingDecodeErrorZ_free(long __res);
+ // uint64_t CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr")] public static extern long CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_PendingHTLCRoutingDecodeErrorZ CResult_PendingHTLCRoutingDecodeErrorZ_clone(const struct LDKCResult_PendingHTLCRoutingDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCRoutingDecodeErrorZ_clone")] public static extern long CResult_PendingHTLCRoutingDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_PendingHTLCInfoDecodeErrorZ CResult_PendingHTLCInfoDecodeErrorZ_ok(struct LDKPendingHTLCInfo o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_ok")] public static extern long CResult_PendingHTLCInfoDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_PendingHTLCInfoDecodeErrorZ CResult_PendingHTLCInfoDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_err")] public static extern long CResult_PendingHTLCInfoDecodeErrorZ_err(long _e);
+ // bool CResult_PendingHTLCInfoDecodeErrorZ_is_ok(const struct LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_is_ok")] public static extern bool CResult_PendingHTLCInfoDecodeErrorZ_is_ok(long _o);
+ // void CResult_PendingHTLCInfoDecodeErrorZ_free(struct LDKCResult_PendingHTLCInfoDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_free")] public static extern void CResult_PendingHTLCInfoDecodeErrorZ_free(long __res);
+ // uint64_t CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr")] public static extern long CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_PendingHTLCInfoDecodeErrorZ CResult_PendingHTLCInfoDecodeErrorZ_clone(const struct LDKCResult_PendingHTLCInfoDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PendingHTLCInfoDecodeErrorZ_clone")] public static extern long CResult_PendingHTLCInfoDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_BlindedFailureDecodeErrorZ CResult_BlindedFailureDecodeErrorZ_ok(enum LDKBlindedFailure o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_ok")] public static extern long CResult_BlindedFailureDecodeErrorZ_ok(BlindedFailure _o);
+ // struct LDKCResult_BlindedFailureDecodeErrorZ CResult_BlindedFailureDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_err")] public static extern long CResult_BlindedFailureDecodeErrorZ_err(long _e);
+ // bool CResult_BlindedFailureDecodeErrorZ_is_ok(const struct LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_is_ok")] public static extern bool CResult_BlindedFailureDecodeErrorZ_is_ok(long _o);
+ // void CResult_BlindedFailureDecodeErrorZ_free(struct LDKCResult_BlindedFailureDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_free")] public static extern void CResult_BlindedFailureDecodeErrorZ_free(long __res);
+ // uint64_t CResult_BlindedFailureDecodeErrorZ_clone_ptr(LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_clone_ptr")] public static extern long CResult_BlindedFailureDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_BlindedFailureDecodeErrorZ CResult_BlindedFailureDecodeErrorZ_clone(const struct LDKCResult_BlindedFailureDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedFailureDecodeErrorZ_clone")] public static extern long CResult_BlindedFailureDecodeErrorZ_clone(long _orig);
// struct LDKCResult_ChannelShutdownStateDecodeErrorZ CResult_ChannelShutdownStateDecodeErrorZ_ok(enum LDKChannelShutdownState o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ChannelShutdownStateDecodeErrorZ_ok")] public static extern long CResult_ChannelShutdownStateDecodeErrorZ_ok(ChannelShutdownState _o);
// struct LDKCResult_ChannelShutdownStateDecodeErrorZ CResult_ChannelShutdownStateDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyTypeZ_free")] public static extern void C2Tuple_PublicKeyTypeZ_free(long __res);
// void CVec_C2Tuple_PublicKeyTypeZZ_free(struct LDKCVec_C2Tuple_PublicKeyTypeZZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C2Tuple_PublicKeyTypeZZ_free")] public static extern void CVec_C2Tuple_PublicKeyTypeZZ_free(long __res);
+ // uint64_t C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr")] public static extern long C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(long _arg);
+ // struct LDKC2Tuple_PublicKeyCVec_SocketAddressZZ C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(const struct LDKC2Tuple_PublicKeyCVec_SocketAddressZZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_clone")] public static extern long C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(long _orig);
+ // struct LDKC2Tuple_PublicKeyCVec_SocketAddressZZ C2Tuple_PublicKeyCVec_SocketAddressZZ_new(struct LDKPublicKey a, struct LDKCVec_SocketAddressZ b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_new")] public static extern long C2Tuple_PublicKeyCVec_SocketAddressZZ_new(long _a, long _b);
+ // void C2Tuple_PublicKeyCVec_SocketAddressZZ_free(struct LDKC2Tuple_PublicKeyCVec_SocketAddressZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyCVec_SocketAddressZZ_free")] public static extern void C2Tuple_PublicKeyCVec_SocketAddressZZ_free(long __res);
+ // void CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free(struct LDKCVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free")] public static extern void CVec_C2Tuple_PublicKeyCVec_SocketAddressZZZ_free(long __res);
// struct LDKCOption_OnionMessageContentsZ COption_OnionMessageContentsZ_some(struct LDKOnionMessageContents o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_OnionMessageContentsZ_some")] public static extern long COption_OnionMessageContentsZ_some(long _o);
// struct LDKCOption_OnionMessageContentsZ COption_OnionMessageContentsZ_none(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_AcceptChannelV2DecodeErrorZ_clone_ptr")] public static extern long CResult_AcceptChannelV2DecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_AcceptChannelV2DecodeErrorZ CResult_AcceptChannelV2DecodeErrorZ_clone(const struct LDKCResult_AcceptChannelV2DecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_AcceptChannelV2DecodeErrorZ_clone")] public static extern long CResult_AcceptChannelV2DecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_StfuDecodeErrorZ CResult_StfuDecodeErrorZ_ok(struct LDKStfu o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_ok")] public static extern long CResult_StfuDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_StfuDecodeErrorZ CResult_StfuDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_err")] public static extern long CResult_StfuDecodeErrorZ_err(long _e);
+ // bool CResult_StfuDecodeErrorZ_is_ok(const struct LDKCResult_StfuDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_is_ok")] public static extern bool CResult_StfuDecodeErrorZ_is_ok(long _o);
+ // void CResult_StfuDecodeErrorZ_free(struct LDKCResult_StfuDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_free")] public static extern void CResult_StfuDecodeErrorZ_free(long __res);
+ // uint64_t CResult_StfuDecodeErrorZ_clone_ptr(LDKCResult_StfuDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_clone_ptr")] public static extern long CResult_StfuDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_StfuDecodeErrorZ CResult_StfuDecodeErrorZ_clone(const struct LDKCResult_StfuDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StfuDecodeErrorZ_clone")] public static extern long CResult_StfuDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_SpliceDecodeErrorZ CResult_SpliceDecodeErrorZ_ok(struct LDKSplice o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_ok")] public static extern long CResult_SpliceDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_SpliceDecodeErrorZ CResult_SpliceDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_err")] public static extern long CResult_SpliceDecodeErrorZ_err(long _e);
+ // bool CResult_SpliceDecodeErrorZ_is_ok(const struct LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_is_ok")] public static extern bool CResult_SpliceDecodeErrorZ_is_ok(long _o);
+ // void CResult_SpliceDecodeErrorZ_free(struct LDKCResult_SpliceDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_free")] public static extern void CResult_SpliceDecodeErrorZ_free(long __res);
+ // uint64_t CResult_SpliceDecodeErrorZ_clone_ptr(LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_clone_ptr")] public static extern long CResult_SpliceDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_SpliceDecodeErrorZ CResult_SpliceDecodeErrorZ_clone(const struct LDKCResult_SpliceDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceDecodeErrorZ_clone")] public static extern long CResult_SpliceDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_SpliceAckDecodeErrorZ CResult_SpliceAckDecodeErrorZ_ok(struct LDKSpliceAck o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_ok")] public static extern long CResult_SpliceAckDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_SpliceAckDecodeErrorZ CResult_SpliceAckDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_err")] public static extern long CResult_SpliceAckDecodeErrorZ_err(long _e);
+ // bool CResult_SpliceAckDecodeErrorZ_is_ok(const struct LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_is_ok")] public static extern bool CResult_SpliceAckDecodeErrorZ_is_ok(long _o);
+ // void CResult_SpliceAckDecodeErrorZ_free(struct LDKCResult_SpliceAckDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_free")] public static extern void CResult_SpliceAckDecodeErrorZ_free(long __res);
+ // uint64_t CResult_SpliceAckDecodeErrorZ_clone_ptr(LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_clone_ptr")] public static extern long CResult_SpliceAckDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_SpliceAckDecodeErrorZ CResult_SpliceAckDecodeErrorZ_clone(const struct LDKCResult_SpliceAckDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceAckDecodeErrorZ_clone")] public static extern long CResult_SpliceAckDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_SpliceLockedDecodeErrorZ CResult_SpliceLockedDecodeErrorZ_ok(struct LDKSpliceLocked o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_ok")] public static extern long CResult_SpliceLockedDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_SpliceLockedDecodeErrorZ CResult_SpliceLockedDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_err")] public static extern long CResult_SpliceLockedDecodeErrorZ_err(long _e);
+ // bool CResult_SpliceLockedDecodeErrorZ_is_ok(const struct LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_is_ok")] public static extern bool CResult_SpliceLockedDecodeErrorZ_is_ok(long _o);
+ // void CResult_SpliceLockedDecodeErrorZ_free(struct LDKCResult_SpliceLockedDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_free")] public static extern void CResult_SpliceLockedDecodeErrorZ_free(long __res);
+ // uint64_t CResult_SpliceLockedDecodeErrorZ_clone_ptr(LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_clone_ptr")] public static extern long CResult_SpliceLockedDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_SpliceLockedDecodeErrorZ CResult_SpliceLockedDecodeErrorZ_clone(const struct LDKCResult_SpliceLockedDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SpliceLockedDecodeErrorZ_clone")] public static extern long CResult_SpliceLockedDecodeErrorZ_clone(long _orig);
// struct LDKCResult_TxAddInputDecodeErrorZ CResult_TxAddInputDecodeErrorZ_ok(struct LDKTxAddInput o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_TxAddInputDecodeErrorZ_ok")] public static extern long CResult_TxAddInputDecodeErrorZ_ok(long _o);
// struct LDKCResult_TxAddInputDecodeErrorZ CResult_TxAddInputDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr")] public static extern long CResult_UpdateFulfillHTLCDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ CResult_UpdateFulfillHTLCDecodeErrorZ_clone(const struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UpdateFulfillHTLCDecodeErrorZ_clone")] public static extern long CResult_UpdateFulfillHTLCDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_OnionPacketDecodeErrorZ CResult_OnionPacketDecodeErrorZ_ok(struct LDKOnionPacket o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_ok")] public static extern long CResult_OnionPacketDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_OnionPacketDecodeErrorZ CResult_OnionPacketDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_err")] public static extern long CResult_OnionPacketDecodeErrorZ_err(long _e);
+ // bool CResult_OnionPacketDecodeErrorZ_is_ok(const struct LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_is_ok")] public static extern bool CResult_OnionPacketDecodeErrorZ_is_ok(long _o);
+ // void CResult_OnionPacketDecodeErrorZ_free(struct LDKCResult_OnionPacketDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_free")] public static extern void CResult_OnionPacketDecodeErrorZ_free(long __res);
+ // uint64_t CResult_OnionPacketDecodeErrorZ_clone_ptr(LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_clone_ptr")] public static extern long CResult_OnionPacketDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_OnionPacketDecodeErrorZ CResult_OnionPacketDecodeErrorZ_clone(const struct LDKCResult_OnionPacketDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionPacketDecodeErrorZ_clone")] public static extern long CResult_OnionPacketDecodeErrorZ_clone(long _orig);
// struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_ok(struct LDKUpdateAddHTLC o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UpdateAddHTLCDecodeErrorZ_ok")] public static extern long CResult_UpdateAddHTLCDecodeErrorZ_ok(long _o);
// struct LDKCResult_UpdateAddHTLCDecodeErrorZ CResult_UpdateAddHTLCDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessageDecodeErrorZ_clone_ptr")] public static extern long CResult_OnionMessageDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_OnionMessageDecodeErrorZ CResult_OnionMessageDecodeErrorZ_clone(const struct LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessageDecodeErrorZ_clone")] public static extern long CResult_OnionMessageDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_FinalOnionHopDataDecodeErrorZ CResult_FinalOnionHopDataDecodeErrorZ_ok(struct LDKFinalOnionHopData o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_ok")] public static extern long CResult_FinalOnionHopDataDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_FinalOnionHopDataDecodeErrorZ CResult_FinalOnionHopDataDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_err")] public static extern long CResult_FinalOnionHopDataDecodeErrorZ_err(long _e);
+ // bool CResult_FinalOnionHopDataDecodeErrorZ_is_ok(const struct LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_is_ok")] public static extern bool CResult_FinalOnionHopDataDecodeErrorZ_is_ok(long _o);
+ // void CResult_FinalOnionHopDataDecodeErrorZ_free(struct LDKCResult_FinalOnionHopDataDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_free")] public static extern void CResult_FinalOnionHopDataDecodeErrorZ_free(long __res);
+ // uint64_t CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr")] public static extern long CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_FinalOnionHopDataDecodeErrorZ CResult_FinalOnionHopDataDecodeErrorZ_clone(const struct LDKCResult_FinalOnionHopDataDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_FinalOnionHopDataDecodeErrorZ_clone")] public static extern long CResult_FinalOnionHopDataDecodeErrorZ_clone(long _orig);
// struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_ok(struct LDKPing o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PingDecodeErrorZ_ok")] public static extern long CResult_PingDecodeErrorZ_ok(long _o);
// struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UntrustedStringDecodeErrorZ_clone_ptr")] public static extern long CResult_UntrustedStringDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_UntrustedStringDecodeErrorZ CResult_UntrustedStringDecodeErrorZ_clone(const struct LDKCResult_UntrustedStringDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_UntrustedStringDecodeErrorZ_clone")] public static extern long CResult_UntrustedStringDecodeErrorZ_clone(long _orig);
- // struct LDKCResult_ReceiveTlvsDecodeErrorZ CResult_ReceiveTlvsDecodeErrorZ_ok(struct LDKReceiveTlvs o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_ok")] public static extern long CResult_ReceiveTlvsDecodeErrorZ_ok(long _o);
- // struct LDKCResult_ReceiveTlvsDecodeErrorZ CResult_ReceiveTlvsDecodeErrorZ_err(struct LDKDecodeError e);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_err")] public static extern long CResult_ReceiveTlvsDecodeErrorZ_err(long _e);
- // bool CResult_ReceiveTlvsDecodeErrorZ_is_ok(const struct LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_is_ok")] public static extern bool CResult_ReceiveTlvsDecodeErrorZ_is_ok(long _o);
- // void CResult_ReceiveTlvsDecodeErrorZ_free(struct LDKCResult_ReceiveTlvsDecodeErrorZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_free")] public static extern void CResult_ReceiveTlvsDecodeErrorZ_free(long __res);
- // uint64_t CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_clone_ptr")] public static extern long CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(long _arg);
- // struct LDKCResult_ReceiveTlvsDecodeErrorZ CResult_ReceiveTlvsDecodeErrorZ_clone(const struct LDKCResult_ReceiveTlvsDecodeErrorZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ReceiveTlvsDecodeErrorZ_clone")] public static extern long CResult_ReceiveTlvsDecodeErrorZ_clone(long _orig);
+ // uint64_t C2Tuple__u832u16Z_clone_ptr(LDKC2Tuple__u832u16Z *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple__u832u16Z_clone_ptr")] public static extern long C2Tuple__u832u16Z_clone_ptr(long _arg);
+ // struct LDKC2Tuple__u832u16Z C2Tuple__u832u16Z_clone(const struct LDKC2Tuple__u832u16Z *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple__u832u16Z_clone")] public static extern long C2Tuple__u832u16Z_clone(long _orig);
+ // struct LDKC2Tuple__u832u16Z C2Tuple__u832u16Z_new(struct LDKThirtyTwoBytes a, uint16_t b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple__u832u16Z_new")] public static extern long C2Tuple__u832u16Z_new(long _a, short _b);
+ // void C2Tuple__u832u16Z_free(struct LDKC2Tuple__u832u16Z _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple__u832u16Z_free")] public static extern void C2Tuple__u832u16Z_free(long __res);
// struct LDKCResult_PaymentRelayDecodeErrorZ CResult_PaymentRelayDecodeErrorZ_ok(struct LDKPaymentRelay o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentRelayDecodeErrorZ_ok")] public static extern long CResult_PaymentRelayDecodeErrorZ_ok(long _o);
// struct LDKCResult_PaymentRelayDecodeErrorZ CResult_PaymentRelayDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentConstraintsDecodeErrorZ_clone_ptr")] public static extern long CResult_PaymentConstraintsDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_PaymentConstraintsDecodeErrorZ CResult_PaymentConstraintsDecodeErrorZ_clone(const struct LDKCResult_PaymentConstraintsDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PaymentConstraintsDecodeErrorZ_clone")] public static extern long CResult_PaymentConstraintsDecodeErrorZ_clone(long _orig);
- // struct LDKCResult_ThirtyTwoBytesPaymentErrorZ CResult_ThirtyTwoBytesPaymentErrorZ_ok(struct LDKThirtyTwoBytes o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_ok")] public static extern long CResult_ThirtyTwoBytesPaymentErrorZ_ok(long _o);
- // struct LDKCResult_ThirtyTwoBytesPaymentErrorZ CResult_ThirtyTwoBytesPaymentErrorZ_err(struct LDKPaymentError e);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_err")] public static extern long CResult_ThirtyTwoBytesPaymentErrorZ_err(long _e);
- // bool CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(const struct LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_is_ok")] public static extern bool CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(long _o);
- // void CResult_ThirtyTwoBytesPaymentErrorZ_free(struct LDKCResult_ThirtyTwoBytesPaymentErrorZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_free")] public static extern void CResult_ThirtyTwoBytesPaymentErrorZ_free(long __res);
- // uint64_t CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr")] public static extern long CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(long _arg);
- // struct LDKCResult_ThirtyTwoBytesPaymentErrorZ CResult_ThirtyTwoBytesPaymentErrorZ_clone(const struct LDKCResult_ThirtyTwoBytesPaymentErrorZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_ThirtyTwoBytesPaymentErrorZ_clone")] public static extern long CResult_ThirtyTwoBytesPaymentErrorZ_clone(long _orig);
- // struct LDKCResult_NonePaymentErrorZ CResult_NonePaymentErrorZ_ok(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_ok")] public static extern long CResult_NonePaymentErrorZ_ok();
- // struct LDKCResult_NonePaymentErrorZ CResult_NonePaymentErrorZ_err(struct LDKPaymentError e);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_err")] public static extern long CResult_NonePaymentErrorZ_err(long _e);
- // bool CResult_NonePaymentErrorZ_is_ok(const struct LDKCResult_NonePaymentErrorZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_is_ok")] public static extern bool CResult_NonePaymentErrorZ_is_ok(long _o);
- // void CResult_NonePaymentErrorZ_free(struct LDKCResult_NonePaymentErrorZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_free")] public static extern void CResult_NonePaymentErrorZ_free(long __res);
- // uint64_t CResult_NonePaymentErrorZ_clone_ptr(LDKCResult_NonePaymentErrorZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_clone_ptr")] public static extern long CResult_NonePaymentErrorZ_clone_ptr(long _arg);
- // struct LDKCResult_NonePaymentErrorZ CResult_NonePaymentErrorZ_clone(const struct LDKCResult_NonePaymentErrorZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NonePaymentErrorZ_clone")] public static extern long CResult_NonePaymentErrorZ_clone(long _orig);
- // struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(struct LDKCVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZ o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok")] public static extern long CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(long _o);
- // struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(struct LDKProbingError e);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err")] public static extern long CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(long _e);
- // bool CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(const struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok")] public static extern bool CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(long _o);
- // void CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free")] public static extern void CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(long __res);
- // uint64_t CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr")] public static extern long CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(long _arg);
- // struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(const struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone")] public static extern long CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(long _orig);
+ // uint64_t C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr")] public static extern long C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(long _arg);
+ // struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(const struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone")] public static extern long C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(long _orig);
+ // struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(struct LDKThirtyTwoBytes a, struct LDKRecipientOnionFields b, struct LDKRouteParameters c);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new")] public static extern long C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(long _a, long _b, long _c);
+ // void C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free")] public static extern void C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(long __res);
+ // struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(struct LDKC3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok")] public static extern long CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(long _o);
+ // struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err")] public static extern long CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err();
+ // bool CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(const struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok")] public static extern bool CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(long _o);
+ // void CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free")] public static extern void CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(long __res);
+ // uint64_t CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr")] public static extern long CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(long _arg);
+ // struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(const struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone")] public static extern long CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(long _orig);
// struct LDKCResult_StrSecp256k1ErrorZ CResult_StrSecp256k1ErrorZ_ok(struct LDKStr o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_StrSecp256k1ErrorZ_ok")] public static extern long CResult_StrSecp256k1ErrorZ_ok(long _o);
// struct LDKCResult_StrSecp256k1ErrorZ CResult_StrSecp256k1ErrorZ_err(enum LDKSecp256k1Error e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_TxOutUtxoLookupErrorZ_clone_ptr")] public static extern long CResult_TxOutUtxoLookupErrorZ_clone_ptr(long _arg);
// struct LDKCResult_TxOutUtxoLookupErrorZ CResult_TxOutUtxoLookupErrorZ_clone(const struct LDKCResult_TxOutUtxoLookupErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_TxOutUtxoLookupErrorZ_clone")] public static extern long CResult_TxOutUtxoLookupErrorZ_clone(long _orig);
- // struct LDKCResult_OnionMessagePathNoneZ CResult_OnionMessagePathNoneZ_ok(struct LDKOnionMessagePath o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_ok")] public static extern long CResult_OnionMessagePathNoneZ_ok(long _o);
- // struct LDKCResult_OnionMessagePathNoneZ CResult_OnionMessagePathNoneZ_err(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_err")] public static extern long CResult_OnionMessagePathNoneZ_err();
- // bool CResult_OnionMessagePathNoneZ_is_ok(const struct LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_is_ok")] public static extern bool CResult_OnionMessagePathNoneZ_is_ok(long _o);
- // void CResult_OnionMessagePathNoneZ_free(struct LDKCResult_OnionMessagePathNoneZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_free")] public static extern void CResult_OnionMessagePathNoneZ_free(long __res);
- // uint64_t CResult_OnionMessagePathNoneZ_clone_ptr(LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_clone_ptr")] public static extern long CResult_OnionMessagePathNoneZ_clone_ptr(long _arg);
- // struct LDKCResult_OnionMessagePathNoneZ CResult_OnionMessagePathNoneZ_clone(const struct LDKCResult_OnionMessagePathNoneZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_OnionMessagePathNoneZ_clone")] public static extern long CResult_OnionMessagePathNoneZ_clone(long _orig);
- // uint64_t C2Tuple_PublicKeyOnionMessageZ_clone_ptr(LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyOnionMessageZ_clone_ptr")] public static extern long C2Tuple_PublicKeyOnionMessageZ_clone_ptr(long _arg);
- // struct LDKC2Tuple_PublicKeyOnionMessageZ C2Tuple_PublicKeyOnionMessageZ_clone(const struct LDKC2Tuple_PublicKeyOnionMessageZ *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyOnionMessageZ_clone")] public static extern long C2Tuple_PublicKeyOnionMessageZ_clone(long _orig);
- // struct LDKC2Tuple_PublicKeyOnionMessageZ C2Tuple_PublicKeyOnionMessageZ_new(struct LDKPublicKey a, struct LDKOnionMessage b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyOnionMessageZ_new")] public static extern long C2Tuple_PublicKeyOnionMessageZ_new(long _a, long _b);
- // void C2Tuple_PublicKeyOnionMessageZ_free(struct LDKC2Tuple_PublicKeyOnionMessageZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_PublicKeyOnionMessageZ_free")] public static extern void C2Tuple_PublicKeyOnionMessageZ_free(long __res);
- // struct LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(struct LDKC2Tuple_PublicKeyOnionMessageZ o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok")] public static extern long CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(long _o);
- // struct LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(struct LDKSendError e);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err")] public static extern long CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(long _e);
- // bool CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(const struct LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok")] public static extern bool CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(long _o);
- // void CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(struct LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free")] public static extern void CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(long __res);
+ // uint64_t C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr")] public static extern long C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(long _arg);
+ // struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(const struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone")] public static extern long C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(long _orig);
+ // struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(struct LDKPublicKey a, struct LDKOnionMessage b, struct LDKCOption_CVec_SocketAddressZZ c);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new")] public static extern long C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(long _a, long _b, long _c);
+ // void C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free")] public static extern void C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(long __res);
+ // struct LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(struct LDKC3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok")] public static extern long CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(long _o);
+ // struct LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(struct LDKSendError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err")] public static extern long CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(long _e);
+ // bool CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(const struct LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok")] public static extern bool CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(long _o);
+ // void CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(struct LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free")] public static extern void CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(long __res);
// struct LDKCResult_PeeledOnionNoneZ CResult_PeeledOnionNoneZ_ok(struct LDKPeeledOnion o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PeeledOnionNoneZ_ok")] public static extern long CResult_PeeledOnionNoneZ_ok(long _o);
// struct LDKCResult_PeeledOnionNoneZ CResult_PeeledOnionNoneZ_err(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PeeledOnionNoneZ_is_ok")] public static extern bool CResult_PeeledOnionNoneZ_is_ok(long _o);
// void CResult_PeeledOnionNoneZ_free(struct LDKCResult_PeeledOnionNoneZ _res);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_PeeledOnionNoneZ_free")] public static extern void CResult_PeeledOnionNoneZ_free(long __res);
- // struct LDKCResult_NoneSendErrorZ CResult_NoneSendErrorZ_ok(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneSendErrorZ_ok")] public static extern long CResult_NoneSendErrorZ_ok();
- // struct LDKCResult_NoneSendErrorZ CResult_NoneSendErrorZ_err(struct LDKSendError e);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneSendErrorZ_err")] public static extern long CResult_NoneSendErrorZ_err(long _e);
- // bool CResult_NoneSendErrorZ_is_ok(const struct LDKCResult_NoneSendErrorZ *NONNULL_PTR o);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneSendErrorZ_is_ok")] public static extern bool CResult_NoneSendErrorZ_is_ok(long _o);
- // void CResult_NoneSendErrorZ_free(struct LDKCResult_NoneSendErrorZ _res);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_NoneSendErrorZ_free")] public static extern void CResult_NoneSendErrorZ_free(long __res);
+ // struct LDKCResult_SendSuccessSendErrorZ CResult_SendSuccessSendErrorZ_ok(struct LDKSendSuccess o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SendSuccessSendErrorZ_ok")] public static extern long CResult_SendSuccessSendErrorZ_ok(long _o);
+ // struct LDKCResult_SendSuccessSendErrorZ CResult_SendSuccessSendErrorZ_err(struct LDKSendError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SendSuccessSendErrorZ_err")] public static extern long CResult_SendSuccessSendErrorZ_err(long _e);
+ // bool CResult_SendSuccessSendErrorZ_is_ok(const struct LDKCResult_SendSuccessSendErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SendSuccessSendErrorZ_is_ok")] public static extern bool CResult_SendSuccessSendErrorZ_is_ok(long _o);
+ // void CResult_SendSuccessSendErrorZ_free(struct LDKCResult_SendSuccessSendErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_SendSuccessSendErrorZ_free")] public static extern void CResult_SendSuccessSendErrorZ_free(long __res);
// struct LDKCResult_BlindedPathNoneZ CResult_BlindedPathNoneZ_ok(struct LDKBlindedPath o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedPathNoneZ_ok")] public static extern long CResult_BlindedPathNoneZ_ok(long _o);
// struct LDKCResult_BlindedPathNoneZ CResult_BlindedPathNoneZ_err(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_clone_ptr")] public static extern long CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_clone_ptr(long _arg);
// struct LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_clone(const struct LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_clone")] public static extern long CResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ_clone(long _orig);
+ // void CVec_ForwardNodeZ_free(struct LDKCVec_ForwardNodeZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CVec_ForwardNodeZ_free")] public static extern void CVec_ForwardNodeZ_free(long __res);
// struct LDKCResult_BlindedPathDecodeErrorZ CResult_BlindedPathDecodeErrorZ_ok(struct LDKBlindedPath o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_BlindedPathDecodeErrorZ_ok")] public static extern long CResult_BlindedPathDecodeErrorZ_ok(long _o);
// struct LDKCResult_BlindedPathDecodeErrorZ CResult_BlindedPathDecodeErrorZ_err(struct LDKDecodeError e);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InvoiceErrorDecodeErrorZ_clone_ptr")] public static extern long CResult_InvoiceErrorDecodeErrorZ_clone_ptr(long _arg);
// struct LDKCResult_InvoiceErrorDecodeErrorZ CResult_InvoiceErrorDecodeErrorZ_clone(const struct LDKCResult_InvoiceErrorDecodeErrorZ *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_InvoiceErrorDecodeErrorZ_clone")] public static extern long CResult_InvoiceErrorDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ CResult_DelayedPaymentBasepointDecodeErrorZ_ok(struct LDKDelayedPaymentBasepoint o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_ok")] public static extern long CResult_DelayedPaymentBasepointDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ CResult_DelayedPaymentBasepointDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_err")] public static extern long CResult_DelayedPaymentBasepointDecodeErrorZ_err(long _e);
+ // bool CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(const struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok")] public static extern bool CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(long _o);
+ // void CResult_DelayedPaymentBasepointDecodeErrorZ_free(struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_free")] public static extern void CResult_DelayedPaymentBasepointDecodeErrorZ_free(long __res);
+ // uint64_t CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr")] public static extern long CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ CResult_DelayedPaymentBasepointDecodeErrorZ_clone(const struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentBasepointDecodeErrorZ_clone")] public static extern long CResult_DelayedPaymentBasepointDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_DelayedPaymentKeyDecodeErrorZ CResult_DelayedPaymentKeyDecodeErrorZ_ok(struct LDKDelayedPaymentKey o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_ok")] public static extern long CResult_DelayedPaymentKeyDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_DelayedPaymentKeyDecodeErrorZ CResult_DelayedPaymentKeyDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_err")] public static extern long CResult_DelayedPaymentKeyDecodeErrorZ_err(long _e);
+ // bool CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(const struct LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_is_ok")] public static extern bool CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(long _o);
+ // void CResult_DelayedPaymentKeyDecodeErrorZ_free(struct LDKCResult_DelayedPaymentKeyDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_free")] public static extern void CResult_DelayedPaymentKeyDecodeErrorZ_free(long __res);
+ // uint64_t CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr")] public static extern long CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_DelayedPaymentKeyDecodeErrorZ CResult_DelayedPaymentKeyDecodeErrorZ_clone(const struct LDKCResult_DelayedPaymentKeyDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_DelayedPaymentKeyDecodeErrorZ_clone")] public static extern long CResult_DelayedPaymentKeyDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_HtlcBasepointDecodeErrorZ CResult_HtlcBasepointDecodeErrorZ_ok(struct LDKHtlcBasepoint o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_ok")] public static extern long CResult_HtlcBasepointDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_HtlcBasepointDecodeErrorZ CResult_HtlcBasepointDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_err")] public static extern long CResult_HtlcBasepointDecodeErrorZ_err(long _e);
+ // bool CResult_HtlcBasepointDecodeErrorZ_is_ok(const struct LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_is_ok")] public static extern bool CResult_HtlcBasepointDecodeErrorZ_is_ok(long _o);
+ // void CResult_HtlcBasepointDecodeErrorZ_free(struct LDKCResult_HtlcBasepointDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_free")] public static extern void CResult_HtlcBasepointDecodeErrorZ_free(long __res);
+ // uint64_t CResult_HtlcBasepointDecodeErrorZ_clone_ptr(LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_clone_ptr")] public static extern long CResult_HtlcBasepointDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_HtlcBasepointDecodeErrorZ CResult_HtlcBasepointDecodeErrorZ_clone(const struct LDKCResult_HtlcBasepointDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcBasepointDecodeErrorZ_clone")] public static extern long CResult_HtlcBasepointDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_HtlcKeyDecodeErrorZ CResult_HtlcKeyDecodeErrorZ_ok(struct LDKHtlcKey o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_ok")] public static extern long CResult_HtlcKeyDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_HtlcKeyDecodeErrorZ CResult_HtlcKeyDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_err")] public static extern long CResult_HtlcKeyDecodeErrorZ_err(long _e);
+ // bool CResult_HtlcKeyDecodeErrorZ_is_ok(const struct LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_is_ok")] public static extern bool CResult_HtlcKeyDecodeErrorZ_is_ok(long _o);
+ // void CResult_HtlcKeyDecodeErrorZ_free(struct LDKCResult_HtlcKeyDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_free")] public static extern void CResult_HtlcKeyDecodeErrorZ_free(long __res);
+ // uint64_t CResult_HtlcKeyDecodeErrorZ_clone_ptr(LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_clone_ptr")] public static extern long CResult_HtlcKeyDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_HtlcKeyDecodeErrorZ CResult_HtlcKeyDecodeErrorZ_clone(const struct LDKCResult_HtlcKeyDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_HtlcKeyDecodeErrorZ_clone")] public static extern long CResult_HtlcKeyDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_RevocationBasepointDecodeErrorZ CResult_RevocationBasepointDecodeErrorZ_ok(struct LDKRevocationBasepoint o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_ok")] public static extern long CResult_RevocationBasepointDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_RevocationBasepointDecodeErrorZ CResult_RevocationBasepointDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_err")] public static extern long CResult_RevocationBasepointDecodeErrorZ_err(long _e);
+ // bool CResult_RevocationBasepointDecodeErrorZ_is_ok(const struct LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_is_ok")] public static extern bool CResult_RevocationBasepointDecodeErrorZ_is_ok(long _o);
+ // void CResult_RevocationBasepointDecodeErrorZ_free(struct LDKCResult_RevocationBasepointDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_free")] public static extern void CResult_RevocationBasepointDecodeErrorZ_free(long __res);
+ // uint64_t CResult_RevocationBasepointDecodeErrorZ_clone_ptr(LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_clone_ptr")] public static extern long CResult_RevocationBasepointDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_RevocationBasepointDecodeErrorZ CResult_RevocationBasepointDecodeErrorZ_clone(const struct LDKCResult_RevocationBasepointDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationBasepointDecodeErrorZ_clone")] public static extern long CResult_RevocationBasepointDecodeErrorZ_clone(long _orig);
+ // struct LDKCResult_RevocationKeyDecodeErrorZ CResult_RevocationKeyDecodeErrorZ_ok(struct LDKRevocationKey o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_ok")] public static extern long CResult_RevocationKeyDecodeErrorZ_ok(long _o);
+ // struct LDKCResult_RevocationKeyDecodeErrorZ CResult_RevocationKeyDecodeErrorZ_err(struct LDKDecodeError e);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_err")] public static extern long CResult_RevocationKeyDecodeErrorZ_err(long _e);
+ // bool CResult_RevocationKeyDecodeErrorZ_is_ok(const struct LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_is_ok")] public static extern bool CResult_RevocationKeyDecodeErrorZ_is_ok(long _o);
+ // void CResult_RevocationKeyDecodeErrorZ_free(struct LDKCResult_RevocationKeyDecodeErrorZ _res);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_free")] public static extern void CResult_RevocationKeyDecodeErrorZ_free(long __res);
+ // uint64_t CResult_RevocationKeyDecodeErrorZ_clone_ptr(LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_clone_ptr")] public static extern long CResult_RevocationKeyDecodeErrorZ_clone_ptr(long _arg);
+ // struct LDKCResult_RevocationKeyDecodeErrorZ CResult_RevocationKeyDecodeErrorZ_clone(const struct LDKCResult_RevocationKeyDecodeErrorZ *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CResult_RevocationKeyDecodeErrorZ_clone")] public static extern long CResult_RevocationKeyDecodeErrorZ_clone(long _orig);
// struct LDKCOption_FilterZ COption_FilterZ_some(struct LDKFilter o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_COption_FilterZ_some")] public static extern long COption_FilterZ_some(long _o);
// struct LDKCOption_FilterZ COption_FilterZ_none(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Hostname_clone_ptr")] public static extern long Hostname_clone_ptr(long _arg);
// struct LDKHostname Hostname_clone(const struct LDKHostname *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Hostname_clone")] public static extern long Hostname_clone(long _orig);
+ // uint64_t Hostname_hash(const struct LDKHostname *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Hostname_hash")] public static extern long Hostname_hash(long _o);
// bool Hostname_eq(const struct LDKHostname *NONNULL_PTR a, const struct LDKHostname *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Hostname_eq")] public static extern bool Hostname_eq(long _a, long _b);
// MUST_USE_RES uint8_t Hostname_len(const struct LDKHostname *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TransactionU16LenLimited_clone_ptr")] public static extern long TransactionU16LenLimited_clone_ptr(long _arg);
// struct LDKTransactionU16LenLimited TransactionU16LenLimited_clone(const struct LDKTransactionU16LenLimited *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TransactionU16LenLimited_clone")] public static extern long TransactionU16LenLimited_clone(long _orig);
+ // uint64_t TransactionU16LenLimited_hash(const struct LDKTransactionU16LenLimited *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TransactionU16LenLimited_hash")] public static extern long TransactionU16LenLimited_hash(long _o);
// bool TransactionU16LenLimited_eq(const struct LDKTransactionU16LenLimited *NONNULL_PTR a, const struct LDKTransactionU16LenLimited *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TransactionU16LenLimited_eq")] public static extern bool TransactionU16LenLimited_eq(long _a, long _b);
// MUST_USE_RES struct LDKCResult_TransactionU16LenLimitedNoneZ TransactionU16LenLimited_new(struct LDKTransaction transaction);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UntrustedString_clone")] public static extern long UntrustedString_clone(long _orig);
// bool UntrustedString_eq(const struct LDKUntrustedString *NONNULL_PTR a, const struct LDKUntrustedString *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UntrustedString_eq")] public static extern bool UntrustedString_eq(long _a, long _b);
+ // uint64_t UntrustedString_hash(const struct LDKUntrustedString *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UntrustedString_hash")] public static extern long UntrustedString_hash(long _o);
// struct LDKCVec_u8Z UntrustedString_write(const struct LDKUntrustedString *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UntrustedString_write")] public static extern long UntrustedString_write(long _obj);
// struct LDKCResult_UntrustedStringDecodeErrorZ UntrustedString_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_get_level")] public static extern Level Record_get_level(long _this_ptr);
// void Record_set_level(struct LDKRecord *NONNULL_PTR this_ptr, enum LDKLevel val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_set_level")] public static extern void Record_set_level(long _this_ptr, Level _val);
+ // struct LDKPublicKey Record_get_peer_id(const struct LDKRecord *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_get_peer_id")] public static extern long Record_get_peer_id(long _this_ptr);
+ // void Record_set_peer_id(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_set_peer_id")] public static extern void Record_set_peer_id(long _this_ptr, long _val);
+ // struct LDKCOption_ThirtyTwoBytesZ Record_get_channel_id(const struct LDKRecord *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_get_channel_id")] public static extern long Record_get_channel_id(long _this_ptr);
+ // void Record_set_channel_id(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKCOption_ThirtyTwoBytesZ val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_set_channel_id")] public static extern void Record_set_channel_id(long _this_ptr, long _val);
// struct LDKStr Record_get_args(const struct LDKRecord *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_get_args")] public static extern long Record_get_args(long _this_ptr);
// void Record_set_args(struct LDKRecord *NONNULL_PTR this_ptr, struct LDKStr val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_get_line")] public static extern int Record_get_line(long _this_ptr);
// void Record_set_line(struct LDKRecord *NONNULL_PTR this_ptr, uint32_t val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_set_line")] public static extern void Record_set_line(long _this_ptr, int _val);
+ // MUST_USE_RES struct LDKRecord Record_new(enum LDKLevel level_arg, struct LDKPublicKey peer_id_arg, struct LDKCOption_ThirtyTwoBytesZ channel_id_arg, struct LDKStr args_arg, struct LDKStr module_path_arg, struct LDKStr file_arg, uint32_t line_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_new")] public static extern long Record_new(Level _level_arg, long _peer_id_arg, long _channel_id_arg, long _args_arg, long _module_path_arg, long _file_arg, int _line_arg);
// uint64_t Record_clone_ptr(LDKRecord *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Record_clone_ptr")] public static extern long Record_clone_ptr(long _arg);
// struct LDKRecord Record_clone(const struct LDKRecord *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WatchedOutput_get_outpoint")] public static extern long WatchedOutput_get_outpoint(long _this_ptr);
// void WatchedOutput_set_outpoint(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKOutPoint val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WatchedOutput_set_outpoint")] public static extern void WatchedOutput_set_outpoint(long _this_ptr, long _val);
- // struct LDKu8slice WatchedOutput_get_script_pubkey(const struct LDKWatchedOutput *NONNULL_PTR this_ptr);
+ // struct LDKCVec_u8Z WatchedOutput_get_script_pubkey(const struct LDKWatchedOutput *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WatchedOutput_get_script_pubkey")] public static extern long WatchedOutput_get_script_pubkey(long _this_ptr);
// void WatchedOutput_set_script_pubkey(struct LDKWatchedOutput *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WatchedOutput_set_script_pubkey")] public static extern void WatchedOutput_set_script_pubkey(long _this_ptr, long _val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ConfirmationTarget_clone")] public static extern ConfirmationTarget ConfirmationTarget_clone(long _orig);
// enum LDKConfirmationTarget ConfirmationTarget_on_chain_sweep(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ConfirmationTarget_on_chain_sweep")] public static extern ConfirmationTarget ConfirmationTarget_on_chain_sweep();
- // enum LDKConfirmationTarget ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee")] public static extern ConfirmationTarget ConfirmationTarget_max_allowed_non_anchor_channel_remote_fee();
// enum LDKConfirmationTarget ConfirmationTarget_min_allowed_anchor_channel_remote_fee(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ConfirmationTarget_min_allowed_anchor_channel_remote_fee")] public static extern ConfirmationTarget ConfirmationTarget_min_allowed_anchor_channel_remote_fee();
// enum LDKConfirmationTarget ConfirmationTarget_min_allowed_non_anchor_channel_remote_fee(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_funding_txo")] public static extern long ChannelMonitor_get_funding_txo(long _this_arg);
// MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32CVec_u8ZZZZZ ChannelMonitor_get_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_outputs_to_watch")] public static extern long ChannelMonitor_get_outputs_to_watch(long _this_arg);
- // void ChannelMonitor_load_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKFilter *NONNULL_PTR filter);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_load_outputs_to_watch")] public static extern void ChannelMonitor_load_outputs_to_watch(long _this_arg, long _filter);
+ // void ChannelMonitor_load_outputs_to_watch(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKFilter *NONNULL_PTR filter, const struct LDKLogger *NONNULL_PTR logger);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_load_outputs_to_watch")] public static extern void ChannelMonitor_load_outputs_to_watch(long _this_arg, long _filter, long _logger);
// MUST_USE_RES struct LDKCVec_MonitorEventZ ChannelMonitor_get_and_clear_pending_monitor_events(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_and_clear_pending_monitor_events")] public static extern long ChannelMonitor_get_and_clear_pending_monitor_events(long _this_arg);
// void ChannelMonitor_process_pending_events(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKEventHandler *NONNULL_PTR handler);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_counterparty_node_id")] public static extern long ChannelMonitor_get_counterparty_node_id(long _this_arg);
// MUST_USE_RES struct LDKCVec_TransactionZ ChannelMonitor_get_latest_holder_commitment_txn(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_latest_holder_commitment_txn")] public static extern long ChannelMonitor_get_latest_holder_commitment_txn(long _this_arg, long _logger);
- // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_block_connected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger);
+ // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_block_connected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_block_connected")] public static extern long ChannelMonitor_block_connected(long _this_arg, long _header, long _txdata, int _height, long _broadcaster, long _fee_estimator, long _logger);
- // void ChannelMonitor_block_disconnected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger);
+ // void ChannelMonitor_block_disconnected(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_block_disconnected")] public static extern void ChannelMonitor_block_disconnected(long _this_arg, long _header, int _height, long _broadcaster, long _fee_estimator, long _logger);
- // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_transactions_confirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger);
+ // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_transactions_confirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_transactions_confirmed")] public static extern long ChannelMonitor_transactions_confirmed(long _this_arg, long _header, long _txdata, int _height, long _broadcaster, long _fee_estimator, long _logger);
- // void ChannelMonitor_transaction_unconfirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger);
+ // void ChannelMonitor_transaction_unconfirmed(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_transaction_unconfirmed")] public static extern void ChannelMonitor_transaction_unconfirmed(long _this_arg, long _txid, long _broadcaster, long _fee_estimator, long _logger);
- // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_best_block_updated(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger);
+ // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCVec_C2Tuple_u32TxOutZZZZ ChannelMonitor_best_block_updated(const struct LDKChannelMonitor *NONNULL_PTR this_arg, const uint8_t (*header)[80], uint32_t height, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_best_block_updated")] public static extern long ChannelMonitor_best_block_updated(long _this_arg, long _header, int _height, long _broadcaster, long _fee_estimator, long _logger);
- // MUST_USE_RES struct LDKCVec_C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZZ ChannelMonitor_get_relevant_txids(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
+ // MUST_USE_RES struct LDKCVec_C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZZ ChannelMonitor_get_relevant_txids(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_relevant_txids")] public static extern long ChannelMonitor_get_relevant_txids(long _this_arg);
// MUST_USE_RES struct LDKBestBlock ChannelMonitor_current_best_block(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_current_best_block")] public static extern long ChannelMonitor_current_best_block(long _this_arg);
- // void ChannelMonitor_rebroadcast_pending_claims(const struct LDKChannelMonitor *NONNULL_PTR this_arg, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, struct LDKLogger logger);
+ // void ChannelMonitor_rebroadcast_pending_claims(const struct LDKChannelMonitor *NONNULL_PTR this_arg, struct LDKBroadcasterInterface broadcaster, struct LDKFeeEstimator fee_estimator, const struct LDKLogger *NONNULL_PTR logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_rebroadcast_pending_claims")] public static extern void ChannelMonitor_rebroadcast_pending_claims(long _this_arg, long _broadcaster, long _fee_estimator, long _logger);
// MUST_USE_RES struct LDKCVec_SpendableOutputDescriptorZ ChannelMonitor_get_spendable_outputs(const struct LDKChannelMonitor *NONNULL_PTR this_arg, struct LDKTransaction tx, uint32_t confirmation_height);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelMonitor_get_spendable_outputs")] public static extern long ChannelMonitor_get_spendable_outputs(long _this_arg, long _tx, int _confirmation_height);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OutPoint_write")] public static extern long OutPoint_write(long _obj);
// struct LDKCResult_OutPointDecodeErrorZ OutPoint_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OutPoint_read")] public static extern long OutPoint_read(long _ser);
+ // void InboundHTLCErr_free(struct LDKInboundHTLCErr this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_free")] public static extern void InboundHTLCErr_free(long _this_obj);
+ // uint16_t InboundHTLCErr_get_err_code(const struct LDKInboundHTLCErr *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_get_err_code")] public static extern short InboundHTLCErr_get_err_code(long _this_ptr);
+ // void InboundHTLCErr_set_err_code(struct LDKInboundHTLCErr *NONNULL_PTR this_ptr, uint16_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_set_err_code")] public static extern void InboundHTLCErr_set_err_code(long _this_ptr, short _val);
+ // struct LDKCVec_u8Z InboundHTLCErr_get_err_data(const struct LDKInboundHTLCErr *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_get_err_data")] public static extern long InboundHTLCErr_get_err_data(long _this_ptr);
+ // void InboundHTLCErr_set_err_data(struct LDKInboundHTLCErr *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_set_err_data")] public static extern void InboundHTLCErr_set_err_data(long _this_ptr, long _val);
+ // struct LDKStr InboundHTLCErr_get_msg(const struct LDKInboundHTLCErr *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_get_msg")] public static extern long InboundHTLCErr_get_msg(long _this_ptr);
+ // void InboundHTLCErr_set_msg(struct LDKInboundHTLCErr *NONNULL_PTR this_ptr, struct LDKStr val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_set_msg")] public static extern void InboundHTLCErr_set_msg(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKInboundHTLCErr InboundHTLCErr_new(uint16_t err_code_arg, struct LDKCVec_u8Z err_data_arg, struct LDKStr msg_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InboundHTLCErr_new")] public static extern long InboundHTLCErr_new(short _err_code_arg, long _err_data_arg, long _msg_arg);
+ // struct LDKCResult_PendingHTLCInfoInboundHTLCErrZ peel_payment_onion(const struct LDKUpdateAddHTLC *NONNULL_PTR msg, const struct LDKNodeSigner *NONNULL_PTR node_signer, const struct LDKLogger *NONNULL_PTR logger, uint32_t cur_height, bool accept_mpp_keysend, bool allow_skimmed_fees);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_peel_payment_onion")] public static extern long peel_payment_onion(long _msg, long _node_signer, long _logger, int _cur_height, bool _accept_mpp_keysend, bool _allow_skimmed_fees);
+ // void PendingHTLCRouting_free(struct LDKPendingHTLCRouting this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_free")] public static extern void PendingHTLCRouting_free(long _this_ptr);
+ // uint64_t PendingHTLCRouting_clone_ptr(LDKPendingHTLCRouting *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_clone_ptr")] public static extern long PendingHTLCRouting_clone_ptr(long _arg);
+ // struct LDKPendingHTLCRouting PendingHTLCRouting_clone(const struct LDKPendingHTLCRouting *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_clone")] public static extern long PendingHTLCRouting_clone(long _orig);
+ // struct LDKPendingHTLCRouting PendingHTLCRouting_forward(struct LDKOnionPacket onion_packet, uint64_t short_channel_id, struct LDKBlindedForward blinded);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_forward")] public static extern long PendingHTLCRouting_forward(long _onion_packet, long _short_channel_id, long _blinded);
+ // struct LDKPendingHTLCRouting PendingHTLCRouting_receive(struct LDKFinalOnionHopData payment_data, struct LDKCOption_CVec_u8ZZ payment_metadata, uint32_t incoming_cltv_expiry, struct LDKThirtyTwoBytes phantom_shared_secret, struct LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs, bool requires_blinded_error);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_receive")] public static extern long PendingHTLCRouting_receive(long _payment_data, long _payment_metadata, int _incoming_cltv_expiry, long _phantom_shared_secret, long _custom_tlvs, bool _requires_blinded_error);
+ // struct LDKPendingHTLCRouting PendingHTLCRouting_receive_keysend(struct LDKFinalOnionHopData payment_data, struct LDKThirtyTwoBytes payment_preimage, struct LDKCOption_CVec_u8ZZ payment_metadata, uint32_t incoming_cltv_expiry, struct LDKCVec_C2Tuple_u64CVec_u8ZZZ custom_tlvs);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_receive_keysend")] public static extern long PendingHTLCRouting_receive_keysend(long _payment_data, long _payment_preimage, long _payment_metadata, int _incoming_cltv_expiry, long _custom_tlvs);
+ // void BlindedForward_free(struct LDKBlindedForward this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_free")] public static extern void BlindedForward_free(long _this_obj);
+ // struct LDKPublicKey BlindedForward_get_inbound_blinding_point(const struct LDKBlindedForward *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_get_inbound_blinding_point")] public static extern long BlindedForward_get_inbound_blinding_point(long _this_ptr);
+ // void BlindedForward_set_inbound_blinding_point(struct LDKBlindedForward *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_set_inbound_blinding_point")] public static extern void BlindedForward_set_inbound_blinding_point(long _this_ptr, long _val);
+ // enum LDKBlindedFailure BlindedForward_get_failure(const struct LDKBlindedForward *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_get_failure")] public static extern BlindedFailure BlindedForward_get_failure(long _this_ptr);
+ // void BlindedForward_set_failure(struct LDKBlindedForward *NONNULL_PTR this_ptr, enum LDKBlindedFailure val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_set_failure")] public static extern void BlindedForward_set_failure(long _this_ptr, BlindedFailure _val);
+ // MUST_USE_RES struct LDKBlindedForward BlindedForward_new(struct LDKPublicKey inbound_blinding_point_arg, enum LDKBlindedFailure failure_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_new")] public static extern long BlindedForward_new(long _inbound_blinding_point_arg, BlindedFailure _failure_arg);
+ // uint64_t BlindedForward_clone_ptr(LDKBlindedForward *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_clone_ptr")] public static extern long BlindedForward_clone_ptr(long _arg);
+ // struct LDKBlindedForward BlindedForward_clone(const struct LDKBlindedForward *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_clone")] public static extern long BlindedForward_clone(long _orig);
+ // uint64_t BlindedForward_hash(const struct LDKBlindedForward *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_hash")] public static extern long BlindedForward_hash(long _o);
+ // bool BlindedForward_eq(const struct LDKBlindedForward *NONNULL_PTR a, const struct LDKBlindedForward *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_eq")] public static extern bool BlindedForward_eq(long _a, long _b);
+ // void PendingHTLCInfo_free(struct LDKPendingHTLCInfo this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_free")] public static extern void PendingHTLCInfo_free(long _this_obj);
+ // struct LDKPendingHTLCRouting PendingHTLCInfo_get_routing(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_routing")] public static extern long PendingHTLCInfo_get_routing(long _this_ptr);
+ // void PendingHTLCInfo_set_routing(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, struct LDKPendingHTLCRouting val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_routing")] public static extern void PendingHTLCInfo_set_routing(long _this_ptr, long _val);
+ // const uint8_t (*PendingHTLCInfo_get_incoming_shared_secret(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_incoming_shared_secret")] public static extern long PendingHTLCInfo_get_incoming_shared_secret(long _this_ptr);
+ // void PendingHTLCInfo_set_incoming_shared_secret(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_incoming_shared_secret")] public static extern void PendingHTLCInfo_set_incoming_shared_secret(long _this_ptr, long _val);
+ // const uint8_t (*PendingHTLCInfo_get_payment_hash(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_payment_hash")] public static extern long PendingHTLCInfo_get_payment_hash(long _this_ptr);
+ // void PendingHTLCInfo_set_payment_hash(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_payment_hash")] public static extern void PendingHTLCInfo_set_payment_hash(long _this_ptr, long _val);
+ // struct LDKCOption_u64Z PendingHTLCInfo_get_incoming_amt_msat(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_incoming_amt_msat")] public static extern long PendingHTLCInfo_get_incoming_amt_msat(long _this_ptr);
+ // void PendingHTLCInfo_set_incoming_amt_msat(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_incoming_amt_msat")] public static extern void PendingHTLCInfo_set_incoming_amt_msat(long _this_ptr, long _val);
+ // uint64_t PendingHTLCInfo_get_outgoing_amt_msat(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_outgoing_amt_msat")] public static extern long PendingHTLCInfo_get_outgoing_amt_msat(long _this_ptr);
+ // void PendingHTLCInfo_set_outgoing_amt_msat(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, uint64_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_outgoing_amt_msat")] public static extern void PendingHTLCInfo_set_outgoing_amt_msat(long _this_ptr, long _val);
+ // uint32_t PendingHTLCInfo_get_outgoing_cltv_value(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_outgoing_cltv_value")] public static extern int PendingHTLCInfo_get_outgoing_cltv_value(long _this_ptr);
+ // void PendingHTLCInfo_set_outgoing_cltv_value(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, uint32_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_outgoing_cltv_value")] public static extern void PendingHTLCInfo_set_outgoing_cltv_value(long _this_ptr, int _val);
+ // struct LDKCOption_u64Z PendingHTLCInfo_get_skimmed_fee_msat(const struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_get_skimmed_fee_msat")] public static extern long PendingHTLCInfo_get_skimmed_fee_msat(long _this_ptr);
+ // void PendingHTLCInfo_set_skimmed_fee_msat(struct LDKPendingHTLCInfo *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_set_skimmed_fee_msat")] public static extern void PendingHTLCInfo_set_skimmed_fee_msat(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKPendingHTLCInfo PendingHTLCInfo_new(struct LDKPendingHTLCRouting routing_arg, struct LDKThirtyTwoBytes incoming_shared_secret_arg, struct LDKThirtyTwoBytes payment_hash_arg, struct LDKCOption_u64Z incoming_amt_msat_arg, uint64_t outgoing_amt_msat_arg, uint32_t outgoing_cltv_value_arg, struct LDKCOption_u64Z skimmed_fee_msat_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_new")] public static extern long PendingHTLCInfo_new(long _routing_arg, long _incoming_shared_secret_arg, long _payment_hash_arg, long _incoming_amt_msat_arg, long _outgoing_amt_msat_arg, int _outgoing_cltv_value_arg, long _skimmed_fee_msat_arg);
+ // uint64_t PendingHTLCInfo_clone_ptr(LDKPendingHTLCInfo *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_clone_ptr")] public static extern long PendingHTLCInfo_clone_ptr(long _arg);
+ // struct LDKPendingHTLCInfo PendingHTLCInfo_clone(const struct LDKPendingHTLCInfo *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_clone")] public static extern long PendingHTLCInfo_clone(long _orig);
+ // enum LDKBlindedFailure BlindedFailure_clone(const enum LDKBlindedFailure *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_clone")] public static extern BlindedFailure BlindedFailure_clone(long _orig);
+ // enum LDKBlindedFailure BlindedFailure_from_introduction_node(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_from_introduction_node")] public static extern BlindedFailure BlindedFailure_from_introduction_node();
+ // enum LDKBlindedFailure BlindedFailure_from_blinded_node(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_from_blinded_node")] public static extern BlindedFailure BlindedFailure_from_blinded_node();
+ // uint64_t BlindedFailure_hash(const enum LDKBlindedFailure *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_hash")] public static extern long BlindedFailure_hash(long _o);
+ // bool BlindedFailure_eq(const enum LDKBlindedFailure *NONNULL_PTR a, const enum LDKBlindedFailure *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_eq")] public static extern bool BlindedFailure_eq(long _a, long _b);
// void FailureCode_free(struct LDKFailureCode this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FailureCode_free")] public static extern void FailureCode_free(long _this_ptr);
// uint64_t FailureCode_clone_ptr(LDKFailureCode *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManager_new")] public static extern long ChannelManager_new(long _fee_est, long _chain_monitor, long _tx_broadcaster, long _router, long _logger, long _entropy_source, long _node_signer, long _signer_provider, long _config, long _params, int _current_timestamp);
// MUST_USE_RES struct LDKUserConfig ChannelManager_get_current_default_configuration(const struct LDKChannelManager *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManager_get_current_default_configuration")] public static extern long ChannelManager_get_current_default_configuration(long _this_arg);
- // MUST_USE_RES struct LDKCResult_ThirtyTwoBytesAPIErrorZ ChannelManager_create_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKPublicKey their_network_key, uint64_t channel_value_satoshis, uint64_t push_msat, struct LDKU128 user_channel_id, struct LDKUserConfig override_config);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManager_create_channel")] public static extern long ChannelManager_create_channel(long _this_arg, long _their_network_key, long _channel_value_satoshis, long _push_msat, long _user_channel_id, long _override_config);
+ // MUST_USE_RES struct LDKCResult_ThirtyTwoBytesAPIErrorZ ChannelManager_create_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKPublicKey their_network_key, uint64_t channel_value_satoshis, uint64_t push_msat, struct LDKU128 user_channel_id, struct LDKCOption_ThirtyTwoBytesZ temporary_channel_id, struct LDKUserConfig override_config);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManager_create_channel")] public static extern long ChannelManager_create_channel(long _this_arg, long _their_network_key, long _channel_value_satoshis, long _push_msat, long _user_channel_id, long _temporary_channel_id, long _override_config);
// MUST_USE_RES struct LDKCVec_ChannelDetailsZ ChannelManager_list_channels(const struct LDKChannelManager *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManager_list_channels")] public static extern long ChannelManager_list_channels(long _this_arg);
// MUST_USE_RES struct LDKCVec_ChannelDetailsZ ChannelManager_list_usable_channels(const struct LDKChannelManager *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PhantomRouteHints_write")] public static extern long PhantomRouteHints_write(long _obj);
// struct LDKCResult_PhantomRouteHintsDecodeErrorZ PhantomRouteHints_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PhantomRouteHints_read")] public static extern long PhantomRouteHints_read(long _ser);
+ // struct LDKCVec_u8Z BlindedForward_write(const struct LDKBlindedForward *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_write")] public static extern long BlindedForward_write(long _obj);
+ // struct LDKCResult_BlindedForwardDecodeErrorZ BlindedForward_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedForward_read")] public static extern long BlindedForward_read(long _ser);
+ // struct LDKCVec_u8Z PendingHTLCRouting_write(const struct LDKPendingHTLCRouting *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_write")] public static extern long PendingHTLCRouting_write(long _obj);
+ // struct LDKCResult_PendingHTLCRoutingDecodeErrorZ PendingHTLCRouting_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCRouting_read")] public static extern long PendingHTLCRouting_read(long _ser);
+ // struct LDKCVec_u8Z PendingHTLCInfo_write(const struct LDKPendingHTLCInfo *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_write")] public static extern long PendingHTLCInfo_write(long _obj);
+ // struct LDKCResult_PendingHTLCInfoDecodeErrorZ PendingHTLCInfo_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PendingHTLCInfo_read")] public static extern long PendingHTLCInfo_read(long _ser);
+ // struct LDKCVec_u8Z BlindedFailure_write(const enum LDKBlindedFailure *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_write")] public static extern long BlindedFailure_write(long _obj);
+ // struct LDKCResult_BlindedFailureDecodeErrorZ BlindedFailure_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedFailure_read")] public static extern long BlindedFailure_read(long _ser);
// struct LDKCVec_u8Z ChannelManager_write(const struct LDKChannelManager *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManager_write")] public static extern long ChannelManager_write(long _obj);
// struct LDKCVec_u8Z ChannelShutdownState_write(const enum LDKChannelShutdownState *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelManagerReadArgs_new")] public static extern long ChannelManagerReadArgs_new(long _entropy_source, long _node_signer, long _signer_provider, long _fee_estimator, long _chain_monitor, long _tx_broadcaster, long _router, long _logger, long _default_config, long _channel_monitors);
// struct LDKCResult_C2Tuple_ThirtyTwoBytesChannelManagerZDecodeErrorZ C2Tuple_ThirtyTwoBytesChannelManagerZ_read(struct LDKu8slice ser, struct LDKChannelManagerReadArgs arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_C2Tuple_ThirtyTwoBytesChannelManagerZ_read")] public static extern long C2Tuple_ThirtyTwoBytesChannelManagerZ_read(long _ser, long _arg);
+ // void DelayedPaymentBasepoint_free(struct LDKDelayedPaymentBasepoint this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_free")] public static extern void DelayedPaymentBasepoint_free(long _this_obj);
+ // struct LDKPublicKey DelayedPaymentBasepoint_get_a(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_get_a")] public static extern long DelayedPaymentBasepoint_get_a(long _this_ptr);
+ // void DelayedPaymentBasepoint_set_a(struct LDKDelayedPaymentBasepoint *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_set_a")] public static extern void DelayedPaymentBasepoint_set_a(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKDelayedPaymentBasepoint DelayedPaymentBasepoint_new(struct LDKPublicKey a_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_new")] public static extern long DelayedPaymentBasepoint_new(long _a_arg);
+ // bool DelayedPaymentBasepoint_eq(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR a, const struct LDKDelayedPaymentBasepoint *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_eq")] public static extern bool DelayedPaymentBasepoint_eq(long _a, long _b);
+ // uint64_t DelayedPaymentBasepoint_clone_ptr(LDKDelayedPaymentBasepoint *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_clone_ptr")] public static extern long DelayedPaymentBasepoint_clone_ptr(long _arg);
+ // struct LDKDelayedPaymentBasepoint DelayedPaymentBasepoint_clone(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_clone")] public static extern long DelayedPaymentBasepoint_clone(long _orig);
+ // uint64_t DelayedPaymentBasepoint_hash(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_hash")] public static extern long DelayedPaymentBasepoint_hash(long _o);
+ // MUST_USE_RES struct LDKPublicKey DelayedPaymentBasepoint_to_public_key(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_to_public_key")] public static extern long DelayedPaymentBasepoint_to_public_key(long _this_arg);
+ // struct LDKCVec_u8Z DelayedPaymentBasepoint_write(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_write")] public static extern long DelayedPaymentBasepoint_write(long _obj);
+ // struct LDKCResult_DelayedPaymentBasepointDecodeErrorZ DelayedPaymentBasepoint_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentBasepoint_read")] public static extern long DelayedPaymentBasepoint_read(long _ser);
+ // void DelayedPaymentKey_free(struct LDKDelayedPaymentKey this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_free")] public static extern void DelayedPaymentKey_free(long _this_obj);
+ // struct LDKPublicKey DelayedPaymentKey_get_a(const struct LDKDelayedPaymentKey *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_get_a")] public static extern long DelayedPaymentKey_get_a(long _this_ptr);
+ // void DelayedPaymentKey_set_a(struct LDKDelayedPaymentKey *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_set_a")] public static extern void DelayedPaymentKey_set_a(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKDelayedPaymentKey DelayedPaymentKey_new(struct LDKPublicKey a_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_new")] public static extern long DelayedPaymentKey_new(long _a_arg);
+ // bool DelayedPaymentKey_eq(const struct LDKDelayedPaymentKey *NONNULL_PTR a, const struct LDKDelayedPaymentKey *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_eq")] public static extern bool DelayedPaymentKey_eq(long _a, long _b);
+ // uint64_t DelayedPaymentKey_clone_ptr(LDKDelayedPaymentKey *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_clone_ptr")] public static extern long DelayedPaymentKey_clone_ptr(long _arg);
+ // struct LDKDelayedPaymentKey DelayedPaymentKey_clone(const struct LDKDelayedPaymentKey *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_clone")] public static extern long DelayedPaymentKey_clone(long _orig);
+ // MUST_USE_RES struct LDKDelayedPaymentKey DelayedPaymentKey_from_basepoint(const struct LDKDelayedPaymentBasepoint *NONNULL_PTR countersignatory_basepoint, struct LDKPublicKey per_commitment_point);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_from_basepoint")] public static extern long DelayedPaymentKey_from_basepoint(long _countersignatory_basepoint, long _per_commitment_point);
+ // MUST_USE_RES struct LDKDelayedPaymentKey DelayedPaymentKey_from_secret_key(const uint8_t (*sk)[32]);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_from_secret_key")] public static extern long DelayedPaymentKey_from_secret_key(long _sk);
+ // MUST_USE_RES struct LDKPublicKey DelayedPaymentKey_to_public_key(const struct LDKDelayedPaymentKey *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_to_public_key")] public static extern long DelayedPaymentKey_to_public_key(long _this_arg);
+ // struct LDKCVec_u8Z DelayedPaymentKey_write(const struct LDKDelayedPaymentKey *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_write")] public static extern long DelayedPaymentKey_write(long _obj);
+ // struct LDKCResult_DelayedPaymentKeyDecodeErrorZ DelayedPaymentKey_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentKey_read")] public static extern long DelayedPaymentKey_read(long _ser);
+ // void HtlcBasepoint_free(struct LDKHtlcBasepoint this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_free")] public static extern void HtlcBasepoint_free(long _this_obj);
+ // struct LDKPublicKey HtlcBasepoint_get_a(const struct LDKHtlcBasepoint *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_get_a")] public static extern long HtlcBasepoint_get_a(long _this_ptr);
+ // void HtlcBasepoint_set_a(struct LDKHtlcBasepoint *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_set_a")] public static extern void HtlcBasepoint_set_a(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKHtlcBasepoint HtlcBasepoint_new(struct LDKPublicKey a_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_new")] public static extern long HtlcBasepoint_new(long _a_arg);
+ // bool HtlcBasepoint_eq(const struct LDKHtlcBasepoint *NONNULL_PTR a, const struct LDKHtlcBasepoint *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_eq")] public static extern bool HtlcBasepoint_eq(long _a, long _b);
+ // uint64_t HtlcBasepoint_clone_ptr(LDKHtlcBasepoint *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_clone_ptr")] public static extern long HtlcBasepoint_clone_ptr(long _arg);
+ // struct LDKHtlcBasepoint HtlcBasepoint_clone(const struct LDKHtlcBasepoint *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_clone")] public static extern long HtlcBasepoint_clone(long _orig);
+ // uint64_t HtlcBasepoint_hash(const struct LDKHtlcBasepoint *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_hash")] public static extern long HtlcBasepoint_hash(long _o);
+ // MUST_USE_RES struct LDKPublicKey HtlcBasepoint_to_public_key(const struct LDKHtlcBasepoint *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_to_public_key")] public static extern long HtlcBasepoint_to_public_key(long _this_arg);
+ // struct LDKCVec_u8Z HtlcBasepoint_write(const struct LDKHtlcBasepoint *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_write")] public static extern long HtlcBasepoint_write(long _obj);
+ // struct LDKCResult_HtlcBasepointDecodeErrorZ HtlcBasepoint_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcBasepoint_read")] public static extern long HtlcBasepoint_read(long _ser);
+ // void HtlcKey_free(struct LDKHtlcKey this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_free")] public static extern void HtlcKey_free(long _this_obj);
+ // struct LDKPublicKey HtlcKey_get_a(const struct LDKHtlcKey *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_get_a")] public static extern long HtlcKey_get_a(long _this_ptr);
+ // void HtlcKey_set_a(struct LDKHtlcKey *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_set_a")] public static extern void HtlcKey_set_a(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKHtlcKey HtlcKey_new(struct LDKPublicKey a_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_new")] public static extern long HtlcKey_new(long _a_arg);
+ // bool HtlcKey_eq(const struct LDKHtlcKey *NONNULL_PTR a, const struct LDKHtlcKey *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_eq")] public static extern bool HtlcKey_eq(long _a, long _b);
+ // uint64_t HtlcKey_clone_ptr(LDKHtlcKey *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_clone_ptr")] public static extern long HtlcKey_clone_ptr(long _arg);
+ // struct LDKHtlcKey HtlcKey_clone(const struct LDKHtlcKey *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_clone")] public static extern long HtlcKey_clone(long _orig);
+ // MUST_USE_RES struct LDKHtlcKey HtlcKey_from_basepoint(const struct LDKHtlcBasepoint *NONNULL_PTR countersignatory_basepoint, struct LDKPublicKey per_commitment_point);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_from_basepoint")] public static extern long HtlcKey_from_basepoint(long _countersignatory_basepoint, long _per_commitment_point);
+ // MUST_USE_RES struct LDKHtlcKey HtlcKey_from_secret_key(const uint8_t (*sk)[32]);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_from_secret_key")] public static extern long HtlcKey_from_secret_key(long _sk);
+ // MUST_USE_RES struct LDKPublicKey HtlcKey_to_public_key(const struct LDKHtlcKey *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_to_public_key")] public static extern long HtlcKey_to_public_key(long _this_arg);
+ // struct LDKCVec_u8Z HtlcKey_write(const struct LDKHtlcKey *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_write")] public static extern long HtlcKey_write(long _obj);
+ // struct LDKCResult_HtlcKeyDecodeErrorZ HtlcKey_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_HtlcKey_read")] public static extern long HtlcKey_read(long _ser);
+ // void RevocationBasepoint_free(struct LDKRevocationBasepoint this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_free")] public static extern void RevocationBasepoint_free(long _this_obj);
+ // struct LDKPublicKey RevocationBasepoint_get_a(const struct LDKRevocationBasepoint *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_get_a")] public static extern long RevocationBasepoint_get_a(long _this_ptr);
+ // void RevocationBasepoint_set_a(struct LDKRevocationBasepoint *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_set_a")] public static extern void RevocationBasepoint_set_a(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKRevocationBasepoint RevocationBasepoint_new(struct LDKPublicKey a_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_new")] public static extern long RevocationBasepoint_new(long _a_arg);
+ // bool RevocationBasepoint_eq(const struct LDKRevocationBasepoint *NONNULL_PTR a, const struct LDKRevocationBasepoint *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_eq")] public static extern bool RevocationBasepoint_eq(long _a, long _b);
+ // uint64_t RevocationBasepoint_clone_ptr(LDKRevocationBasepoint *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_clone_ptr")] public static extern long RevocationBasepoint_clone_ptr(long _arg);
+ // struct LDKRevocationBasepoint RevocationBasepoint_clone(const struct LDKRevocationBasepoint *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_clone")] public static extern long RevocationBasepoint_clone(long _orig);
+ // uint64_t RevocationBasepoint_hash(const struct LDKRevocationBasepoint *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_hash")] public static extern long RevocationBasepoint_hash(long _o);
+ // MUST_USE_RES struct LDKPublicKey RevocationBasepoint_to_public_key(const struct LDKRevocationBasepoint *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_to_public_key")] public static extern long RevocationBasepoint_to_public_key(long _this_arg);
+ // struct LDKCVec_u8Z RevocationBasepoint_write(const struct LDKRevocationBasepoint *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_write")] public static extern long RevocationBasepoint_write(long _obj);
+ // struct LDKCResult_RevocationBasepointDecodeErrorZ RevocationBasepoint_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationBasepoint_read")] public static extern long RevocationBasepoint_read(long _ser);
+ // void RevocationKey_free(struct LDKRevocationKey this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_free")] public static extern void RevocationKey_free(long _this_obj);
+ // struct LDKPublicKey RevocationKey_get_a(const struct LDKRevocationKey *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_get_a")] public static extern long RevocationKey_get_a(long _this_ptr);
+ // void RevocationKey_set_a(struct LDKRevocationKey *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_set_a")] public static extern void RevocationKey_set_a(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKRevocationKey RevocationKey_new(struct LDKPublicKey a_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_new")] public static extern long RevocationKey_new(long _a_arg);
+ // bool RevocationKey_eq(const struct LDKRevocationKey *NONNULL_PTR a, const struct LDKRevocationKey *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_eq")] public static extern bool RevocationKey_eq(long _a, long _b);
+ // uint64_t RevocationKey_clone_ptr(LDKRevocationKey *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_clone_ptr")] public static extern long RevocationKey_clone_ptr(long _arg);
+ // struct LDKRevocationKey RevocationKey_clone(const struct LDKRevocationKey *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_clone")] public static extern long RevocationKey_clone(long _orig);
+ // uint64_t RevocationKey_hash(const struct LDKRevocationKey *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_hash")] public static extern long RevocationKey_hash(long _o);
+ // MUST_USE_RES struct LDKRevocationKey RevocationKey_from_basepoint(const struct LDKRevocationBasepoint *NONNULL_PTR countersignatory_basepoint, struct LDKPublicKey per_commitment_point);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_from_basepoint")] public static extern long RevocationKey_from_basepoint(long _countersignatory_basepoint, long _per_commitment_point);
+ // MUST_USE_RES struct LDKPublicKey RevocationKey_to_public_key(const struct LDKRevocationKey *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_to_public_key")] public static extern long RevocationKey_to_public_key(long _this_arg);
+ // struct LDKCVec_u8Z RevocationKey_write(const struct LDKRevocationKey *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_write")] public static extern long RevocationKey_write(long _obj);
+ // struct LDKCResult_RevocationKeyDecodeErrorZ RevocationKey_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevocationKey_read")] public static extern long RevocationKey_read(long _ser);
// void ExpandedKey_free(struct LDKExpandedKey this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ExpandedKey_free")] public static extern void ExpandedKey_free(long _this_obj);
// MUST_USE_RES struct LDKExpandedKey ExpandedKey_new(const uint8_t (*key_material)[32]);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DecodeError_io")] public static extern long DecodeError_io(IOError _a);
// struct LDKDecodeError DecodeError_unsupported_compression(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DecodeError_unsupported_compression")] public static extern long DecodeError_unsupported_compression();
+ // uint64_t DecodeError_hash(const struct LDKDecodeError *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DecodeError_hash")] public static extern long DecodeError_hash(long _o);
// bool DecodeError_eq(const struct LDKDecodeError *NONNULL_PTR a, const struct LDKDecodeError *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DecodeError_eq")] public static extern bool DecodeError_eq(long _a, long _b);
// void Init_free(struct LDKInit this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Init_clone_ptr")] public static extern long Init_clone_ptr(long _arg);
// struct LDKInit Init_clone(const struct LDKInit *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Init_clone")] public static extern long Init_clone(long _orig);
+ // uint64_t Init_hash(const struct LDKInit *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Init_hash")] public static extern long Init_hash(long _o);
// bool Init_eq(const struct LDKInit *NONNULL_PTR a, const struct LDKInit *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Init_eq")] public static extern bool Init_eq(long _a, long _b);
// void ErrorMessage_free(struct LDKErrorMessage this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorMessage_clone_ptr")] public static extern long ErrorMessage_clone_ptr(long _arg);
// struct LDKErrorMessage ErrorMessage_clone(const struct LDKErrorMessage *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorMessage_clone")] public static extern long ErrorMessage_clone(long _orig);
+ // uint64_t ErrorMessage_hash(const struct LDKErrorMessage *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorMessage_hash")] public static extern long ErrorMessage_hash(long _o);
// bool ErrorMessage_eq(const struct LDKErrorMessage *NONNULL_PTR a, const struct LDKErrorMessage *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorMessage_eq")] public static extern bool ErrorMessage_eq(long _a, long _b);
// void WarningMessage_free(struct LDKWarningMessage this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WarningMessage_clone_ptr")] public static extern long WarningMessage_clone_ptr(long _arg);
// struct LDKWarningMessage WarningMessage_clone(const struct LDKWarningMessage *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WarningMessage_clone")] public static extern long WarningMessage_clone(long _orig);
+ // uint64_t WarningMessage_hash(const struct LDKWarningMessage *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WarningMessage_hash")] public static extern long WarningMessage_hash(long _o);
// bool WarningMessage_eq(const struct LDKWarningMessage *NONNULL_PTR a, const struct LDKWarningMessage *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_WarningMessage_eq")] public static extern bool WarningMessage_eq(long _a, long _b);
// void Ping_free(struct LDKPing this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Ping_clone_ptr")] public static extern long Ping_clone_ptr(long _arg);
// struct LDKPing Ping_clone(const struct LDKPing *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Ping_clone")] public static extern long Ping_clone(long _orig);
+ // uint64_t Ping_hash(const struct LDKPing *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Ping_hash")] public static extern long Ping_hash(long _o);
// bool Ping_eq(const struct LDKPing *NONNULL_PTR a, const struct LDKPing *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Ping_eq")] public static extern bool Ping_eq(long _a, long _b);
// void Pong_free(struct LDKPong this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Pong_clone_ptr")] public static extern long Pong_clone_ptr(long _arg);
// struct LDKPong Pong_clone(const struct LDKPong *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Pong_clone")] public static extern long Pong_clone(long _orig);
+ // uint64_t Pong_hash(const struct LDKPong *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Pong_hash")] public static extern long Pong_hash(long _o);
// bool Pong_eq(const struct LDKPong *NONNULL_PTR a, const struct LDKPong *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Pong_eq")] public static extern bool Pong_eq(long _a, long _b);
// void OpenChannel_free(struct LDKOpenChannel this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannel_clone_ptr")] public static extern long OpenChannel_clone_ptr(long _arg);
// struct LDKOpenChannel OpenChannel_clone(const struct LDKOpenChannel *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannel_clone")] public static extern long OpenChannel_clone(long _orig);
+ // uint64_t OpenChannel_hash(const struct LDKOpenChannel *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannel_hash")] public static extern long OpenChannel_hash(long _o);
// bool OpenChannel_eq(const struct LDKOpenChannel *NONNULL_PTR a, const struct LDKOpenChannel *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannel_eq")] public static extern bool OpenChannel_eq(long _a, long _b);
// void OpenChannelV2_free(struct LDKOpenChannelV2 this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannelV2_clone_ptr")] public static extern long OpenChannelV2_clone_ptr(long _arg);
// struct LDKOpenChannelV2 OpenChannelV2_clone(const struct LDKOpenChannelV2 *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannelV2_clone")] public static extern long OpenChannelV2_clone(long _orig);
+ // uint64_t OpenChannelV2_hash(const struct LDKOpenChannelV2 *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannelV2_hash")] public static extern long OpenChannelV2_hash(long _o);
// bool OpenChannelV2_eq(const struct LDKOpenChannelV2 *NONNULL_PTR a, const struct LDKOpenChannelV2 *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OpenChannelV2_eq")] public static extern bool OpenChannelV2_eq(long _a, long _b);
// void AcceptChannel_free(struct LDKAcceptChannel this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannel_clone_ptr")] public static extern long AcceptChannel_clone_ptr(long _arg);
// struct LDKAcceptChannel AcceptChannel_clone(const struct LDKAcceptChannel *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannel_clone")] public static extern long AcceptChannel_clone(long _orig);
+ // uint64_t AcceptChannel_hash(const struct LDKAcceptChannel *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannel_hash")] public static extern long AcceptChannel_hash(long _o);
// bool AcceptChannel_eq(const struct LDKAcceptChannel *NONNULL_PTR a, const struct LDKAcceptChannel *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannel_eq")] public static extern bool AcceptChannel_eq(long _a, long _b);
// void AcceptChannelV2_free(struct LDKAcceptChannelV2 this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannelV2_clone_ptr")] public static extern long AcceptChannelV2_clone_ptr(long _arg);
// struct LDKAcceptChannelV2 AcceptChannelV2_clone(const struct LDKAcceptChannelV2 *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannelV2_clone")] public static extern long AcceptChannelV2_clone(long _orig);
+ // uint64_t AcceptChannelV2_hash(const struct LDKAcceptChannelV2 *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannelV2_hash")] public static extern long AcceptChannelV2_hash(long _o);
// bool AcceptChannelV2_eq(const struct LDKAcceptChannelV2 *NONNULL_PTR a, const struct LDKAcceptChannelV2 *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannelV2_eq")] public static extern bool AcceptChannelV2_eq(long _a, long _b);
// void FundingCreated_free(struct LDKFundingCreated this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingCreated_clone_ptr")] public static extern long FundingCreated_clone_ptr(long _arg);
// struct LDKFundingCreated FundingCreated_clone(const struct LDKFundingCreated *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingCreated_clone")] public static extern long FundingCreated_clone(long _orig);
+ // uint64_t FundingCreated_hash(const struct LDKFundingCreated *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingCreated_hash")] public static extern long FundingCreated_hash(long _o);
// bool FundingCreated_eq(const struct LDKFundingCreated *NONNULL_PTR a, const struct LDKFundingCreated *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingCreated_eq")] public static extern bool FundingCreated_eq(long _a, long _b);
// void FundingSigned_free(struct LDKFundingSigned this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingSigned_clone_ptr")] public static extern long FundingSigned_clone_ptr(long _arg);
// struct LDKFundingSigned FundingSigned_clone(const struct LDKFundingSigned *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingSigned_clone")] public static extern long FundingSigned_clone(long _orig);
+ // uint64_t FundingSigned_hash(const struct LDKFundingSigned *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingSigned_hash")] public static extern long FundingSigned_hash(long _o);
// bool FundingSigned_eq(const struct LDKFundingSigned *NONNULL_PTR a, const struct LDKFundingSigned *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_FundingSigned_eq")] public static extern bool FundingSigned_eq(long _a, long _b);
// void ChannelReady_free(struct LDKChannelReady this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReady_clone_ptr")] public static extern long ChannelReady_clone_ptr(long _arg);
// struct LDKChannelReady ChannelReady_clone(const struct LDKChannelReady *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReady_clone")] public static extern long ChannelReady_clone(long _orig);
+ // uint64_t ChannelReady_hash(const struct LDKChannelReady *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReady_hash")] public static extern long ChannelReady_hash(long _o);
// bool ChannelReady_eq(const struct LDKChannelReady *NONNULL_PTR a, const struct LDKChannelReady *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReady_eq")] public static extern bool ChannelReady_eq(long _a, long _b);
+ // void Stfu_free(struct LDKStfu this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_free")] public static extern void Stfu_free(long _this_obj);
+ // const uint8_t (*Stfu_get_channel_id(const struct LDKStfu *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_get_channel_id")] public static extern long Stfu_get_channel_id(long _this_ptr);
+ // void Stfu_set_channel_id(struct LDKStfu *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_set_channel_id")] public static extern void Stfu_set_channel_id(long _this_ptr, long _val);
+ // uint8_t Stfu_get_initiator(const struct LDKStfu *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_get_initiator")] public static extern byte Stfu_get_initiator(long _this_ptr);
+ // void Stfu_set_initiator(struct LDKStfu *NONNULL_PTR this_ptr, uint8_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_set_initiator")] public static extern void Stfu_set_initiator(long _this_ptr, byte _val);
+ // MUST_USE_RES struct LDKStfu Stfu_new(struct LDKThirtyTwoBytes channel_id_arg, uint8_t initiator_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_new")] public static extern long Stfu_new(long _channel_id_arg, byte _initiator_arg);
+ // uint64_t Stfu_clone_ptr(LDKStfu *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_clone_ptr")] public static extern long Stfu_clone_ptr(long _arg);
+ // struct LDKStfu Stfu_clone(const struct LDKStfu *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_clone")] public static extern long Stfu_clone(long _orig);
+ // bool Stfu_eq(const struct LDKStfu *NONNULL_PTR a, const struct LDKStfu *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_eq")] public static extern bool Stfu_eq(long _a, long _b);
+ // void Splice_free(struct LDKSplice this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_free")] public static extern void Splice_free(long _this_obj);
+ // const uint8_t (*Splice_get_channel_id(const struct LDKSplice *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_get_channel_id")] public static extern long Splice_get_channel_id(long _this_ptr);
+ // void Splice_set_channel_id(struct LDKSplice *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_set_channel_id")] public static extern void Splice_set_channel_id(long _this_ptr, long _val);
+ // const uint8_t (*Splice_get_chain_hash(const struct LDKSplice *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_get_chain_hash")] public static extern long Splice_get_chain_hash(long _this_ptr);
+ // void Splice_set_chain_hash(struct LDKSplice *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_set_chain_hash")] public static extern void Splice_set_chain_hash(long _this_ptr, long _val);
+ // int64_t Splice_get_relative_satoshis(const struct LDKSplice *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_get_relative_satoshis")] public static extern long Splice_get_relative_satoshis(long _this_ptr);
+ // void Splice_set_relative_satoshis(struct LDKSplice *NONNULL_PTR this_ptr, int64_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_set_relative_satoshis")] public static extern void Splice_set_relative_satoshis(long _this_ptr, long _val);
+ // uint32_t Splice_get_funding_feerate_perkw(const struct LDKSplice *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_get_funding_feerate_perkw")] public static extern int Splice_get_funding_feerate_perkw(long _this_ptr);
+ // void Splice_set_funding_feerate_perkw(struct LDKSplice *NONNULL_PTR this_ptr, uint32_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_set_funding_feerate_perkw")] public static extern void Splice_set_funding_feerate_perkw(long _this_ptr, int _val);
+ // uint32_t Splice_get_locktime(const struct LDKSplice *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_get_locktime")] public static extern int Splice_get_locktime(long _this_ptr);
+ // void Splice_set_locktime(struct LDKSplice *NONNULL_PTR this_ptr, uint32_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_set_locktime")] public static extern void Splice_set_locktime(long _this_ptr, int _val);
+ // struct LDKPublicKey Splice_get_funding_pubkey(const struct LDKSplice *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_get_funding_pubkey")] public static extern long Splice_get_funding_pubkey(long _this_ptr);
+ // void Splice_set_funding_pubkey(struct LDKSplice *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_set_funding_pubkey")] public static extern void Splice_set_funding_pubkey(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKSplice Splice_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKThirtyTwoBytes chain_hash_arg, int64_t relative_satoshis_arg, uint32_t funding_feerate_perkw_arg, uint32_t locktime_arg, struct LDKPublicKey funding_pubkey_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_new")] public static extern long Splice_new(long _channel_id_arg, long _chain_hash_arg, long _relative_satoshis_arg, int _funding_feerate_perkw_arg, int _locktime_arg, long _funding_pubkey_arg);
+ // uint64_t Splice_clone_ptr(LDKSplice *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_clone_ptr")] public static extern long Splice_clone_ptr(long _arg);
+ // struct LDKSplice Splice_clone(const struct LDKSplice *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_clone")] public static extern long Splice_clone(long _orig);
+ // bool Splice_eq(const struct LDKSplice *NONNULL_PTR a, const struct LDKSplice *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_eq")] public static extern bool Splice_eq(long _a, long _b);
+ // void SpliceAck_free(struct LDKSpliceAck this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_free")] public static extern void SpliceAck_free(long _this_obj);
+ // const uint8_t (*SpliceAck_get_channel_id(const struct LDKSpliceAck *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_get_channel_id")] public static extern long SpliceAck_get_channel_id(long _this_ptr);
+ // void SpliceAck_set_channel_id(struct LDKSpliceAck *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_set_channel_id")] public static extern void SpliceAck_set_channel_id(long _this_ptr, long _val);
+ // const uint8_t (*SpliceAck_get_chain_hash(const struct LDKSpliceAck *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_get_chain_hash")] public static extern long SpliceAck_get_chain_hash(long _this_ptr);
+ // void SpliceAck_set_chain_hash(struct LDKSpliceAck *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_set_chain_hash")] public static extern void SpliceAck_set_chain_hash(long _this_ptr, long _val);
+ // int64_t SpliceAck_get_relative_satoshis(const struct LDKSpliceAck *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_get_relative_satoshis")] public static extern long SpliceAck_get_relative_satoshis(long _this_ptr);
+ // void SpliceAck_set_relative_satoshis(struct LDKSpliceAck *NONNULL_PTR this_ptr, int64_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_set_relative_satoshis")] public static extern void SpliceAck_set_relative_satoshis(long _this_ptr, long _val);
+ // struct LDKPublicKey SpliceAck_get_funding_pubkey(const struct LDKSpliceAck *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_get_funding_pubkey")] public static extern long SpliceAck_get_funding_pubkey(long _this_ptr);
+ // void SpliceAck_set_funding_pubkey(struct LDKSpliceAck *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_set_funding_pubkey")] public static extern void SpliceAck_set_funding_pubkey(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKSpliceAck SpliceAck_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKThirtyTwoBytes chain_hash_arg, int64_t relative_satoshis_arg, struct LDKPublicKey funding_pubkey_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_new")] public static extern long SpliceAck_new(long _channel_id_arg, long _chain_hash_arg, long _relative_satoshis_arg, long _funding_pubkey_arg);
+ // uint64_t SpliceAck_clone_ptr(LDKSpliceAck *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_clone_ptr")] public static extern long SpliceAck_clone_ptr(long _arg);
+ // struct LDKSpliceAck SpliceAck_clone(const struct LDKSpliceAck *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_clone")] public static extern long SpliceAck_clone(long _orig);
+ // bool SpliceAck_eq(const struct LDKSpliceAck *NONNULL_PTR a, const struct LDKSpliceAck *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_eq")] public static extern bool SpliceAck_eq(long _a, long _b);
+ // void SpliceLocked_free(struct LDKSpliceLocked this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_free")] public static extern void SpliceLocked_free(long _this_obj);
+ // const uint8_t (*SpliceLocked_get_channel_id(const struct LDKSpliceLocked *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_get_channel_id")] public static extern long SpliceLocked_get_channel_id(long _this_ptr);
+ // void SpliceLocked_set_channel_id(struct LDKSpliceLocked *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_set_channel_id")] public static extern void SpliceLocked_set_channel_id(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKSpliceLocked SpliceLocked_new(struct LDKThirtyTwoBytes channel_id_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_new")] public static extern long SpliceLocked_new(long _channel_id_arg);
+ // uint64_t SpliceLocked_clone_ptr(LDKSpliceLocked *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_clone_ptr")] public static extern long SpliceLocked_clone_ptr(long _arg);
+ // struct LDKSpliceLocked SpliceLocked_clone(const struct LDKSpliceLocked *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_clone")] public static extern long SpliceLocked_clone(long _orig);
+ // bool SpliceLocked_eq(const struct LDKSpliceLocked *NONNULL_PTR a, const struct LDKSpliceLocked *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_eq")] public static extern bool SpliceLocked_eq(long _a, long _b);
// void TxAddInput_free(struct LDKTxAddInput this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddInput_free")] public static extern void TxAddInput_free(long _this_obj);
// const uint8_t (*TxAddInput_get_channel_id(const struct LDKTxAddInput *NONNULL_PTR this_ptr))[32];
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddInput_clone_ptr")] public static extern long TxAddInput_clone_ptr(long _arg);
// struct LDKTxAddInput TxAddInput_clone(const struct LDKTxAddInput *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddInput_clone")] public static extern long TxAddInput_clone(long _orig);
+ // uint64_t TxAddInput_hash(const struct LDKTxAddInput *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddInput_hash")] public static extern long TxAddInput_hash(long _o);
// bool TxAddInput_eq(const struct LDKTxAddInput *NONNULL_PTR a, const struct LDKTxAddInput *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddInput_eq")] public static extern bool TxAddInput_eq(long _a, long _b);
// void TxAddOutput_free(struct LDKTxAddOutput this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_get_sats")] public static extern long TxAddOutput_get_sats(long _this_ptr);
// void TxAddOutput_set_sats(struct LDKTxAddOutput *NONNULL_PTR this_ptr, uint64_t val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_set_sats")] public static extern void TxAddOutput_set_sats(long _this_ptr, long _val);
- // struct LDKu8slice TxAddOutput_get_script(const struct LDKTxAddOutput *NONNULL_PTR this_ptr);
+ // struct LDKCVec_u8Z TxAddOutput_get_script(const struct LDKTxAddOutput *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_get_script")] public static extern long TxAddOutput_get_script(long _this_ptr);
// void TxAddOutput_set_script(struct LDKTxAddOutput *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_set_script")] public static extern void TxAddOutput_set_script(long _this_ptr, long _val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_clone_ptr")] public static extern long TxAddOutput_clone_ptr(long _arg);
// struct LDKTxAddOutput TxAddOutput_clone(const struct LDKTxAddOutput *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_clone")] public static extern long TxAddOutput_clone(long _orig);
+ // uint64_t TxAddOutput_hash(const struct LDKTxAddOutput *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_hash")] public static extern long TxAddOutput_hash(long _o);
// bool TxAddOutput_eq(const struct LDKTxAddOutput *NONNULL_PTR a, const struct LDKTxAddOutput *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddOutput_eq")] public static extern bool TxAddOutput_eq(long _a, long _b);
// void TxRemoveInput_free(struct LDKTxRemoveInput this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveInput_clone_ptr")] public static extern long TxRemoveInput_clone_ptr(long _arg);
// struct LDKTxRemoveInput TxRemoveInput_clone(const struct LDKTxRemoveInput *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveInput_clone")] public static extern long TxRemoveInput_clone(long _orig);
+ // uint64_t TxRemoveInput_hash(const struct LDKTxRemoveInput *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveInput_hash")] public static extern long TxRemoveInput_hash(long _o);
// bool TxRemoveInput_eq(const struct LDKTxRemoveInput *NONNULL_PTR a, const struct LDKTxRemoveInput *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveInput_eq")] public static extern bool TxRemoveInput_eq(long _a, long _b);
// void TxRemoveOutput_free(struct LDKTxRemoveOutput this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveOutput_clone_ptr")] public static extern long TxRemoveOutput_clone_ptr(long _arg);
// struct LDKTxRemoveOutput TxRemoveOutput_clone(const struct LDKTxRemoveOutput *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveOutput_clone")] public static extern long TxRemoveOutput_clone(long _orig);
+ // uint64_t TxRemoveOutput_hash(const struct LDKTxRemoveOutput *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveOutput_hash")] public static extern long TxRemoveOutput_hash(long _o);
// bool TxRemoveOutput_eq(const struct LDKTxRemoveOutput *NONNULL_PTR a, const struct LDKTxRemoveOutput *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxRemoveOutput_eq")] public static extern bool TxRemoveOutput_eq(long _a, long _b);
// void TxComplete_free(struct LDKTxComplete this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxComplete_clone_ptr")] public static extern long TxComplete_clone_ptr(long _arg);
// struct LDKTxComplete TxComplete_clone(const struct LDKTxComplete *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxComplete_clone")] public static extern long TxComplete_clone(long _orig);
+ // uint64_t TxComplete_hash(const struct LDKTxComplete *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxComplete_hash")] public static extern long TxComplete_hash(long _o);
// bool TxComplete_eq(const struct LDKTxComplete *NONNULL_PTR a, const struct LDKTxComplete *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxComplete_eq")] public static extern bool TxComplete_eq(long _a, long _b);
// void TxSignatures_free(struct LDKTxSignatures this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxSignatures_clone_ptr")] public static extern long TxSignatures_clone_ptr(long _arg);
// struct LDKTxSignatures TxSignatures_clone(const struct LDKTxSignatures *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxSignatures_clone")] public static extern long TxSignatures_clone(long _orig);
+ // uint64_t TxSignatures_hash(const struct LDKTxSignatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxSignatures_hash")] public static extern long TxSignatures_hash(long _o);
// bool TxSignatures_eq(const struct LDKTxSignatures *NONNULL_PTR a, const struct LDKTxSignatures *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxSignatures_eq")] public static extern bool TxSignatures_eq(long _a, long _b);
// void TxInitRbf_free(struct LDKTxInitRbf this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxInitRbf_clone_ptr")] public static extern long TxInitRbf_clone_ptr(long _arg);
// struct LDKTxInitRbf TxInitRbf_clone(const struct LDKTxInitRbf *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxInitRbf_clone")] public static extern long TxInitRbf_clone(long _orig);
+ // uint64_t TxInitRbf_hash(const struct LDKTxInitRbf *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxInitRbf_hash")] public static extern long TxInitRbf_hash(long _o);
// bool TxInitRbf_eq(const struct LDKTxInitRbf *NONNULL_PTR a, const struct LDKTxInitRbf *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxInitRbf_eq")] public static extern bool TxInitRbf_eq(long _a, long _b);
// void TxAckRbf_free(struct LDKTxAckRbf this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAckRbf_clone_ptr")] public static extern long TxAckRbf_clone_ptr(long _arg);
// struct LDKTxAckRbf TxAckRbf_clone(const struct LDKTxAckRbf *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAckRbf_clone")] public static extern long TxAckRbf_clone(long _orig);
+ // uint64_t TxAckRbf_hash(const struct LDKTxAckRbf *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAckRbf_hash")] public static extern long TxAckRbf_hash(long _o);
// bool TxAckRbf_eq(const struct LDKTxAckRbf *NONNULL_PTR a, const struct LDKTxAckRbf *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAckRbf_eq")] public static extern bool TxAckRbf_eq(long _a, long _b);
// void TxAbort_free(struct LDKTxAbort this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAbort_clone_ptr")] public static extern long TxAbort_clone_ptr(long _arg);
// struct LDKTxAbort TxAbort_clone(const struct LDKTxAbort *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAbort_clone")] public static extern long TxAbort_clone(long _orig);
+ // uint64_t TxAbort_hash(const struct LDKTxAbort *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAbort_hash")] public static extern long TxAbort_hash(long _o);
// bool TxAbort_eq(const struct LDKTxAbort *NONNULL_PTR a, const struct LDKTxAbort *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAbort_eq")] public static extern bool TxAbort_eq(long _a, long _b);
// void Shutdown_free(struct LDKShutdown this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_get_channel_id")] public static extern long Shutdown_get_channel_id(long _this_ptr);
// void Shutdown_set_channel_id(struct LDKShutdown *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_set_channel_id")] public static extern void Shutdown_set_channel_id(long _this_ptr, long _val);
- // struct LDKu8slice Shutdown_get_scriptpubkey(const struct LDKShutdown *NONNULL_PTR this_ptr);
+ // struct LDKCVec_u8Z Shutdown_get_scriptpubkey(const struct LDKShutdown *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_get_scriptpubkey")] public static extern long Shutdown_get_scriptpubkey(long _this_ptr);
// void Shutdown_set_scriptpubkey(struct LDKShutdown *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_set_scriptpubkey")] public static extern void Shutdown_set_scriptpubkey(long _this_ptr, long _val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_clone_ptr")] public static extern long Shutdown_clone_ptr(long _arg);
// struct LDKShutdown Shutdown_clone(const struct LDKShutdown *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_clone")] public static extern long Shutdown_clone(long _orig);
+ // uint64_t Shutdown_hash(const struct LDKShutdown *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_hash")] public static extern long Shutdown_hash(long _o);
// bool Shutdown_eq(const struct LDKShutdown *NONNULL_PTR a, const struct LDKShutdown *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Shutdown_eq")] public static extern bool Shutdown_eq(long _a, long _b);
// void ClosingSignedFeeRange_free(struct LDKClosingSignedFeeRange this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSignedFeeRange_clone_ptr")] public static extern long ClosingSignedFeeRange_clone_ptr(long _arg);
// struct LDKClosingSignedFeeRange ClosingSignedFeeRange_clone(const struct LDKClosingSignedFeeRange *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSignedFeeRange_clone")] public static extern long ClosingSignedFeeRange_clone(long _orig);
+ // uint64_t ClosingSignedFeeRange_hash(const struct LDKClosingSignedFeeRange *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSignedFeeRange_hash")] public static extern long ClosingSignedFeeRange_hash(long _o);
// bool ClosingSignedFeeRange_eq(const struct LDKClosingSignedFeeRange *NONNULL_PTR a, const struct LDKClosingSignedFeeRange *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSignedFeeRange_eq")] public static extern bool ClosingSignedFeeRange_eq(long _a, long _b);
// void ClosingSigned_free(struct LDKClosingSigned this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSigned_clone_ptr")] public static extern long ClosingSigned_clone_ptr(long _arg);
// struct LDKClosingSigned ClosingSigned_clone(const struct LDKClosingSigned *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSigned_clone")] public static extern long ClosingSigned_clone(long _orig);
+ // uint64_t ClosingSigned_hash(const struct LDKClosingSigned *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSigned_hash")] public static extern long ClosingSigned_hash(long _o);
// bool ClosingSigned_eq(const struct LDKClosingSigned *NONNULL_PTR a, const struct LDKClosingSigned *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClosingSigned_eq")] public static extern bool ClosingSigned_eq(long _a, long _b);
// void UpdateAddHTLC_free(struct LDKUpdateAddHTLC this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_get_skimmed_fee_msat")] public static extern long UpdateAddHTLC_get_skimmed_fee_msat(long _this_ptr);
// void UpdateAddHTLC_set_skimmed_fee_msat(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKCOption_u64Z val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_set_skimmed_fee_msat")] public static extern void UpdateAddHTLC_set_skimmed_fee_msat(long _this_ptr, long _val);
+ // struct LDKOnionPacket UpdateAddHTLC_get_onion_routing_packet(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_get_onion_routing_packet")] public static extern long UpdateAddHTLC_get_onion_routing_packet(long _this_ptr);
+ // void UpdateAddHTLC_set_onion_routing_packet(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKOnionPacket val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_set_onion_routing_packet")] public static extern void UpdateAddHTLC_set_onion_routing_packet(long _this_ptr, long _val);
+ // struct LDKPublicKey UpdateAddHTLC_get_blinding_point(const struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_get_blinding_point")] public static extern long UpdateAddHTLC_get_blinding_point(long _this_ptr);
+ // void UpdateAddHTLC_set_blinding_point(struct LDKUpdateAddHTLC *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_set_blinding_point")] public static extern void UpdateAddHTLC_set_blinding_point(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKUpdateAddHTLC UpdateAddHTLC_new(struct LDKThirtyTwoBytes channel_id_arg, uint64_t htlc_id_arg, uint64_t amount_msat_arg, struct LDKThirtyTwoBytes payment_hash_arg, uint32_t cltv_expiry_arg, struct LDKCOption_u64Z skimmed_fee_msat_arg, struct LDKOnionPacket onion_routing_packet_arg, struct LDKPublicKey blinding_point_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_new")] public static extern long UpdateAddHTLC_new(long _channel_id_arg, long _htlc_id_arg, long _amount_msat_arg, long _payment_hash_arg, int _cltv_expiry_arg, long _skimmed_fee_msat_arg, long _onion_routing_packet_arg, long _blinding_point_arg);
// uint64_t UpdateAddHTLC_clone_ptr(LDKUpdateAddHTLC *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_clone_ptr")] public static extern long UpdateAddHTLC_clone_ptr(long _arg);
// struct LDKUpdateAddHTLC UpdateAddHTLC_clone(const struct LDKUpdateAddHTLC *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_clone")] public static extern long UpdateAddHTLC_clone(long _orig);
+ // uint64_t UpdateAddHTLC_hash(const struct LDKUpdateAddHTLC *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_hash")] public static extern long UpdateAddHTLC_hash(long _o);
// bool UpdateAddHTLC_eq(const struct LDKUpdateAddHTLC *NONNULL_PTR a, const struct LDKUpdateAddHTLC *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_eq")] public static extern bool UpdateAddHTLC_eq(long _a, long _b);
// void OnionMessage_free(struct LDKOnionMessage this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessage_clone_ptr")] public static extern long OnionMessage_clone_ptr(long _arg);
// struct LDKOnionMessage OnionMessage_clone(const struct LDKOnionMessage *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessage_clone")] public static extern long OnionMessage_clone(long _orig);
+ // uint64_t OnionMessage_hash(const struct LDKOnionMessage *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessage_hash")] public static extern long OnionMessage_hash(long _o);
// bool OnionMessage_eq(const struct LDKOnionMessage *NONNULL_PTR a, const struct LDKOnionMessage *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessage_eq")] public static extern bool OnionMessage_eq(long _a, long _b);
// void UpdateFulfillHTLC_free(struct LDKUpdateFulfillHTLC this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFulfillHTLC_clone_ptr")] public static extern long UpdateFulfillHTLC_clone_ptr(long _arg);
// struct LDKUpdateFulfillHTLC UpdateFulfillHTLC_clone(const struct LDKUpdateFulfillHTLC *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFulfillHTLC_clone")] public static extern long UpdateFulfillHTLC_clone(long _orig);
+ // uint64_t UpdateFulfillHTLC_hash(const struct LDKUpdateFulfillHTLC *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFulfillHTLC_hash")] public static extern long UpdateFulfillHTLC_hash(long _o);
// bool UpdateFulfillHTLC_eq(const struct LDKUpdateFulfillHTLC *NONNULL_PTR a, const struct LDKUpdateFulfillHTLC *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFulfillHTLC_eq")] public static extern bool UpdateFulfillHTLC_eq(long _a, long _b);
// void UpdateFailHTLC_free(struct LDKUpdateFailHTLC this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailHTLC_clone_ptr")] public static extern long UpdateFailHTLC_clone_ptr(long _arg);
// struct LDKUpdateFailHTLC UpdateFailHTLC_clone(const struct LDKUpdateFailHTLC *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailHTLC_clone")] public static extern long UpdateFailHTLC_clone(long _orig);
+ // uint64_t UpdateFailHTLC_hash(const struct LDKUpdateFailHTLC *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailHTLC_hash")] public static extern long UpdateFailHTLC_hash(long _o);
// bool UpdateFailHTLC_eq(const struct LDKUpdateFailHTLC *NONNULL_PTR a, const struct LDKUpdateFailHTLC *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailHTLC_eq")] public static extern bool UpdateFailHTLC_eq(long _a, long _b);
// void UpdateFailMalformedHTLC_free(struct LDKUpdateFailMalformedHTLC this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailMalformedHTLC_clone_ptr")] public static extern long UpdateFailMalformedHTLC_clone_ptr(long _arg);
// struct LDKUpdateFailMalformedHTLC UpdateFailMalformedHTLC_clone(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailMalformedHTLC_clone")] public static extern long UpdateFailMalformedHTLC_clone(long _orig);
+ // uint64_t UpdateFailMalformedHTLC_hash(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailMalformedHTLC_hash")] public static extern long UpdateFailMalformedHTLC_hash(long _o);
// bool UpdateFailMalformedHTLC_eq(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR a, const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFailMalformedHTLC_eq")] public static extern bool UpdateFailMalformedHTLC_eq(long _a, long _b);
// void CommitmentSigned_free(struct LDKCommitmentSigned this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentSigned_clone_ptr")] public static extern long CommitmentSigned_clone_ptr(long _arg);
// struct LDKCommitmentSigned CommitmentSigned_clone(const struct LDKCommitmentSigned *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentSigned_clone")] public static extern long CommitmentSigned_clone(long _orig);
+ // uint64_t CommitmentSigned_hash(const struct LDKCommitmentSigned *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentSigned_hash")] public static extern long CommitmentSigned_hash(long _o);
// bool CommitmentSigned_eq(const struct LDKCommitmentSigned *NONNULL_PTR a, const struct LDKCommitmentSigned *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentSigned_eq")] public static extern bool CommitmentSigned_eq(long _a, long _b);
// void RevokeAndACK_free(struct LDKRevokeAndACK this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevokeAndACK_clone_ptr")] public static extern long RevokeAndACK_clone_ptr(long _arg);
// struct LDKRevokeAndACK RevokeAndACK_clone(const struct LDKRevokeAndACK *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevokeAndACK_clone")] public static extern long RevokeAndACK_clone(long _orig);
+ // uint64_t RevokeAndACK_hash(const struct LDKRevokeAndACK *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevokeAndACK_hash")] public static extern long RevokeAndACK_hash(long _o);
// bool RevokeAndACK_eq(const struct LDKRevokeAndACK *NONNULL_PTR a, const struct LDKRevokeAndACK *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RevokeAndACK_eq")] public static extern bool RevokeAndACK_eq(long _a, long _b);
// void UpdateFee_free(struct LDKUpdateFee this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFee_clone_ptr")] public static extern long UpdateFee_clone_ptr(long _arg);
// struct LDKUpdateFee UpdateFee_clone(const struct LDKUpdateFee *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFee_clone")] public static extern long UpdateFee_clone(long _orig);
+ // uint64_t UpdateFee_hash(const struct LDKUpdateFee *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFee_hash")] public static extern long UpdateFee_hash(long _o);
// bool UpdateFee_eq(const struct LDKUpdateFee *NONNULL_PTR a, const struct LDKUpdateFee *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFee_eq")] public static extern bool UpdateFee_eq(long _a, long _b);
// void ChannelReestablish_free(struct LDKChannelReestablish this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReestablish_clone_ptr")] public static extern long ChannelReestablish_clone_ptr(long _arg);
// struct LDKChannelReestablish ChannelReestablish_clone(const struct LDKChannelReestablish *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReestablish_clone")] public static extern long ChannelReestablish_clone(long _orig);
+ // uint64_t ChannelReestablish_hash(const struct LDKChannelReestablish *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReestablish_hash")] public static extern long ChannelReestablish_hash(long _o);
// bool ChannelReestablish_eq(const struct LDKChannelReestablish *NONNULL_PTR a, const struct LDKChannelReestablish *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelReestablish_eq")] public static extern bool ChannelReestablish_eq(long _a, long _b);
// void AnnouncementSignatures_free(struct LDKAnnouncementSignatures this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AnnouncementSignatures_clone_ptr")] public static extern long AnnouncementSignatures_clone_ptr(long _arg);
// struct LDKAnnouncementSignatures AnnouncementSignatures_clone(const struct LDKAnnouncementSignatures *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AnnouncementSignatures_clone")] public static extern long AnnouncementSignatures_clone(long _orig);
+ // uint64_t AnnouncementSignatures_hash(const struct LDKAnnouncementSignatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_AnnouncementSignatures_hash")] public static extern long AnnouncementSignatures_hash(long _o);
// bool AnnouncementSignatures_eq(const struct LDKAnnouncementSignatures *NONNULL_PTR a, const struct LDKAnnouncementSignatures *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AnnouncementSignatures_eq")] public static extern bool AnnouncementSignatures_eq(long _a, long _b);
// void SocketAddress_free(struct LDKSocketAddress this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddress_onion_v3")] public static extern long SocketAddress_onion_v3(long _ed25519_pubkey, short _checksum, byte _version, short _port);
// struct LDKSocketAddress SocketAddress_hostname(struct LDKHostname hostname, uint16_t port);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddress_hostname")] public static extern long SocketAddress_hostname(long _hostname, short _port);
+ // uint64_t SocketAddress_hash(const struct LDKSocketAddress *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddress_hash")] public static extern long SocketAddress_hash(long _o);
// bool SocketAddress_eq(const struct LDKSocketAddress *NONNULL_PTR a, const struct LDKSocketAddress *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddress_eq")] public static extern bool SocketAddress_eq(long _a, long _b);
// struct LDKCVec_u8Z SocketAddress_write(const struct LDKSocketAddress *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddressParseError_invalid_port")] public static extern SocketAddressParseError SocketAddressParseError_invalid_port();
// enum LDKSocketAddressParseError SocketAddressParseError_invalid_onion_v3(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddressParseError_invalid_onion_v3")] public static extern SocketAddressParseError SocketAddressParseError_invalid_onion_v3();
+ // uint64_t SocketAddressParseError_hash(const enum LDKSocketAddressParseError *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddressParseError_hash")] public static extern long SocketAddressParseError_hash(long _o);
// bool SocketAddressParseError_eq(const enum LDKSocketAddressParseError *NONNULL_PTR a, const enum LDKSocketAddressParseError *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SocketAddressParseError_eq")] public static extern bool SocketAddressParseError_eq(long _a, long _b);
// struct LDKCResult_SocketAddressSocketAddressParseErrorZ parse_onion_address(struct LDKStr host, uint16_t port);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedNodeAnnouncement_clone_ptr")] public static extern long UnsignedNodeAnnouncement_clone_ptr(long _arg);
// struct LDKUnsignedNodeAnnouncement UnsignedNodeAnnouncement_clone(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedNodeAnnouncement_clone")] public static extern long UnsignedNodeAnnouncement_clone(long _orig);
+ // uint64_t UnsignedNodeAnnouncement_hash(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedNodeAnnouncement_hash")] public static extern long UnsignedNodeAnnouncement_hash(long _o);
// bool UnsignedNodeAnnouncement_eq(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR a, const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedNodeAnnouncement_eq")] public static extern bool UnsignedNodeAnnouncement_eq(long _a, long _b);
// void NodeAnnouncement_free(struct LDKNodeAnnouncement this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAnnouncement_clone_ptr")] public static extern long NodeAnnouncement_clone_ptr(long _arg);
// struct LDKNodeAnnouncement NodeAnnouncement_clone(const struct LDKNodeAnnouncement *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAnnouncement_clone")] public static extern long NodeAnnouncement_clone(long _orig);
+ // uint64_t NodeAnnouncement_hash(const struct LDKNodeAnnouncement *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAnnouncement_hash")] public static extern long NodeAnnouncement_hash(long _o);
// bool NodeAnnouncement_eq(const struct LDKNodeAnnouncement *NONNULL_PTR a, const struct LDKNodeAnnouncement *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAnnouncement_eq")] public static extern bool NodeAnnouncement_eq(long _a, long _b);
// void UnsignedChannelAnnouncement_free(struct LDKUnsignedChannelAnnouncement this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelAnnouncement_clone_ptr")] public static extern long UnsignedChannelAnnouncement_clone_ptr(long _arg);
// struct LDKUnsignedChannelAnnouncement UnsignedChannelAnnouncement_clone(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelAnnouncement_clone")] public static extern long UnsignedChannelAnnouncement_clone(long _orig);
+ // uint64_t UnsignedChannelAnnouncement_hash(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelAnnouncement_hash")] public static extern long UnsignedChannelAnnouncement_hash(long _o);
// bool UnsignedChannelAnnouncement_eq(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR a, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelAnnouncement_eq")] public static extern bool UnsignedChannelAnnouncement_eq(long _a, long _b);
// void ChannelAnnouncement_free(struct LDKChannelAnnouncement this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelAnnouncement_clone_ptr")] public static extern long ChannelAnnouncement_clone_ptr(long _arg);
// struct LDKChannelAnnouncement ChannelAnnouncement_clone(const struct LDKChannelAnnouncement *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelAnnouncement_clone")] public static extern long ChannelAnnouncement_clone(long _orig);
+ // uint64_t ChannelAnnouncement_hash(const struct LDKChannelAnnouncement *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelAnnouncement_hash")] public static extern long ChannelAnnouncement_hash(long _o);
// bool ChannelAnnouncement_eq(const struct LDKChannelAnnouncement *NONNULL_PTR a, const struct LDKChannelAnnouncement *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelAnnouncement_eq")] public static extern bool ChannelAnnouncement_eq(long _a, long _b);
// void UnsignedChannelUpdate_free(struct LDKUnsignedChannelUpdate this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelUpdate_clone_ptr")] public static extern long UnsignedChannelUpdate_clone_ptr(long _arg);
// struct LDKUnsignedChannelUpdate UnsignedChannelUpdate_clone(const struct LDKUnsignedChannelUpdate *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelUpdate_clone")] public static extern long UnsignedChannelUpdate_clone(long _orig);
+ // uint64_t UnsignedChannelUpdate_hash(const struct LDKUnsignedChannelUpdate *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelUpdate_hash")] public static extern long UnsignedChannelUpdate_hash(long _o);
// bool UnsignedChannelUpdate_eq(const struct LDKUnsignedChannelUpdate *NONNULL_PTR a, const struct LDKUnsignedChannelUpdate *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UnsignedChannelUpdate_eq")] public static extern bool UnsignedChannelUpdate_eq(long _a, long _b);
// void ChannelUpdate_free(struct LDKChannelUpdate this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelUpdate_clone_ptr")] public static extern long ChannelUpdate_clone_ptr(long _arg);
// struct LDKChannelUpdate ChannelUpdate_clone(const struct LDKChannelUpdate *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelUpdate_clone")] public static extern long ChannelUpdate_clone(long _orig);
+ // uint64_t ChannelUpdate_hash(const struct LDKChannelUpdate *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelUpdate_hash")] public static extern long ChannelUpdate_hash(long _o);
// bool ChannelUpdate_eq(const struct LDKChannelUpdate *NONNULL_PTR a, const struct LDKChannelUpdate *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelUpdate_eq")] public static extern bool ChannelUpdate_eq(long _a, long _b);
// void QueryChannelRange_free(struct LDKQueryChannelRange this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryChannelRange_clone_ptr")] public static extern long QueryChannelRange_clone_ptr(long _arg);
// struct LDKQueryChannelRange QueryChannelRange_clone(const struct LDKQueryChannelRange *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryChannelRange_clone")] public static extern long QueryChannelRange_clone(long _orig);
+ // uint64_t QueryChannelRange_hash(const struct LDKQueryChannelRange *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryChannelRange_hash")] public static extern long QueryChannelRange_hash(long _o);
// bool QueryChannelRange_eq(const struct LDKQueryChannelRange *NONNULL_PTR a, const struct LDKQueryChannelRange *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryChannelRange_eq")] public static extern bool QueryChannelRange_eq(long _a, long _b);
// void ReplyChannelRange_free(struct LDKReplyChannelRange this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyChannelRange_clone_ptr")] public static extern long ReplyChannelRange_clone_ptr(long _arg);
// struct LDKReplyChannelRange ReplyChannelRange_clone(const struct LDKReplyChannelRange *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyChannelRange_clone")] public static extern long ReplyChannelRange_clone(long _orig);
+ // uint64_t ReplyChannelRange_hash(const struct LDKReplyChannelRange *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyChannelRange_hash")] public static extern long ReplyChannelRange_hash(long _o);
// bool ReplyChannelRange_eq(const struct LDKReplyChannelRange *NONNULL_PTR a, const struct LDKReplyChannelRange *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyChannelRange_eq")] public static extern bool ReplyChannelRange_eq(long _a, long _b);
// void QueryShortChannelIds_free(struct LDKQueryShortChannelIds this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryShortChannelIds_clone_ptr")] public static extern long QueryShortChannelIds_clone_ptr(long _arg);
// struct LDKQueryShortChannelIds QueryShortChannelIds_clone(const struct LDKQueryShortChannelIds *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryShortChannelIds_clone")] public static extern long QueryShortChannelIds_clone(long _orig);
+ // uint64_t QueryShortChannelIds_hash(const struct LDKQueryShortChannelIds *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryShortChannelIds_hash")] public static extern long QueryShortChannelIds_hash(long _o);
// bool QueryShortChannelIds_eq(const struct LDKQueryShortChannelIds *NONNULL_PTR a, const struct LDKQueryShortChannelIds *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_QueryShortChannelIds_eq")] public static extern bool QueryShortChannelIds_eq(long _a, long _b);
// void ReplyShortChannelIdsEnd_free(struct LDKReplyShortChannelIdsEnd this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyShortChannelIdsEnd_clone_ptr")] public static extern long ReplyShortChannelIdsEnd_clone_ptr(long _arg);
// struct LDKReplyShortChannelIdsEnd ReplyShortChannelIdsEnd_clone(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyShortChannelIdsEnd_clone")] public static extern long ReplyShortChannelIdsEnd_clone(long _orig);
+ // uint64_t ReplyShortChannelIdsEnd_hash(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyShortChannelIdsEnd_hash")] public static extern long ReplyShortChannelIdsEnd_hash(long _o);
// bool ReplyShortChannelIdsEnd_eq(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR a, const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReplyShortChannelIdsEnd_eq")] public static extern bool ReplyShortChannelIdsEnd_eq(long _a, long _b);
// void GossipTimestampFilter_free(struct LDKGossipTimestampFilter this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_GossipTimestampFilter_clone_ptr")] public static extern long GossipTimestampFilter_clone_ptr(long _arg);
// struct LDKGossipTimestampFilter GossipTimestampFilter_clone(const struct LDKGossipTimestampFilter *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_GossipTimestampFilter_clone")] public static extern long GossipTimestampFilter_clone(long _orig);
+ // uint64_t GossipTimestampFilter_hash(const struct LDKGossipTimestampFilter *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GossipTimestampFilter_hash")] public static extern long GossipTimestampFilter_hash(long _o);
// bool GossipTimestampFilter_eq(const struct LDKGossipTimestampFilter *NONNULL_PTR a, const struct LDKGossipTimestampFilter *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_GossipTimestampFilter_eq")] public static extern bool GossipTimestampFilter_eq(long _a, long _b);
// void ErrorAction_free(struct LDKErrorAction this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorAction_send_error_message")] public static extern long ErrorAction_send_error_message(long _msg);
// struct LDKErrorAction ErrorAction_send_warning_message(struct LDKWarningMessage msg, enum LDKLevel log_level);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorAction_send_warning_message")] public static extern long ErrorAction_send_warning_message(long _msg, Level _log_level);
+ // uint64_t ErrorAction_hash(const struct LDKErrorAction *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ErrorAction_hash")] public static extern long ErrorAction_hash(long _o);
// void LightningError_free(struct LDKLightningError this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_LightningError_free")] public static extern void LightningError_free(long _this_obj);
// struct LDKStr LightningError_get_err(const struct LDKLightningError *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentUpdate_clone_ptr")] public static extern long CommitmentUpdate_clone_ptr(long _arg);
// struct LDKCommitmentUpdate CommitmentUpdate_clone(const struct LDKCommitmentUpdate *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentUpdate_clone")] public static extern long CommitmentUpdate_clone(long _orig);
+ // uint64_t CommitmentUpdate_hash(const struct LDKCommitmentUpdate *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentUpdate_hash")] public static extern long CommitmentUpdate_hash(long _o);
// bool CommitmentUpdate_eq(const struct LDKCommitmentUpdate *NONNULL_PTR a, const struct LDKCommitmentUpdate *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CommitmentUpdate_eq")] public static extern bool CommitmentUpdate_eq(long _a, long _b);
// void ChannelMessageHandler_free(struct LDKChannelMessageHandler this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RoutingMessageHandler_free")] public static extern void RoutingMessageHandler_free(long _this_ptr);
// void OnionMessageHandler_free(struct LDKOnionMessageHandler this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessageHandler_free")] public static extern void OnionMessageHandler_free(long _this_ptr);
+ // void FinalOnionHopData_free(struct LDKFinalOnionHopData this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_free")] public static extern void FinalOnionHopData_free(long _this_obj);
+ // const uint8_t (*FinalOnionHopData_get_payment_secret(const struct LDKFinalOnionHopData *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_get_payment_secret")] public static extern long FinalOnionHopData_get_payment_secret(long _this_ptr);
+ // void FinalOnionHopData_set_payment_secret(struct LDKFinalOnionHopData *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_set_payment_secret")] public static extern void FinalOnionHopData_set_payment_secret(long _this_ptr, long _val);
+ // uint64_t FinalOnionHopData_get_total_msat(const struct LDKFinalOnionHopData *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_get_total_msat")] public static extern long FinalOnionHopData_get_total_msat(long _this_ptr);
+ // void FinalOnionHopData_set_total_msat(struct LDKFinalOnionHopData *NONNULL_PTR this_ptr, uint64_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_set_total_msat")] public static extern void FinalOnionHopData_set_total_msat(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKFinalOnionHopData FinalOnionHopData_new(struct LDKThirtyTwoBytes payment_secret_arg, uint64_t total_msat_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_new")] public static extern long FinalOnionHopData_new(long _payment_secret_arg, long _total_msat_arg);
+ // uint64_t FinalOnionHopData_clone_ptr(LDKFinalOnionHopData *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_clone_ptr")] public static extern long FinalOnionHopData_clone_ptr(long _arg);
+ // struct LDKFinalOnionHopData FinalOnionHopData_clone(const struct LDKFinalOnionHopData *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_clone")] public static extern long FinalOnionHopData_clone(long _orig);
+ // void OnionPacket_free(struct LDKOnionPacket this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_free")] public static extern void OnionPacket_free(long _this_obj);
+ // uint8_t OnionPacket_get_version(const struct LDKOnionPacket *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_get_version")] public static extern byte OnionPacket_get_version(long _this_ptr);
+ // void OnionPacket_set_version(struct LDKOnionPacket *NONNULL_PTR this_ptr, uint8_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_set_version")] public static extern void OnionPacket_set_version(long _this_ptr, byte _val);
+ // struct LDKCResult_PublicKeySecp256k1ErrorZ OnionPacket_get_public_key(const struct LDKOnionPacket *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_get_public_key")] public static extern long OnionPacket_get_public_key(long _this_ptr);
+ // void OnionPacket_set_public_key(struct LDKOnionPacket *NONNULL_PTR this_ptr, struct LDKCResult_PublicKeySecp256k1ErrorZ val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_set_public_key")] public static extern void OnionPacket_set_public_key(long _this_ptr, long _val);
+ // const uint8_t (*OnionPacket_get_hmac(const struct LDKOnionPacket *NONNULL_PTR this_ptr))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_get_hmac")] public static extern long OnionPacket_get_hmac(long _this_ptr);
+ // void OnionPacket_set_hmac(struct LDKOnionPacket *NONNULL_PTR this_ptr, struct LDKThirtyTwoBytes val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_set_hmac")] public static extern void OnionPacket_set_hmac(long _this_ptr, long _val);
+ // uint64_t OnionPacket_clone_ptr(LDKOnionPacket *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_clone_ptr")] public static extern long OnionPacket_clone_ptr(long _arg);
+ // struct LDKOnionPacket OnionPacket_clone(const struct LDKOnionPacket *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_clone")] public static extern long OnionPacket_clone(long _orig);
+ // uint64_t OnionPacket_hash(const struct LDKOnionPacket *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_hash")] public static extern long OnionPacket_hash(long _o);
+ // bool OnionPacket_eq(const struct LDKOnionPacket *NONNULL_PTR a, const struct LDKOnionPacket *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_eq")] public static extern bool OnionPacket_eq(long _a, long _b);
// struct LDKCVec_u8Z AcceptChannel_write(const struct LDKAcceptChannel *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannel_write")] public static extern long AcceptChannel_write(long _obj);
// struct LDKCResult_AcceptChannelDecodeErrorZ AcceptChannel_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannelV2_write")] public static extern long AcceptChannelV2_write(long _obj);
// struct LDKCResult_AcceptChannelV2DecodeErrorZ AcceptChannelV2_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_AcceptChannelV2_read")] public static extern long AcceptChannelV2_read(long _ser);
+ // struct LDKCVec_u8Z Stfu_write(const struct LDKStfu *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_write")] public static extern long Stfu_write(long _obj);
+ // struct LDKCResult_StfuDecodeErrorZ Stfu_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Stfu_read")] public static extern long Stfu_read(long _ser);
+ // struct LDKCVec_u8Z Splice_write(const struct LDKSplice *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_write")] public static extern long Splice_write(long _obj);
+ // struct LDKCResult_SpliceDecodeErrorZ Splice_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Splice_read")] public static extern long Splice_read(long _ser);
+ // struct LDKCVec_u8Z SpliceAck_write(const struct LDKSpliceAck *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_write")] public static extern long SpliceAck_write(long _obj);
+ // struct LDKCResult_SpliceAckDecodeErrorZ SpliceAck_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceAck_read")] public static extern long SpliceAck_read(long _ser);
+ // struct LDKCVec_u8Z SpliceLocked_write(const struct LDKSpliceLocked *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_write")] public static extern long SpliceLocked_write(long _obj);
+ // struct LDKCResult_SpliceLockedDecodeErrorZ SpliceLocked_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpliceLocked_read")] public static extern long SpliceLocked_read(long _ser);
// struct LDKCVec_u8Z TxAddInput_write(const struct LDKTxAddInput *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxAddInput_write")] public static extern long TxAddInput_write(long _obj);
// struct LDKCResult_TxAddInputDecodeErrorZ TxAddInput_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFulfillHTLC_write")] public static extern long UpdateFulfillHTLC_write(long _obj);
// struct LDKCResult_UpdateFulfillHTLCDecodeErrorZ UpdateFulfillHTLC_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateFulfillHTLC_read")] public static extern long UpdateFulfillHTLC_read(long _ser);
+ // struct LDKCVec_u8Z OnionPacket_write(const struct LDKOnionPacket *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_write")] public static extern long OnionPacket_write(long _obj);
+ // struct LDKCResult_OnionPacketDecodeErrorZ OnionPacket_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionPacket_read")] public static extern long OnionPacket_read(long _ser);
// struct LDKCVec_u8Z UpdateAddHTLC_write(const struct LDKUpdateAddHTLC *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_UpdateAddHTLC_write")] public static extern long UpdateAddHTLC_write(long _obj);
// struct LDKCResult_UpdateAddHTLCDecodeErrorZ UpdateAddHTLC_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessage_read")] public static extern long OnionMessage_read(long _ser);
// struct LDKCVec_u8Z OnionMessage_write(const struct LDKOnionMessage *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessage_write")] public static extern long OnionMessage_write(long _obj);
+ // struct LDKCVec_u8Z FinalOnionHopData_write(const struct LDKFinalOnionHopData *NONNULL_PTR obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_write")] public static extern long FinalOnionHopData_write(long _obj);
+ // struct LDKCResult_FinalOnionHopDataDecodeErrorZ FinalOnionHopData_read(struct LDKu8slice ser);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FinalOnionHopData_read")] public static extern long FinalOnionHopData_read(long _ser);
// struct LDKCVec_u8Z Ping_write(const struct LDKPing *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Ping_write")] public static extern long Ping_write(long _obj);
// struct LDKCResult_PingDecodeErrorZ Ping_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_IgnoringMessageHandler_free")] public static extern void IgnoringMessageHandler_free(long _this_obj);
// MUST_USE_RES struct LDKIgnoringMessageHandler IgnoringMessageHandler_new(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_IgnoringMessageHandler_new")] public static extern long IgnoringMessageHandler_new();
+ // struct LDKEventsProvider IgnoringMessageHandler_as_EventsProvider(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_IgnoringMessageHandler_as_EventsProvider")] public static extern long IgnoringMessageHandler_as_EventsProvider(long _this_arg);
// struct LDKMessageSendEventsProvider IgnoringMessageHandler_as_MessageSendEventsProvider(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_IgnoringMessageHandler_as_MessageSendEventsProvider")] public static extern long IgnoringMessageHandler_as_MessageSendEventsProvider(long _this_arg);
// struct LDKRoutingMessageHandler IgnoringMessageHandler_as_RoutingMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_CounterpartyCommitmentSecrets_read")] public static extern long CounterpartyCommitmentSecrets_read(long _ser);
// struct LDKSecretKey derive_private_key(struct LDKPublicKey per_commitment_point, const uint8_t (*base_secret)[32]);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_derive_private_key")] public static extern long derive_private_key(long _per_commitment_point, long _base_secret);
- // struct LDKPublicKey derive_public_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey base_point);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_derive_public_key")] public static extern long derive_public_key(long _per_commitment_point, long _base_point);
// struct LDKSecretKey derive_private_revocation_key(const uint8_t (*per_commitment_secret)[32], const uint8_t (*countersignatory_revocation_base_secret)[32]);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_derive_private_revocation_key")] public static extern long derive_private_revocation_key(long _per_commitment_secret, long _countersignatory_revocation_base_secret);
- // struct LDKPublicKey derive_public_revocation_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey countersignatory_revocation_base_point);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_derive_public_revocation_key")] public static extern long derive_public_revocation_key(long _per_commitment_point, long _countersignatory_revocation_base_point);
// void TxCreationKeys_free(struct LDKTxCreationKeys this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_free")] public static extern void TxCreationKeys_free(long _this_obj);
// struct LDKPublicKey TxCreationKeys_get_per_commitment_point(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_get_per_commitment_point")] public static extern long TxCreationKeys_get_per_commitment_point(long _this_ptr);
// void TxCreationKeys_set_per_commitment_point(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_set_per_commitment_point")] public static extern void TxCreationKeys_set_per_commitment_point(long _this_ptr, long _val);
- // struct LDKPublicKey TxCreationKeys_get_revocation_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
+ // struct LDKRevocationKey TxCreationKeys_get_revocation_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_get_revocation_key")] public static extern long TxCreationKeys_get_revocation_key(long _this_ptr);
- // void TxCreationKeys_set_revocation_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void TxCreationKeys_set_revocation_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKRevocationKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_set_revocation_key")] public static extern void TxCreationKeys_set_revocation_key(long _this_ptr, long _val);
- // struct LDKPublicKey TxCreationKeys_get_broadcaster_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
+ // struct LDKHtlcKey TxCreationKeys_get_broadcaster_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_get_broadcaster_htlc_key")] public static extern long TxCreationKeys_get_broadcaster_htlc_key(long _this_ptr);
- // void TxCreationKeys_set_broadcaster_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void TxCreationKeys_set_broadcaster_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKHtlcKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_set_broadcaster_htlc_key")] public static extern void TxCreationKeys_set_broadcaster_htlc_key(long _this_ptr, long _val);
- // struct LDKPublicKey TxCreationKeys_get_countersignatory_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
+ // struct LDKHtlcKey TxCreationKeys_get_countersignatory_htlc_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_get_countersignatory_htlc_key")] public static extern long TxCreationKeys_get_countersignatory_htlc_key(long _this_ptr);
- // void TxCreationKeys_set_countersignatory_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void TxCreationKeys_set_countersignatory_htlc_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKHtlcKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_set_countersignatory_htlc_key")] public static extern void TxCreationKeys_set_countersignatory_htlc_key(long _this_ptr, long _val);
- // struct LDKPublicKey TxCreationKeys_get_broadcaster_delayed_payment_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
+ // struct LDKDelayedPaymentKey TxCreationKeys_get_broadcaster_delayed_payment_key(const struct LDKTxCreationKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_get_broadcaster_delayed_payment_key")] public static extern long TxCreationKeys_get_broadcaster_delayed_payment_key(long _this_ptr);
- // void TxCreationKeys_set_broadcaster_delayed_payment_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void TxCreationKeys_set_broadcaster_delayed_payment_key(struct LDKTxCreationKeys *NONNULL_PTR this_ptr, struct LDKDelayedPaymentKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_set_broadcaster_delayed_payment_key")] public static extern void TxCreationKeys_set_broadcaster_delayed_payment_key(long _this_ptr, long _val);
- // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_new(struct LDKPublicKey per_commitment_point_arg, struct LDKPublicKey revocation_key_arg, struct LDKPublicKey broadcaster_htlc_key_arg, struct LDKPublicKey countersignatory_htlc_key_arg, struct LDKPublicKey broadcaster_delayed_payment_key_arg);
+ // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_new(struct LDKPublicKey per_commitment_point_arg, struct LDKRevocationKey revocation_key_arg, struct LDKHtlcKey broadcaster_htlc_key_arg, struct LDKHtlcKey countersignatory_htlc_key_arg, struct LDKDelayedPaymentKey broadcaster_delayed_payment_key_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_new")] public static extern long TxCreationKeys_new(long _per_commitment_point_arg, long _revocation_key_arg, long _broadcaster_htlc_key_arg, long _countersignatory_htlc_key_arg, long _broadcaster_delayed_payment_key_arg);
// bool TxCreationKeys_eq(const struct LDKTxCreationKeys *NONNULL_PTR a, const struct LDKTxCreationKeys *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_eq")] public static extern bool TxCreationKeys_eq(long _a, long _b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_get_funding_pubkey")] public static extern long ChannelPublicKeys_get_funding_pubkey(long _this_ptr);
// void ChannelPublicKeys_set_funding_pubkey(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_set_funding_pubkey")] public static extern void ChannelPublicKeys_set_funding_pubkey(long _this_ptr, long _val);
- // struct LDKPublicKey ChannelPublicKeys_get_revocation_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
+ // struct LDKRevocationBasepoint ChannelPublicKeys_get_revocation_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_get_revocation_basepoint")] public static extern long ChannelPublicKeys_get_revocation_basepoint(long _this_ptr);
- // void ChannelPublicKeys_set_revocation_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void ChannelPublicKeys_set_revocation_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKRevocationBasepoint val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_set_revocation_basepoint")] public static extern void ChannelPublicKeys_set_revocation_basepoint(long _this_ptr, long _val);
// struct LDKPublicKey ChannelPublicKeys_get_payment_point(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_get_payment_point")] public static extern long ChannelPublicKeys_get_payment_point(long _this_ptr);
// void ChannelPublicKeys_set_payment_point(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_set_payment_point")] public static extern void ChannelPublicKeys_set_payment_point(long _this_ptr, long _val);
- // struct LDKPublicKey ChannelPublicKeys_get_delayed_payment_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
+ // struct LDKDelayedPaymentBasepoint ChannelPublicKeys_get_delayed_payment_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_get_delayed_payment_basepoint")] public static extern long ChannelPublicKeys_get_delayed_payment_basepoint(long _this_ptr);
- // void ChannelPublicKeys_set_delayed_payment_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void ChannelPublicKeys_set_delayed_payment_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKDelayedPaymentBasepoint val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_set_delayed_payment_basepoint")] public static extern void ChannelPublicKeys_set_delayed_payment_basepoint(long _this_ptr, long _val);
- // struct LDKPublicKey ChannelPublicKeys_get_htlc_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
+ // struct LDKHtlcBasepoint ChannelPublicKeys_get_htlc_basepoint(const struct LDKChannelPublicKeys *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_get_htlc_basepoint")] public static extern long ChannelPublicKeys_get_htlc_basepoint(long _this_ptr);
- // void ChannelPublicKeys_set_htlc_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void ChannelPublicKeys_set_htlc_basepoint(struct LDKChannelPublicKeys *NONNULL_PTR this_ptr, struct LDKHtlcBasepoint val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_set_htlc_basepoint")] public static extern void ChannelPublicKeys_set_htlc_basepoint(long _this_ptr, long _val);
- // MUST_USE_RES struct LDKChannelPublicKeys ChannelPublicKeys_new(struct LDKPublicKey funding_pubkey_arg, struct LDKPublicKey revocation_basepoint_arg, struct LDKPublicKey payment_point_arg, struct LDKPublicKey delayed_payment_basepoint_arg, struct LDKPublicKey htlc_basepoint_arg);
+ // MUST_USE_RES struct LDKChannelPublicKeys ChannelPublicKeys_new(struct LDKPublicKey funding_pubkey_arg, struct LDKRevocationBasepoint revocation_basepoint_arg, struct LDKPublicKey payment_point_arg, struct LDKDelayedPaymentBasepoint delayed_payment_basepoint_arg, struct LDKHtlcBasepoint htlc_basepoint_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_new")] public static extern long ChannelPublicKeys_new(long _funding_pubkey_arg, long _revocation_basepoint_arg, long _payment_point_arg, long _delayed_payment_basepoint_arg, long _htlc_basepoint_arg);
// uint64_t ChannelPublicKeys_clone_ptr(LDKChannelPublicKeys *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_clone_ptr")] public static extern long ChannelPublicKeys_clone_ptr(long _arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_write")] public static extern long ChannelPublicKeys_write(long _obj);
// struct LDKCResult_ChannelPublicKeysDecodeErrorZ ChannelPublicKeys_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelPublicKeys_read")] public static extern long ChannelPublicKeys_read(long _ser);
- // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_derive_new(struct LDKPublicKey per_commitment_point, struct LDKPublicKey broadcaster_delayed_payment_base, struct LDKPublicKey broadcaster_htlc_base, struct LDKPublicKey countersignatory_revocation_base, struct LDKPublicKey countersignatory_htlc_base);
+ // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_derive_new(struct LDKPublicKey per_commitment_point, const struct LDKDelayedPaymentBasepoint *NONNULL_PTR broadcaster_delayed_payment_base, const struct LDKHtlcBasepoint *NONNULL_PTR broadcaster_htlc_base, const struct LDKRevocationBasepoint *NONNULL_PTR countersignatory_revocation_base, const struct LDKHtlcBasepoint *NONNULL_PTR countersignatory_htlc_base);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_derive_new")] public static extern long TxCreationKeys_derive_new(long _per_commitment_point, long _broadcaster_delayed_payment_base, long _broadcaster_htlc_base, long _countersignatory_revocation_base, long _countersignatory_htlc_base);
// MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_from_channel_static_keys(struct LDKPublicKey per_commitment_point, const struct LDKChannelPublicKeys *NONNULL_PTR broadcaster_keys, const struct LDKChannelPublicKeys *NONNULL_PTR countersignatory_keys);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TxCreationKeys_from_channel_static_keys")] public static extern long TxCreationKeys_from_channel_static_keys(long _per_commitment_point, long _broadcaster_keys, long _countersignatory_keys);
- // struct LDKCVec_u8Z get_revokeable_redeemscript(struct LDKPublicKey revocation_key, uint16_t contest_delay, struct LDKPublicKey broadcaster_delayed_payment_key);
+ // struct LDKCVec_u8Z get_revokeable_redeemscript(const struct LDKRevocationKey *NONNULL_PTR revocation_key, uint16_t contest_delay, const struct LDKDelayedPaymentKey *NONNULL_PTR broadcaster_delayed_payment_key);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_get_revokeable_redeemscript")] public static extern long get_revokeable_redeemscript(long _revocation_key, short _contest_delay, long _broadcaster_delayed_payment_key);
// struct LDKCVec_u8Z get_counterparty_payment_script(const struct LDKChannelTypeFeatures *NONNULL_PTR channel_type_features, struct LDKPublicKey payment_key);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_get_counterparty_payment_script")] public static extern long get_counterparty_payment_script(long _channel_type_features, long _payment_key);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_get_htlc_redeemscript")] public static extern long get_htlc_redeemscript(long _htlc, long _channel_type_features, long _keys);
// struct LDKCVec_u8Z make_funding_redeemscript(struct LDKPublicKey broadcaster, struct LDKPublicKey countersignatory);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_make_funding_redeemscript")] public static extern long make_funding_redeemscript(long _broadcaster, long _countersignatory);
- // struct LDKTransaction build_htlc_transaction(const uint8_t (*commitment_txid)[32], uint32_t feerate_per_kw, uint16_t contest_delay, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc, const struct LDKChannelTypeFeatures *NONNULL_PTR channel_type_features, struct LDKPublicKey broadcaster_delayed_payment_key, struct LDKPublicKey revocation_key);
+ // struct LDKTransaction build_htlc_transaction(const uint8_t (*commitment_txid)[32], uint32_t feerate_per_kw, uint16_t contest_delay, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc, const struct LDKChannelTypeFeatures *NONNULL_PTR channel_type_features, const struct LDKDelayedPaymentKey *NONNULL_PTR broadcaster_delayed_payment_key, const struct LDKRevocationKey *NONNULL_PTR revocation_key);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_build_htlc_transaction")] public static extern long build_htlc_transaction(long _commitment_txid, int _feerate_per_kw, short _contest_delay, long _htlc, long _channel_type_features, long _broadcaster_delayed_payment_key, long _revocation_key);
// struct LDKWitness build_htlc_input_witness(struct LDKECDSASignature local_sig, struct LDKECDSASignature remote_sig, struct LDKCOption_ThirtyTwoBytesZ preimage, struct LDKu8slice redeem_script, const struct LDKChannelTypeFeatures *NONNULL_PTR channel_type_features);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_build_htlc_input_witness")] public static extern long build_htlc_input_witness(long _local_sig, long _remote_sig, long _preimage, long _redeem_script, long _channel_type_features);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelTypeFeatures_clone_ptr")] public static extern long ChannelTypeFeatures_clone_ptr(long _arg);
// struct LDKChannelTypeFeatures ChannelTypeFeatures_clone(const struct LDKChannelTypeFeatures *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelTypeFeatures_clone")] public static extern long ChannelTypeFeatures_clone(long _orig);
+ // uint64_t InitFeatures_hash(const struct LDKInitFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_hash")] public static extern long InitFeatures_hash(long _o);
+ // uint64_t NodeFeatures_hash(const struct LDKNodeFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeFeatures_hash")] public static extern long NodeFeatures_hash(long _o);
+ // uint64_t ChannelFeatures_hash(const struct LDKChannelFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelFeatures_hash")] public static extern long ChannelFeatures_hash(long _o);
+ // uint64_t Bolt11InvoiceFeatures_hash(const struct LDKBolt11InvoiceFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Bolt11InvoiceFeatures_hash")] public static extern long Bolt11InvoiceFeatures_hash(long _o);
+ // uint64_t OfferFeatures_hash(const struct LDKOfferFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OfferFeatures_hash")] public static extern long OfferFeatures_hash(long _o);
+ // uint64_t InvoiceRequestFeatures_hash(const struct LDKInvoiceRequestFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InvoiceRequestFeatures_hash")] public static extern long InvoiceRequestFeatures_hash(long _o);
+ // uint64_t Bolt12InvoiceFeatures_hash(const struct LDKBolt12InvoiceFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Bolt12InvoiceFeatures_hash")] public static extern long Bolt12InvoiceFeatures_hash(long _o);
+ // uint64_t BlindedHopFeatures_hash(const struct LDKBlindedHopFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedHopFeatures_hash")] public static extern long BlindedHopFeatures_hash(long _o);
+ // uint64_t ChannelTypeFeatures_hash(const struct LDKChannelTypeFeatures *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelTypeFeatures_hash")] public static extern long ChannelTypeFeatures_hash(long _o);
// void InitFeatures_free(struct LDKInitFeatures this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_free")] public static extern void InitFeatures_free(long _this_obj);
// void NodeFeatures_free(struct LDKNodeFeatures this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeFeatures_requires_anchors_zero_fee_htlc_tx")] public static extern bool NodeFeatures_requires_anchors_zero_fee_htlc_tx(long _this_arg);
// MUST_USE_RES bool ChannelTypeFeatures_requires_anchors_zero_fee_htlc_tx(const struct LDKChannelTypeFeatures *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelTypeFeatures_requires_anchors_zero_fee_htlc_tx")] public static extern bool ChannelTypeFeatures_requires_anchors_zero_fee_htlc_tx(long _this_arg);
+ // void InitFeatures_set_route_blinding_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_set_route_blinding_optional")] public static extern void InitFeatures_set_route_blinding_optional(long _this_arg);
+ // void InitFeatures_set_route_blinding_required(struct LDKInitFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_set_route_blinding_required")] public static extern void InitFeatures_set_route_blinding_required(long _this_arg);
+ // MUST_USE_RES bool InitFeatures_supports_route_blinding(const struct LDKInitFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_supports_route_blinding")] public static extern bool InitFeatures_supports_route_blinding(long _this_arg);
+ // void NodeFeatures_set_route_blinding_optional(struct LDKNodeFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeFeatures_set_route_blinding_optional")] public static extern void NodeFeatures_set_route_blinding_optional(long _this_arg);
+ // void NodeFeatures_set_route_blinding_required(struct LDKNodeFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeFeatures_set_route_blinding_required")] public static extern void NodeFeatures_set_route_blinding_required(long _this_arg);
+ // MUST_USE_RES bool NodeFeatures_supports_route_blinding(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeFeatures_supports_route_blinding")] public static extern bool NodeFeatures_supports_route_blinding(long _this_arg);
+ // MUST_USE_RES bool InitFeatures_requires_route_blinding(const struct LDKInitFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_requires_route_blinding")] public static extern bool InitFeatures_requires_route_blinding(long _this_arg);
+ // MUST_USE_RES bool NodeFeatures_requires_route_blinding(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeFeatures_requires_route_blinding")] public static extern bool NodeFeatures_requires_route_blinding(long _this_arg);
// void InitFeatures_set_shutdown_any_segwit_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InitFeatures_set_shutdown_any_segwit_optional")] public static extern void InitFeatures_set_shutdown_any_segwit_optional(long _this_arg);
// void InitFeatures_set_shutdown_any_segwit_required(struct LDKInitFeatures *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ShutdownScript_eq")] public static extern bool ShutdownScript_eq(long _a, long _b);
// void InvalidShutdownScript_free(struct LDKInvalidShutdownScript this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InvalidShutdownScript_free")] public static extern void InvalidShutdownScript_free(long _this_obj);
- // struct LDKu8slice InvalidShutdownScript_get_script(const struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr);
+ // struct LDKCVec_u8Z InvalidShutdownScript_get_script(const struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InvalidShutdownScript_get_script")] public static extern long InvalidShutdownScript_get_script(long _this_ptr);
// void InvalidShutdownScript_set_script(struct LDKInvalidShutdownScript *NONNULL_PTR this_ptr, struct LDKCVec_u8Z val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InvalidShutdownScript_set_script")] public static extern void InvalidShutdownScript_set_script(long _this_ptr, long _val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ShutdownScript_new_p2wpkh")] public static extern long ShutdownScript_new_p2wpkh(long _pubkey_hash);
// MUST_USE_RES struct LDKShutdownScript ShutdownScript_new_p2wsh(const uint8_t (*script_hash)[32]);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ShutdownScript_new_p2wsh")] public static extern long ShutdownScript_new_p2wsh(long _script_hash);
- // MUST_USE_RES struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ ShutdownScript_new_witness_program(struct LDKWitnessVersion version, struct LDKu8slice program);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ShutdownScript_new_witness_program")] public static extern long ShutdownScript_new_witness_program(byte _version, long _program);
+ // MUST_USE_RES struct LDKCResult_ShutdownScriptInvalidShutdownScriptZ ShutdownScript_new_witness_program(struct LDKWitnessProgram witness_program);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ShutdownScript_new_witness_program")] public static extern long ShutdownScript_new_witness_program(long _witness_program);
// MUST_USE_RES struct LDKCVec_u8Z ShutdownScript_into_inner(struct LDKShutdownScript this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ShutdownScript_into_inner")] public static extern long ShutdownScript_into_inner(long _this_arg);
// MUST_USE_RES struct LDKPublicKey ShutdownScript_as_legacy_pubkey(const struct LDKShutdownScript *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Offer_supports_chain")] public static extern bool Offer_supports_chain(long _this_arg, long _chain);
// MUST_USE_RES bool Offer_is_expired(const struct LDKOffer *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Offer_is_expired")] public static extern bool Offer_is_expired(long _this_arg);
+ // MUST_USE_RES bool Offer_is_expired_no_std(const struct LDKOffer *NONNULL_PTR this_arg, uint64_t duration_since_epoch);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Offer_is_expired_no_std")] public static extern bool Offer_is_expired_no_std(long _this_arg, long _duration_since_epoch);
// MUST_USE_RES bool Offer_is_valid_quantity(const struct LDKOffer *NONNULL_PTR this_arg, uint64_t quantity);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Offer_is_valid_quantity")] public static extern bool Offer_is_valid_quantity(long _this_arg, long _quantity);
// MUST_USE_RES bool Offer_expects_quantity(const struct LDKOffer *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InvoiceRequest_write")] public static extern long InvoiceRequest_write(long _obj);
// void TaggedHash_free(struct LDKTaggedHash this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_TaggedHash_free")] public static extern void TaggedHash_free(long _this_obj);
+ // uint64_t TaggedHash_clone_ptr(LDKTaggedHash *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TaggedHash_clone_ptr")] public static extern long TaggedHash_clone_ptr(long _arg);
+ // struct LDKTaggedHash TaggedHash_clone(const struct LDKTaggedHash *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TaggedHash_clone")] public static extern long TaggedHash_clone(long _orig);
+ // MUST_USE_RES const uint8_t (*TaggedHash_as_digest(const struct LDKTaggedHash *NONNULL_PTR this_arg))[32];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TaggedHash_as_digest")] public static extern long TaggedHash_as_digest(long _this_arg);
+ // MUST_USE_RES struct LDKStr TaggedHash_tag(const struct LDKTaggedHash *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TaggedHash_tag")] public static extern long TaggedHash_tag(long _this_arg);
+ // MUST_USE_RES struct LDKThirtyTwoBytes TaggedHash_merkle_root(const struct LDKTaggedHash *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_TaggedHash_merkle_root")] public static extern long TaggedHash_merkle_root(long _this_arg);
// void Bolt12ParseError_free(struct LDKBolt12ParseError this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Bolt12ParseError_free")] public static extern void Bolt12ParseError_free(long _this_obj);
// uint64_t Bolt12ParseError_clone_ptr(LDKBolt12ParseError *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Refund_absolute_expiry")] public static extern long Refund_absolute_expiry(long _this_arg);
// MUST_USE_RES bool Refund_is_expired(const struct LDKRefund *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Refund_is_expired")] public static extern bool Refund_is_expired(long _this_arg);
+ // MUST_USE_RES bool Refund_is_expired_no_std(const struct LDKRefund *NONNULL_PTR this_arg, uint64_t duration_since_epoch);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Refund_is_expired_no_std")] public static extern bool Refund_is_expired_no_std(long _this_arg, long _duration_since_epoch);
// MUST_USE_RES struct LDKPrintableString Refund_issuer(const struct LDKRefund *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Refund_issuer")] public static extern long Refund_issuer(long _this_arg);
// MUST_USE_RES struct LDKCVec_BlindedPathZ Refund_paths(const struct LDKRefund *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeId_from_pubkey")] public static extern long NodeId_from_pubkey(long _pubkey);
// MUST_USE_RES struct LDKu8slice NodeId_as_slice(const struct LDKNodeId *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeId_as_slice")] public static extern long NodeId_as_slice(long _this_arg);
+ // MUST_USE_RES const uint8_t (*NodeId_as_array(const struct LDKNodeId *NONNULL_PTR this_arg))[33];
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeId_as_array")] public static extern long NodeId_as_array(long _this_arg);
// MUST_USE_RES struct LDKCResult_PublicKeySecp256k1ErrorZ NodeId_as_pubkey(const struct LDKNodeId *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeId_as_pubkey")] public static extern long NodeId_as_pubkey(long _this_arg);
// uint64_t NodeId_hash(const struct LDKNodeId *NONNULL_PTR o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DirectedChannelInfo_clone")] public static extern long DirectedChannelInfo_clone(long _orig);
// MUST_USE_RES struct LDKChannelInfo DirectedChannelInfo_channel(const struct LDKDirectedChannelInfo *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DirectedChannelInfo_channel")] public static extern long DirectedChannelInfo_channel(long _this_arg);
- // MUST_USE_RES uint64_t DirectedChannelInfo_htlc_maximum_msat(const struct LDKDirectedChannelInfo *NONNULL_PTR this_arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DirectedChannelInfo_htlc_maximum_msat")] public static extern long DirectedChannelInfo_htlc_maximum_msat(long _this_arg);
// MUST_USE_RES struct LDKEffectiveCapacity DirectedChannelInfo_effective_capacity(const struct LDKDirectedChannelInfo *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DirectedChannelInfo_effective_capacity")] public static extern long DirectedChannelInfo_effective_capacity(long _this_arg);
// void EffectiveCapacity_free(struct LDKEffectiveCapacity this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAlias_clone_ptr")] public static extern long NodeAlias_clone_ptr(long _arg);
// struct LDKNodeAlias NodeAlias_clone(const struct LDKNodeAlias *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAlias_clone")] public static extern long NodeAlias_clone(long _orig);
+ // uint64_t NodeAlias_hash(const struct LDKNodeAlias *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAlias_hash")] public static extern long NodeAlias_hash(long _o);
// bool NodeAlias_eq(const struct LDKNodeAlias *NONNULL_PTR a, const struct LDKNodeAlias *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_NodeAlias_eq")] public static extern bool NodeAlias_eq(long _a, long _b);
// struct LDKCVec_u8Z NodeAlias_write(const struct LDKNodeAlias *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReadOnlyNetworkGraph_get_addresses")] public static extern long ReadOnlyNetworkGraph_get_addresses(long _this_arg, long _pubkey);
// void DefaultRouter_free(struct LDKDefaultRouter this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultRouter_free")] public static extern void DefaultRouter_free(long _this_obj);
- // MUST_USE_RES struct LDKDefaultRouter DefaultRouter_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger, struct LDKThirtyTwoBytes random_seed_bytes, struct LDKLockableScore scorer, struct LDKProbabilisticScoringFeeParameters score_params);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultRouter_new")] public static extern long DefaultRouter_new(long _network_graph, long _logger, long _random_seed_bytes, long _scorer, long _score_params);
+ // MUST_USE_RES struct LDKDefaultRouter DefaultRouter_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger, struct LDKEntropySource entropy_source, struct LDKLockableScore scorer, struct LDKProbabilisticScoringFeeParameters score_params);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultRouter_new")] public static extern long DefaultRouter_new(long _network_graph, long _logger, long _entropy_source, long _scorer, long _score_params);
// struct LDKRouter DefaultRouter_as_Router(const struct LDKDefaultRouter *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultRouter_as_Router")] public static extern long DefaultRouter_as_Router(long _this_arg);
+ // struct LDKMessageRouter DefaultRouter_as_MessageRouter(const struct LDKDefaultRouter *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultRouter_as_MessageRouter")] public static extern long DefaultRouter_as_MessageRouter(long _this_arg);
// void Router_free(struct LDKRouter this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Router_free")] public static extern void Router_free(long _this_ptr);
// void ScorerAccountingForInFlightHtlcs_free(struct LDKScorerAccountingForInFlightHtlcs this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_get_previously_failed_channels")] public static extern long PaymentParameters_get_previously_failed_channels(long _this_ptr);
// void PaymentParameters_set_previously_failed_channels(struct LDKPaymentParameters *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_set_previously_failed_channels")] public static extern void PaymentParameters_set_previously_failed_channels(long _this_ptr, long _val);
- // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_new(struct LDKPayee payee_arg, struct LDKCOption_u64Z expiry_time_arg, uint32_t max_total_cltv_expiry_delta_arg, uint8_t max_path_count_arg, uint8_t max_channel_saturation_power_of_half_arg, struct LDKCVec_u64Z previously_failed_channels_arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_new")] public static extern long PaymentParameters_new(long _payee_arg, long _expiry_time_arg, int _max_total_cltv_expiry_delta_arg, byte _max_path_count_arg, byte _max_channel_saturation_power_of_half_arg, long _previously_failed_channels_arg);
+ // struct LDKCVec_u64Z PaymentParameters_get_previously_failed_blinded_path_idxs(const struct LDKPaymentParameters *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_get_previously_failed_blinded_path_idxs")] public static extern long PaymentParameters_get_previously_failed_blinded_path_idxs(long _this_ptr);
+ // void PaymentParameters_set_previously_failed_blinded_path_idxs(struct LDKPaymentParameters *NONNULL_PTR this_ptr, struct LDKCVec_u64Z val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_set_previously_failed_blinded_path_idxs")] public static extern void PaymentParameters_set_previously_failed_blinded_path_idxs(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_new(struct LDKPayee payee_arg, struct LDKCOption_u64Z expiry_time_arg, uint32_t max_total_cltv_expiry_delta_arg, uint8_t max_path_count_arg, uint8_t max_channel_saturation_power_of_half_arg, struct LDKCVec_u64Z previously_failed_channels_arg, struct LDKCVec_u64Z previously_failed_blinded_path_idxs_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_new")] public static extern long PaymentParameters_new(long _payee_arg, long _expiry_time_arg, int _max_total_cltv_expiry_delta_arg, byte _max_path_count_arg, byte _max_channel_saturation_power_of_half_arg, long _previously_failed_channels_arg, long _previously_failed_blinded_path_idxs_arg);
// uint64_t PaymentParameters_clone_ptr(LDKPaymentParameters *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentParameters_clone_ptr")] public static extern long PaymentParameters_clone_ptr(long _arg);
// struct LDKPaymentParameters PaymentParameters_clone(const struct LDKPaymentParameters *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RouteHintHop_write")] public static extern long RouteHintHop_write(long _obj);
// struct LDKCResult_RouteHintHopDecodeErrorZ RouteHintHop_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RouteHintHop_read")] public static extern long RouteHintHop_read(long _ser);
+ // void FirstHopCandidate_free(struct LDKFirstHopCandidate this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FirstHopCandidate_free")] public static extern void FirstHopCandidate_free(long _this_obj);
+ // uint64_t FirstHopCandidate_clone_ptr(LDKFirstHopCandidate *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FirstHopCandidate_clone_ptr")] public static extern long FirstHopCandidate_clone_ptr(long _arg);
+ // struct LDKFirstHopCandidate FirstHopCandidate_clone(const struct LDKFirstHopCandidate *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_FirstHopCandidate_clone")] public static extern long FirstHopCandidate_clone(long _orig);
+ // void PublicHopCandidate_free(struct LDKPublicHopCandidate this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PublicHopCandidate_free")] public static extern void PublicHopCandidate_free(long _this_obj);
+ // uint64_t PublicHopCandidate_get_short_channel_id(const struct LDKPublicHopCandidate *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PublicHopCandidate_get_short_channel_id")] public static extern long PublicHopCandidate_get_short_channel_id(long _this_ptr);
+ // void PublicHopCandidate_set_short_channel_id(struct LDKPublicHopCandidate *NONNULL_PTR this_ptr, uint64_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PublicHopCandidate_set_short_channel_id")] public static extern void PublicHopCandidate_set_short_channel_id(long _this_ptr, long _val);
+ // uint64_t PublicHopCandidate_clone_ptr(LDKPublicHopCandidate *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PublicHopCandidate_clone_ptr")] public static extern long PublicHopCandidate_clone_ptr(long _arg);
+ // struct LDKPublicHopCandidate PublicHopCandidate_clone(const struct LDKPublicHopCandidate *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PublicHopCandidate_clone")] public static extern long PublicHopCandidate_clone(long _orig);
+ // void PrivateHopCandidate_free(struct LDKPrivateHopCandidate this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PrivateHopCandidate_free")] public static extern void PrivateHopCandidate_free(long _this_obj);
+ // uint64_t PrivateHopCandidate_clone_ptr(LDKPrivateHopCandidate *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PrivateHopCandidate_clone_ptr")] public static extern long PrivateHopCandidate_clone_ptr(long _arg);
+ // struct LDKPrivateHopCandidate PrivateHopCandidate_clone(const struct LDKPrivateHopCandidate *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PrivateHopCandidate_clone")] public static extern long PrivateHopCandidate_clone(long _orig);
+ // void BlindedPathCandidate_free(struct LDKBlindedPathCandidate this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPathCandidate_free")] public static extern void BlindedPathCandidate_free(long _this_obj);
+ // uint64_t BlindedPathCandidate_clone_ptr(LDKBlindedPathCandidate *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPathCandidate_clone_ptr")] public static extern long BlindedPathCandidate_clone_ptr(long _arg);
+ // struct LDKBlindedPathCandidate BlindedPathCandidate_clone(const struct LDKBlindedPathCandidate *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPathCandidate_clone")] public static extern long BlindedPathCandidate_clone(long _orig);
+ // void OneHopBlindedPathCandidate_free(struct LDKOneHopBlindedPathCandidate this_obj);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OneHopBlindedPathCandidate_free")] public static extern void OneHopBlindedPathCandidate_free(long _this_obj);
+ // uint64_t OneHopBlindedPathCandidate_clone_ptr(LDKOneHopBlindedPathCandidate *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OneHopBlindedPathCandidate_clone_ptr")] public static extern long OneHopBlindedPathCandidate_clone_ptr(long _arg);
+ // struct LDKOneHopBlindedPathCandidate OneHopBlindedPathCandidate_clone(const struct LDKOneHopBlindedPathCandidate *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OneHopBlindedPathCandidate_clone")] public static extern long OneHopBlindedPathCandidate_clone(long _orig);
+ // void CandidateRouteHop_free(struct LDKCandidateRouteHop this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_free")] public static extern void CandidateRouteHop_free(long _this_ptr);
+ // uint64_t CandidateRouteHop_clone_ptr(LDKCandidateRouteHop *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_clone_ptr")] public static extern long CandidateRouteHop_clone_ptr(long _arg);
+ // struct LDKCandidateRouteHop CandidateRouteHop_clone(const struct LDKCandidateRouteHop *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_clone")] public static extern long CandidateRouteHop_clone(long _orig);
+ // struct LDKCandidateRouteHop CandidateRouteHop_first_hop(struct LDKFirstHopCandidate a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_first_hop")] public static extern long CandidateRouteHop_first_hop(long _a);
+ // struct LDKCandidateRouteHop CandidateRouteHop_public_hop(struct LDKPublicHopCandidate a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_public_hop")] public static extern long CandidateRouteHop_public_hop(long _a);
+ // struct LDKCandidateRouteHop CandidateRouteHop_private_hop(struct LDKPrivateHopCandidate a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_private_hop")] public static extern long CandidateRouteHop_private_hop(long _a);
+ // struct LDKCandidateRouteHop CandidateRouteHop_blinded(struct LDKBlindedPathCandidate a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_blinded")] public static extern long CandidateRouteHop_blinded(long _a);
+ // struct LDKCandidateRouteHop CandidateRouteHop_one_hop_blinded(struct LDKOneHopBlindedPathCandidate a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_one_hop_blinded")] public static extern long CandidateRouteHop_one_hop_blinded(long _a);
+ // MUST_USE_RES struct LDKCOption_u64Z CandidateRouteHop_globally_unique_short_channel_id(const struct LDKCandidateRouteHop *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_globally_unique_short_channel_id")] public static extern long CandidateRouteHop_globally_unique_short_channel_id(long _this_arg);
+ // MUST_USE_RES uint32_t CandidateRouteHop_cltv_expiry_delta(const struct LDKCandidateRouteHop *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_cltv_expiry_delta")] public static extern int CandidateRouteHop_cltv_expiry_delta(long _this_arg);
+ // MUST_USE_RES uint64_t CandidateRouteHop_htlc_minimum_msat(const struct LDKCandidateRouteHop *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_htlc_minimum_msat")] public static extern long CandidateRouteHop_htlc_minimum_msat(long _this_arg);
+ // MUST_USE_RES struct LDKRoutingFees CandidateRouteHop_fees(const struct LDKCandidateRouteHop *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_fees")] public static extern long CandidateRouteHop_fees(long _this_arg);
+ // MUST_USE_RES struct LDKNodeId CandidateRouteHop_source(const struct LDKCandidateRouteHop *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_source")] public static extern long CandidateRouteHop_source(long _this_arg);
+ // MUST_USE_RES struct LDKNodeId CandidateRouteHop_target(const struct LDKCandidateRouteHop *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_CandidateRouteHop_target")] public static extern long CandidateRouteHop_target(long _this_arg);
// struct LDKCResult_RouteLightningErrorZ find_route(struct LDKPublicKey our_node_pubkey, const struct LDKRouteParameters *NONNULL_PTR route_params, const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKCVec_ChannelDetailsZ *first_hops, struct LDKLogger logger, const struct LDKScoreLookUp *NONNULL_PTR scorer, const struct LDKProbabilisticScoringFeeParameters *NONNULL_PTR score_params, const uint8_t (*random_seed_bytes)[32]);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_find_route")] public static extern long find_route(long _our_node_pubkey, long _route_params, long _network_graph, long _first_hops, long _logger, long _scorer, long _score_params, long _random_seed_bytes);
// struct LDKCResult_RouteLightningErrorZ build_route_from_hops(struct LDKPublicKey our_node_pubkey, struct LDKCVec_PublicKeyZ hops, const struct LDKRouteParameters *NONNULL_PTR route_params, const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger, const uint8_t (*random_seed_bytes)[32]);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_get_output")] public static extern long DelayedPaymentOutputDescriptor_get_output(long _this_ptr);
// void DelayedPaymentOutputDescriptor_set_output(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKTxOut val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_set_output")] public static extern void DelayedPaymentOutputDescriptor_set_output(long _this_ptr, long _val);
- // struct LDKPublicKey DelayedPaymentOutputDescriptor_get_revocation_pubkey(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr);
+ // struct LDKRevocationKey DelayedPaymentOutputDescriptor_get_revocation_pubkey(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_get_revocation_pubkey")] public static extern long DelayedPaymentOutputDescriptor_get_revocation_pubkey(long _this_ptr);
- // void DelayedPaymentOutputDescriptor_set_revocation_pubkey(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+ // void DelayedPaymentOutputDescriptor_set_revocation_pubkey(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, struct LDKRevocationKey val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_set_revocation_pubkey")] public static extern void DelayedPaymentOutputDescriptor_set_revocation_pubkey(long _this_ptr, long _val);
// const uint8_t (*DelayedPaymentOutputDescriptor_get_channel_keys_id(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr))[32];
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_get_channel_keys_id")] public static extern long DelayedPaymentOutputDescriptor_get_channel_keys_id(long _this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_get_channel_value_satoshis")] public static extern long DelayedPaymentOutputDescriptor_get_channel_value_satoshis(long _this_ptr);
// void DelayedPaymentOutputDescriptor_set_channel_value_satoshis(struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR this_ptr, uint64_t val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_set_channel_value_satoshis")] public static extern void DelayedPaymentOutputDescriptor_set_channel_value_satoshis(long _this_ptr, long _val);
- // MUST_USE_RES struct LDKDelayedPaymentOutputDescriptor DelayedPaymentOutputDescriptor_new(struct LDKOutPoint outpoint_arg, struct LDKPublicKey per_commitment_point_arg, uint16_t to_self_delay_arg, struct LDKTxOut output_arg, struct LDKPublicKey revocation_pubkey_arg, struct LDKThirtyTwoBytes channel_keys_id_arg, uint64_t channel_value_satoshis_arg);
+ // MUST_USE_RES struct LDKDelayedPaymentOutputDescriptor DelayedPaymentOutputDescriptor_new(struct LDKOutPoint outpoint_arg, struct LDKPublicKey per_commitment_point_arg, uint16_t to_self_delay_arg, struct LDKTxOut output_arg, struct LDKRevocationKey revocation_pubkey_arg, struct LDKThirtyTwoBytes channel_keys_id_arg, uint64_t channel_value_satoshis_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_new")] public static extern long DelayedPaymentOutputDescriptor_new(long _outpoint_arg, long _per_commitment_point_arg, short _to_self_delay_arg, long _output_arg, long _revocation_pubkey_arg, long _channel_keys_id_arg, long _channel_value_satoshis_arg);
// uint64_t DelayedPaymentOutputDescriptor_clone_ptr(LDKDelayedPaymentOutputDescriptor *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DelayedPaymentOutputDescriptor_clone_ptr")] public static extern long DelayedPaymentOutputDescriptor_clone_ptr(long _arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_StaticPaymentOutputDescriptor_eq")] public static extern bool StaticPaymentOutputDescriptor_eq(long _a, long _b);
// MUST_USE_RES struct LDKCOption_CVec_u8ZZ StaticPaymentOutputDescriptor_witness_script(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_StaticPaymentOutputDescriptor_witness_script")] public static extern long StaticPaymentOutputDescriptor_witness_script(long _this_arg);
- // MUST_USE_RES uintptr_t StaticPaymentOutputDescriptor_max_witness_length(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_arg);
+ // MUST_USE_RES uint64_t StaticPaymentOutputDescriptor_max_witness_length(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_StaticPaymentOutputDescriptor_max_witness_length")] public static extern long StaticPaymentOutputDescriptor_max_witness_length(long _this_arg);
// struct LDKCVec_u8Z StaticPaymentOutputDescriptor_write(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_StaticPaymentOutputDescriptor_write")] public static extern long StaticPaymentOutputDescriptor_write(long _obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_clone_ptr")] public static extern long SpendableOutputDescriptor_clone_ptr(long _arg);
// struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_clone(const struct LDKSpendableOutputDescriptor *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_clone")] public static extern long SpendableOutputDescriptor_clone(long _orig);
- // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_output(struct LDKOutPoint outpoint, struct LDKTxOut output);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_static_output")] public static extern long SpendableOutputDescriptor_static_output(long _outpoint, long _output);
+ // struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_output(struct LDKOutPoint outpoint, struct LDKTxOut output, struct LDKThirtyTwoBytes channel_keys_id);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_static_output")] public static extern long SpendableOutputDescriptor_static_output(long _outpoint, long _output, long _channel_keys_id);
// struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_delayed_payment_output(struct LDKDelayedPaymentOutputDescriptor a);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_delayed_payment_output")] public static extern long SpendableOutputDescriptor_delayed_payment_output(long _a);
// struct LDKSpendableOutputDescriptor SpendableOutputDescriptor_static_payment_output(struct LDKStaticPaymentOutputDescriptor a);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_write")] public static extern long SpendableOutputDescriptor_write(long _obj);
// struct LDKCResult_SpendableOutputDescriptorDecodeErrorZ SpendableOutputDescriptor_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_read")] public static extern long SpendableOutputDescriptor_read(long _ser);
- // MUST_USE_RES struct LDKCResult_C2Tuple_CVec_u8ZusizeZNoneZ SpendableOutputDescriptor_create_spendable_outputs_psbt(struct LDKCVec_SpendableOutputDescriptorZ descriptors, struct LDKCVec_TxOutZ outputs, struct LDKCVec_u8Z change_destination_script, uint32_t feerate_sat_per_1000_weight, struct LDKCOption_u32Z locktime);
+ // MUST_USE_RES struct LDKCResult_C2Tuple_CVec_u8Zu64ZNoneZ SpendableOutputDescriptor_create_spendable_outputs_psbt(struct LDKCVec_SpendableOutputDescriptorZ descriptors, struct LDKCVec_TxOutZ outputs, struct LDKCVec_u8Z change_destination_script, uint32_t feerate_sat_per_1000_weight, struct LDKCOption_u32Z locktime);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SpendableOutputDescriptor_create_spendable_outputs_psbt")] public static extern long SpendableOutputDescriptor_create_spendable_outputs_psbt(long _descriptors, long _outputs, long _change_destination_script, int _feerate_sat_per_1000_weight, long _locktime);
// void ChannelDerivationParameters_free(struct LDKChannelDerivationParameters this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelDerivationParameters_free")] public static extern void ChannelDerivationParameters_free(long _this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_HTLCDescriptor_derive_channel_signer")] public static extern long HTLCDescriptor_derive_channel_signer(long _this_arg, long _signer_provider);
// void ChannelSigner_free(struct LDKChannelSigner this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ChannelSigner_free")] public static extern void ChannelSigner_free(long _this_ptr);
- // void EcdsaChannelSigner_free(struct LDKEcdsaChannelSigner this_ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_EcdsaChannelSigner_free")] public static extern void EcdsaChannelSigner_free(long _this_ptr);
- // uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WriteableEcdsaChannelSigner_clone_ptr")] public static extern long WriteableEcdsaChannelSigner_clone_ptr(long _arg);
- // struct LDKWriteableEcdsaChannelSigner WriteableEcdsaChannelSigner_clone(const struct LDKWriteableEcdsaChannelSigner *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WriteableEcdsaChannelSigner_clone")] public static extern long WriteableEcdsaChannelSigner_clone(long _orig);
- // void WriteableEcdsaChannelSigner_free(struct LDKWriteableEcdsaChannelSigner this_ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WriteableEcdsaChannelSigner_free")] public static extern void WriteableEcdsaChannelSigner_free(long _this_ptr);
// enum LDKRecipient Recipient_clone(const enum LDKRecipient *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Recipient_clone")] public static extern Recipient Recipient_clone(long _orig);
// enum LDKRecipient Recipient_node(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InMemorySigner_get_channel_parameters")] public static extern long InMemorySigner_get_channel_parameters(long _this_arg);
// MUST_USE_RES struct LDKChannelTypeFeatures InMemorySigner_channel_type_features(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InMemorySigner_channel_type_features")] public static extern long InMemorySigner_channel_type_features(long _this_arg);
- // MUST_USE_RES struct LDKCResult_CVec_CVec_u8ZZNoneZ InMemorySigner_sign_counterparty_payment_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR descriptor);
+ // MUST_USE_RES struct LDKCResult_WitnessNoneZ InMemorySigner_sign_counterparty_payment_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR descriptor);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InMemorySigner_sign_counterparty_payment_input")] public static extern long InMemorySigner_sign_counterparty_payment_input(long _this_arg, long _spend_tx, long _input_idx, long _descriptor);
- // MUST_USE_RES struct LDKCResult_CVec_CVec_u8ZZNoneZ InMemorySigner_sign_dynamic_p2wsh_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR descriptor);
+ // MUST_USE_RES struct LDKCResult_WitnessNoneZ InMemorySigner_sign_dynamic_p2wsh_input(const struct LDKInMemorySigner *NONNULL_PTR this_arg, struct LDKTransaction spend_tx, uintptr_t input_idx, const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR descriptor);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InMemorySigner_sign_dynamic_p2wsh_input")] public static extern long InMemorySigner_sign_dynamic_p2wsh_input(long _this_arg, long _spend_tx, long _input_idx, long _descriptor);
// struct LDKEntropySource InMemorySigner_as_EntropySource(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_InMemorySigner_as_EntropySource")] public static extern long InMemorySigner_as_EntropySource(long _this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PhantomKeysManager_get_node_secret_key")] public static extern long PhantomKeysManager_get_node_secret_key(long _this_arg);
// MUST_USE_RES struct LDKSecretKey PhantomKeysManager_get_phantom_node_secret_key(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PhantomKeysManager_get_phantom_node_secret_key")] public static extern long PhantomKeysManager_get_phantom_node_secret_key(long _this_arg);
+ // void EcdsaChannelSigner_free(struct LDKEcdsaChannelSigner this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_EcdsaChannelSigner_free")] public static extern void EcdsaChannelSigner_free(long _this_ptr);
+ // uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WriteableEcdsaChannelSigner_clone_ptr")] public static extern long WriteableEcdsaChannelSigner_clone_ptr(long _arg);
+ // struct LDKWriteableEcdsaChannelSigner WriteableEcdsaChannelSigner_clone(const struct LDKWriteableEcdsaChannelSigner *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WriteableEcdsaChannelSigner_clone")] public static extern long WriteableEcdsaChannelSigner_clone(long _orig);
+ // void WriteableEcdsaChannelSigner_free(struct LDKWriteableEcdsaChannelSigner this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_WriteableEcdsaChannelSigner_free")] public static extern void WriteableEcdsaChannelSigner_free(long _this_ptr);
// void OnionMessenger_free(struct LDKOnionMessenger this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessenger_free")] public static extern void OnionMessenger_free(long _this_obj);
// void MessageRouter_free(struct LDKMessageRouter this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageRouter_free")] public static extern void MessageRouter_free(long _this_ptr);
// void DefaultMessageRouter_free(struct LDKDefaultMessageRouter this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultMessageRouter_free")] public static extern void DefaultMessageRouter_free(long _this_obj);
- // MUST_USE_RES struct LDKDefaultMessageRouter DefaultMessageRouter_new(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultMessageRouter_new")] public static extern long DefaultMessageRouter_new();
+ // MUST_USE_RES struct LDKDefaultMessageRouter DefaultMessageRouter_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKEntropySource entropy_source);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultMessageRouter_new")] public static extern long DefaultMessageRouter_new(long _network_graph, long _entropy_source);
// struct LDKMessageRouter DefaultMessageRouter_as_MessageRouter(const struct LDKDefaultMessageRouter *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_DefaultMessageRouter_as_MessageRouter")] public static extern long DefaultMessageRouter_as_MessageRouter(long _this_arg);
// void OnionMessagePath_free(struct LDKOnionMessagePath this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_get_destination")] public static extern long OnionMessagePath_get_destination(long _this_ptr);
// void OnionMessagePath_set_destination(struct LDKOnionMessagePath *NONNULL_PTR this_ptr, struct LDKDestination val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_set_destination")] public static extern void OnionMessagePath_set_destination(long _this_ptr, long _val);
- // MUST_USE_RES struct LDKOnionMessagePath OnionMessagePath_new(struct LDKCVec_PublicKeyZ intermediate_nodes_arg, struct LDKDestination destination_arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_new")] public static extern long OnionMessagePath_new(long _intermediate_nodes_arg, long _destination_arg);
+ // struct LDKCOption_CVec_SocketAddressZZ OnionMessagePath_get_first_node_addresses(const struct LDKOnionMessagePath *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_get_first_node_addresses")] public static extern long OnionMessagePath_get_first_node_addresses(long _this_ptr);
+ // void OnionMessagePath_set_first_node_addresses(struct LDKOnionMessagePath *NONNULL_PTR this_ptr, struct LDKCOption_CVec_SocketAddressZZ val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_set_first_node_addresses")] public static extern void OnionMessagePath_set_first_node_addresses(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKOnionMessagePath OnionMessagePath_new(struct LDKCVec_PublicKeyZ intermediate_nodes_arg, struct LDKDestination destination_arg, struct LDKCOption_CVec_SocketAddressZZ first_node_addresses_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_new")] public static extern long OnionMessagePath_new(long _intermediate_nodes_arg, long _destination_arg, long _first_node_addresses_arg);
// uint64_t OnionMessagePath_clone_ptr(LDKOnionMessagePath *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_clone_ptr")] public static extern long OnionMessagePath_clone_ptr(long _arg);
// struct LDKOnionMessagePath OnionMessagePath_clone(const struct LDKOnionMessagePath *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_clone")] public static extern long OnionMessagePath_clone(long _orig);
+ // MUST_USE_RES struct LDKPublicKey OnionMessagePath_first_node(const struct LDKOnionMessagePath *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessagePath_first_node")] public static extern long OnionMessagePath_first_node(long _this_arg);
// void Destination_free(struct LDKDestination this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Destination_free")] public static extern void Destination_free(long _this_ptr);
// uint64_t Destination_clone_ptr(LDKDestination *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Destination_node")] public static extern long Destination_node(long _a);
// struct LDKDestination Destination_blinded_path(struct LDKBlindedPath a);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Destination_blinded_path")] public static extern long Destination_blinded_path(long _a);
+ // void SendSuccess_free(struct LDKSendSuccess this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendSuccess_free")] public static extern void SendSuccess_free(long _this_ptr);
+ // uint64_t SendSuccess_clone_ptr(LDKSendSuccess *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendSuccess_clone_ptr")] public static extern long SendSuccess_clone_ptr(long _arg);
+ // struct LDKSendSuccess SendSuccess_clone(const struct LDKSendSuccess *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendSuccess_clone")] public static extern long SendSuccess_clone(long _orig);
+ // struct LDKSendSuccess SendSuccess_buffered(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendSuccess_buffered")] public static extern long SendSuccess_buffered();
+ // struct LDKSendSuccess SendSuccess_buffered_awaiting_connection(struct LDKPublicKey a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendSuccess_buffered_awaiting_connection")] public static extern long SendSuccess_buffered_awaiting_connection(long _a);
+ // bool SendSuccess_eq(const struct LDKSendSuccess *NONNULL_PTR a, const struct LDKSendSuccess *NONNULL_PTR b);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendSuccess_eq")] public static extern bool SendSuccess_eq(long _a, long _b);
// void SendError_free(struct LDKSendError this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_free")] public static extern void SendError_free(long _this_ptr);
// uint64_t SendError_clone_ptr(LDKSendError *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_too_big_packet")] public static extern long SendError_too_big_packet();
// struct LDKSendError SendError_too_few_blinded_hops(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_too_few_blinded_hops")] public static extern long SendError_too_few_blinded_hops();
- // struct LDKSendError SendError_invalid_first_hop(void);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_invalid_first_hop")] public static extern long SendError_invalid_first_hop();
+ // struct LDKSendError SendError_invalid_first_hop(struct LDKPublicKey a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_invalid_first_hop")] public static extern long SendError_invalid_first_hop(long _a);
+ // struct LDKSendError SendError_path_not_found(void);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_path_not_found")] public static extern long SendError_path_not_found();
// struct LDKSendError SendError_invalid_message(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SendError_invalid_message")] public static extern long SendError_invalid_message();
// struct LDKSendError SendError_buffer_full(void);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PeeledOnion_forward")] public static extern long PeeledOnion_forward(long _a, long _b);
// struct LDKPeeledOnion PeeledOnion_receive(struct LDKParsedOnionMessageContents a, struct LDKThirtyTwoBytes b, struct LDKBlindedPath c);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PeeledOnion_receive")] public static extern long PeeledOnion_receive(long _a, long _b, long _c);
- // struct LDKCResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ create_onion_message(const struct LDKEntropySource *NONNULL_PTR entropy_source, const struct LDKNodeSigner *NONNULL_PTR node_signer, struct LDKOnionMessagePath path, struct LDKOnionMessageContents contents, struct LDKBlindedPath reply_path);
+ // struct LDKCResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ create_onion_message(const struct LDKEntropySource *NONNULL_PTR entropy_source, const struct LDKNodeSigner *NONNULL_PTR node_signer, struct LDKOnionMessagePath path, struct LDKOnionMessageContents contents, struct LDKBlindedPath reply_path);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_create_onion_message")] public static extern long create_onion_message(long _entropy_source, long _node_signer, long _path, long _contents, long _reply_path);
// struct LDKCResult_PeeledOnionNoneZ peel_onion_message(const struct LDKOnionMessage *NONNULL_PTR msg, struct LDKNodeSigner node_signer, struct LDKLogger logger, struct LDKCustomOnionMessageHandler custom_handler);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_peel_onion_message")] public static extern long peel_onion_message(long _msg, long _node_signer, long _logger, long _custom_handler);
// MUST_USE_RES struct LDKOnionMessenger OnionMessenger_new(struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKLogger logger, struct LDKMessageRouter message_router, struct LDKOffersMessageHandler offers_handler, struct LDKCustomOnionMessageHandler custom_handler);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessenger_new")] public static extern long OnionMessenger_new(long _entropy_source, long _node_signer, long _logger, long _message_router, long _offers_handler, long _custom_handler);
- // MUST_USE_RES struct LDKCResult_NoneSendErrorZ OnionMessenger_send_onion_message(const struct LDKOnionMessenger *NONNULL_PTR this_arg, struct LDKOnionMessagePath path, struct LDKOnionMessageContents contents, struct LDKBlindedPath reply_path);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessenger_send_onion_message")] public static extern long OnionMessenger_send_onion_message(long _this_arg, long _path, long _contents, long _reply_path);
+ // MUST_USE_RES struct LDKCResult_SendSuccessSendErrorZ OnionMessenger_send_onion_message(const struct LDKOnionMessenger *NONNULL_PTR this_arg, struct LDKOnionMessageContents contents, struct LDKDestination destination, struct LDKBlindedPath reply_path);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessenger_send_onion_message")] public static extern long OnionMessenger_send_onion_message(long _this_arg, long _contents, long _destination, long _reply_path);
// struct LDKOnionMessageHandler OnionMessenger_as_OnionMessageHandler(const struct LDKOnionMessenger *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OnionMessenger_as_OnionMessageHandler")] public static extern long OnionMessenger_as_OnionMessageHandler(long _this_arg);
// void OffersMessageHandler_free(struct LDKOffersMessageHandler this_ptr);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OffersMessage_invoice_error")] public static extern long OffersMessage_invoice_error(long _a);
// MUST_USE_RES bool OffersMessage_is_known_type(uint64_t tlv_type);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OffersMessage_is_known_type")] public static extern bool OffersMessage_is_known_type(long _tlv_type);
+ // struct LDKOnionMessageContents OffersMessage_as_OnionMessageContents(const struct LDKOffersMessage *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_OffersMessage_as_OnionMessageContents")] public static extern long OffersMessage_as_OnionMessageContents(long _this_arg);
// struct LDKCVec_u8Z OffersMessage_write(const struct LDKOffersMessage *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_OffersMessage_write")] public static extern long OffersMessage_write(long _obj);
// struct LDKCResult_OffersMessageDecodeErrorZ OffersMessage_read(struct LDKu8slice ser, uint64_t arg_a, const struct LDKLogger *NONNULL_PTR arg_b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Packet_clone_ptr")] public static extern long Packet_clone_ptr(long _arg);
// struct LDKPacket Packet_clone(const struct LDKPacket *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Packet_clone")] public static extern long Packet_clone(long _orig);
+ // uint64_t Packet_hash(const struct LDKPacket *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Packet_hash")] public static extern long Packet_hash(long _o);
// bool Packet_eq(const struct LDKPacket *NONNULL_PTR a, const struct LDKPacket *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Packet_eq")] public static extern bool Packet_eq(long _a, long _b);
// struct LDKCVec_u8Z Packet_write(const struct LDKPacket *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPath_new_for_message")] public static extern long BlindedPath_new_for_message(long _node_pks, long _entropy_source);
// MUST_USE_RES struct LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ BlindedPath_one_hop_for_payment(struct LDKPublicKey payee_node_id, struct LDKReceiveTlvs payee_tlvs, const struct LDKEntropySource *NONNULL_PTR entropy_source);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPath_one_hop_for_payment")] public static extern long BlindedPath_one_hop_for_payment(long _payee_node_id, long _payee_tlvs, long _entropy_source);
+ // MUST_USE_RES struct LDKCResult_C2Tuple_BlindedPayInfoBlindedPathZNoneZ BlindedPath_new_for_payment(struct LDKCVec_ForwardNodeZ intermediate_nodes, struct LDKPublicKey payee_node_id, struct LDKReceiveTlvs payee_tlvs, uint64_t htlc_maximum_msat, const struct LDKEntropySource *NONNULL_PTR entropy_source);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPath_new_for_payment")] public static extern long BlindedPath_new_for_payment(long _intermediate_nodes, long _payee_node_id, long _payee_tlvs, long _htlc_maximum_msat, long _entropy_source);
// struct LDKCVec_u8Z BlindedPath_write(const struct LDKBlindedPath *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_BlindedPath_write")] public static extern long BlindedPath_write(long _obj);
// struct LDKCResult_BlindedPathDecodeErrorZ BlindedPath_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ForwardTlvs_write")] public static extern long ForwardTlvs_write(long _obj);
// struct LDKCVec_u8Z ReceiveTlvs_write(const struct LDKReceiveTlvs *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReceiveTlvs_write")] public static extern long ReceiveTlvs_write(long _obj);
- // struct LDKCResult_ReceiveTlvsDecodeErrorZ ReceiveTlvs_read(struct LDKu8slice ser);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ReceiveTlvs_read")] public static extern long ReceiveTlvs_read(long _ser);
// struct LDKCVec_u8Z PaymentRelay_write(const struct LDKPaymentRelay *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentRelay_write")] public static extern long PaymentRelay_write(long _obj);
// struct LDKCResult_PaymentRelayDecodeErrorZ PaymentRelay_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentPurpose_spontaneous_payment")] public static extern long PaymentPurpose_spontaneous_payment(long _a);
// bool PaymentPurpose_eq(const struct LDKPaymentPurpose *NONNULL_PTR a, const struct LDKPaymentPurpose *NONNULL_PTR b);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentPurpose_eq")] public static extern bool PaymentPurpose_eq(long _a, long _b);
+ // MUST_USE_RES struct LDKCOption_ThirtyTwoBytesZ PaymentPurpose_preimage(const struct LDKPaymentPurpose *NONNULL_PTR this_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentPurpose_preimage")] public static extern long PaymentPurpose_preimage(long _this_arg);
// struct LDKCVec_u8Z PaymentPurpose_write(const struct LDKPaymentPurpose *NONNULL_PTR obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentPurpose_write")] public static extern long PaymentPurpose_write(long _obj);
// struct LDKCResult_PaymentPurposeDecodeErrorZ PaymentPurpose_read(struct LDKu8slice ser);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_get_value_msat")] public static extern long ClaimedHTLC_get_value_msat(long _this_ptr);
// void ClaimedHTLC_set_value_msat(struct LDKClaimedHTLC *NONNULL_PTR this_ptr, uint64_t val);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_set_value_msat")] public static extern void ClaimedHTLC_set_value_msat(long _this_ptr, long _val);
- // MUST_USE_RES struct LDKClaimedHTLC ClaimedHTLC_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKU128 user_channel_id_arg, uint32_t cltv_expiry_arg, uint64_t value_msat_arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_new")] public static extern long ClaimedHTLC_new(long _channel_id_arg, long _user_channel_id_arg, int _cltv_expiry_arg, long _value_msat_arg);
+ // uint64_t ClaimedHTLC_get_counterparty_skimmed_fee_msat(const struct LDKClaimedHTLC *NONNULL_PTR this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_get_counterparty_skimmed_fee_msat")] public static extern long ClaimedHTLC_get_counterparty_skimmed_fee_msat(long _this_ptr);
+ // void ClaimedHTLC_set_counterparty_skimmed_fee_msat(struct LDKClaimedHTLC *NONNULL_PTR this_ptr, uint64_t val);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_set_counterparty_skimmed_fee_msat")] public static extern void ClaimedHTLC_set_counterparty_skimmed_fee_msat(long _this_ptr, long _val);
+ // MUST_USE_RES struct LDKClaimedHTLC ClaimedHTLC_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKU128 user_channel_id_arg, uint32_t cltv_expiry_arg, uint64_t value_msat_arg, uint64_t counterparty_skimmed_fee_msat_arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_new")] public static extern long ClaimedHTLC_new(long _channel_id_arg, long _user_channel_id_arg, int _cltv_expiry_arg, long _value_msat_arg, long _counterparty_skimmed_fee_msat_arg);
// uint64_t ClaimedHTLC_clone_ptr(LDKClaimedHTLC *NONNULL_PTR arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ClaimedHTLC_clone_ptr")] public static extern long ClaimedHTLC_clone_ptr(long _arg);
// struct LDKClaimedHTLC ClaimedHTLC_clone(const struct LDKClaimedHTLC *NONNULL_PTR orig);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_payment_claimable")] public static extern long Event_payment_claimable(long _receiver_node_id, long _payment_hash, long _onion_fields, long _amount_msat, long _counterparty_skimmed_fee_msat, long _purpose, long _via_channel_id, long _via_user_channel_id, long _claim_deadline);
// struct LDKEvent Event_payment_claimed(struct LDKPublicKey receiver_node_id, struct LDKThirtyTwoBytes payment_hash, uint64_t amount_msat, struct LDKPaymentPurpose purpose, struct LDKCVec_ClaimedHTLCZ htlcs, struct LDKCOption_u64Z sender_intended_total_msat);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_payment_claimed")] public static extern long Event_payment_claimed(long _receiver_node_id, long _payment_hash, long _amount_msat, long _purpose, long _htlcs, long _sender_intended_total_msat);
+ // struct LDKEvent Event_connection_needed(struct LDKPublicKey node_id, struct LDKCVec_SocketAddressZ addresses);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_connection_needed")] public static extern long Event_connection_needed(long _node_id, long _addresses);
// struct LDKEvent Event_invoice_request_failed(struct LDKThirtyTwoBytes payment_id);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_invoice_request_failed")] public static extern long Event_invoice_request_failed(long _payment_id);
// struct LDKEvent Event_payment_sent(struct LDKCOption_ThirtyTwoBytesZ payment_id, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z fee_paid_msat);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_channel_pending")] public static extern long Event_channel_pending(long _channel_id, long _user_channel_id, long _former_temporary_channel_id, long _counterparty_node_id, long _funding_txo);
// struct LDKEvent Event_channel_ready(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKPublicKey counterparty_node_id, struct LDKChannelTypeFeatures channel_type);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_channel_ready")] public static extern long Event_channel_ready(long _channel_id, long _user_channel_id, long _counterparty_node_id, long _channel_type);
- // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKClosureReason reason, struct LDKPublicKey counterparty_node_id, struct LDKCOption_u64Z channel_capacity_sats);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_channel_closed")] public static extern long Event_channel_closed(long _channel_id, long _user_channel_id, long _reason, long _counterparty_node_id, long _channel_capacity_sats);
+ // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKClosureReason reason, struct LDKPublicKey counterparty_node_id, struct LDKCOption_u64Z channel_capacity_sats, struct LDKOutPoint channel_funding_txo);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_channel_closed")] public static extern long Event_channel_closed(long _channel_id, long _user_channel_id, long _reason, long _counterparty_node_id, long _channel_capacity_sats, long _channel_funding_txo);
// struct LDKEvent Event_discard_funding(struct LDKThirtyTwoBytes channel_id, struct LDKTransaction transaction);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Event_discard_funding")] public static extern long Event_discard_funding(long _channel_id, long _transaction);
// struct LDKEvent Event_open_channel_request(struct LDKThirtyTwoBytes temporary_channel_id, struct LDKPublicKey counterparty_node_id, uint64_t funding_satoshis, uint64_t push_msat, struct LDKChannelTypeFeatures channel_type);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_funding_created")] public static extern long MessageSendEvent_send_funding_created(long _node_id, long _msg);
// struct LDKMessageSendEvent MessageSendEvent_send_funding_signed(struct LDKPublicKey node_id, struct LDKFundingSigned msg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_funding_signed")] public static extern long MessageSendEvent_send_funding_signed(long _node_id, long _msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_stfu(struct LDKPublicKey node_id, struct LDKStfu msg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_stfu")] public static extern long MessageSendEvent_send_stfu(long _node_id, long _msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_splice(struct LDKPublicKey node_id, struct LDKSplice msg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_splice")] public static extern long MessageSendEvent_send_splice(long _node_id, long _msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_splice_ack(struct LDKPublicKey node_id, struct LDKSpliceAck msg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_splice_ack")] public static extern long MessageSendEvent_send_splice_ack(long _node_id, long _msg);
+ // struct LDKMessageSendEvent MessageSendEvent_send_splice_locked(struct LDKPublicKey node_id, struct LDKSpliceLocked msg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_splice_locked")] public static extern long MessageSendEvent_send_splice_locked(long _node_id, long _msg);
// struct LDKMessageSendEvent MessageSendEvent_send_tx_add_input(struct LDKPublicKey node_id, struct LDKTxAddInput msg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_MessageSendEvent_send_tx_add_input")] public static extern long MessageSendEvent_send_tx_add_input(long _node_id, long _msg);
// struct LDKMessageSendEvent MessageSendEvent_send_tx_add_output(struct LDKPublicKey node_id, struct LDKTxAddOutput msg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Bolt11Invoice_amount_milli_satoshis")] public static extern long Bolt11Invoice_amount_milli_satoshis(long _this_arg);
// MUST_USE_RES struct LDKCResult_DescriptionCreationErrorZ Description_new(struct LDKStr description);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Description_new")] public static extern long Description_new(long _description);
- // MUST_USE_RES struct LDKStr Description_into_inner(struct LDKDescription this_arg);
+ // MUST_USE_RES struct LDKUntrustedString Description_into_inner(struct LDKDescription this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Description_into_inner")] public static extern long Description_into_inner(long _this_arg);
+ // struct LDKStr Description_to_str(const struct LDKDescription *NONNULL_PTR o);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_Description_to_str")] public static extern long Description_to_str(long _o);
// MUST_USE_RES struct LDKExpiryTime ExpiryTime_from_seconds(uint64_t seconds);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_ExpiryTime_from_seconds")] public static extern long ExpiryTime_from_seconds(long _seconds);
// MUST_USE_RES struct LDKExpiryTime ExpiryTime_from_duration(uint64_t duration);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignOrCreationError_eq")] public static extern bool SignOrCreationError_eq(long _a, long _b);
// struct LDKStr SignOrCreationError_to_str(const struct LDKSignOrCreationError *NONNULL_PTR o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SignOrCreationError_to_str")] public static extern long SignOrCreationError_to_str(long _o);
- // struct LDKCResult_ThirtyTwoBytesPaymentErrorZ pay_invoice(const struct LDKBolt11Invoice *NONNULL_PTR invoice, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_pay_invoice")] public static extern long pay_invoice(long _invoice, long _retry_strategy, long _channelmanager);
- // struct LDKCResult_NonePaymentErrorZ pay_invoice_with_id(const struct LDKBolt11Invoice *NONNULL_PTR invoice, struct LDKThirtyTwoBytes payment_id, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_pay_invoice_with_id")] public static extern long pay_invoice_with_id(long _invoice, long _payment_id, long _retry_strategy, long _channelmanager);
- // struct LDKCResult_ThirtyTwoBytesPaymentErrorZ pay_zero_value_invoice(const struct LDKBolt11Invoice *NONNULL_PTR invoice, uint64_t amount_msats, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_pay_zero_value_invoice")] public static extern long pay_zero_value_invoice(long _invoice, long _amount_msats, long _retry_strategy, long _channelmanager);
- // struct LDKCResult_NonePaymentErrorZ pay_zero_value_invoice_with_id(const struct LDKBolt11Invoice *NONNULL_PTR invoice, uint64_t amount_msats, struct LDKThirtyTwoBytes payment_id, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_pay_zero_value_invoice_with_id")] public static extern long pay_zero_value_invoice_with_id(long _invoice, long _amount_msats, long _payment_id, long _retry_strategy, long _channelmanager);
- // struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ preflight_probe_invoice(const struct LDKBolt11Invoice *NONNULL_PTR invoice, const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKCOption_u64Z liquidity_limit_multiplier);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_preflight_probe_invoice")] public static extern long preflight_probe_invoice(long _invoice, long _channelmanager, long _liquidity_limit_multiplier);
- // struct LDKCResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ preflight_probe_zero_value_invoice(const struct LDKBolt11Invoice *NONNULL_PTR invoice, uint64_t amount_msat, const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKCOption_u64Z liquidity_limit_multiplier);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_preflight_probe_zero_value_invoice")] public static extern long preflight_probe_zero_value_invoice(long _invoice, long _amount_msat, long _channelmanager, long _liquidity_limit_multiplier);
- // void PaymentError_free(struct LDKPaymentError this_ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentError_free")] public static extern void PaymentError_free(long _this_ptr);
- // uint64_t PaymentError_clone_ptr(LDKPaymentError *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentError_clone_ptr")] public static extern long PaymentError_clone_ptr(long _arg);
- // struct LDKPaymentError PaymentError_clone(const struct LDKPaymentError *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentError_clone")] public static extern long PaymentError_clone(long _orig);
- // struct LDKPaymentError PaymentError_invoice(struct LDKStr a);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentError_invoice")] public static extern long PaymentError_invoice(long _a);
- // struct LDKPaymentError PaymentError_sending(enum LDKRetryableSendFailure a);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentError_sending")] public static extern long PaymentError_sending(RetryableSendFailure _a);
- // bool PaymentError_eq(const struct LDKPaymentError *NONNULL_PTR a, const struct LDKPaymentError *NONNULL_PTR b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_PaymentError_eq")] public static extern bool PaymentError_eq(long _a, long _b);
- // void ProbingError_free(struct LDKProbingError this_ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ProbingError_free")] public static extern void ProbingError_free(long _this_ptr);
- // uint64_t ProbingError_clone_ptr(LDKProbingError *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ProbingError_clone_ptr")] public static extern long ProbingError_clone_ptr(long _arg);
- // struct LDKProbingError ProbingError_clone(const struct LDKProbingError *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ProbingError_clone")] public static extern long ProbingError_clone(long _orig);
- // struct LDKProbingError ProbingError_invoice(struct LDKStr a);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ProbingError_invoice")] public static extern long ProbingError_invoice(long _a);
- // struct LDKProbingError ProbingError_sending(struct LDKProbeSendFailure a);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ProbingError_sending")] public static extern long ProbingError_sending(long _a);
- // bool ProbingError_eq(const struct LDKProbingError *NONNULL_PTR a, const struct LDKProbingError *NONNULL_PTR b);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_ProbingError_eq")] public static extern bool ProbingError_eq(long _a, long _b);
+ // struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ payment_parameters_from_zero_amount_invoice(const struct LDKBolt11Invoice *NONNULL_PTR invoice, uint64_t amount_msat);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_payment_parameters_from_zero_amount_invoice")] public static extern long payment_parameters_from_zero_amount_invoice(long _invoice, long _amount_msat);
+ // struct LDKCResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ payment_parameters_from_invoice(const struct LDKBolt11Invoice *NONNULL_PTR invoice);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_payment_parameters_from_invoice")] public static extern long payment_parameters_from_invoice(long _invoice);
// struct LDKCResult_Bolt11InvoiceSignOrCreationErrorZ create_phantom_invoice(struct LDKCOption_u64Z amt_msat, struct LDKCOption_ThirtyTwoBytesZ payment_hash, struct LDKStr description, uint32_t invoice_expiry_delta_secs, struct LDKCVec_PhantomRouteHintsZ phantom_route_hints, struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u16Z min_final_cltv_expiry_delta, uint64_t duration_since_epoch);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_create_phantom_invoice")] public static extern long create_phantom_invoice(long _amt_msat, long _payment_hash, long _description, int _invoice_expiry_delta_secs, long _phantom_route_hints, long _entropy_source, long _node_signer, long _logger, Currency _network, long _min_final_cltv_expiry_delta, long _duration_since_epoch);
// struct LDKCResult_Bolt11InvoiceSignOrCreationErrorZ create_phantom_invoice_with_description_hash(struct LDKCOption_u64Z amt_msat, struct LDKCOption_ThirtyTwoBytesZ payment_hash, uint32_t invoice_expiry_delta_secs, struct LDKSha256 description_hash, struct LDKCVec_PhantomRouteHintsZ phantom_route_hints, struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u16Z min_final_cltv_expiry_delta, uint64_t duration_since_epoch);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_Currency_to_str")] public static extern long Currency_to_str(long _o);
// struct LDKStr SiPrefix_to_str(const enum LDKSiPrefix *NONNULL_PTR o);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_SiPrefix_to_str")] public static extern long SiPrefix_to_str(long _o);
+ // void GraphSyncError_free(struct LDKGraphSyncError this_ptr);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_free")] public static extern void GraphSyncError_free(long _this_ptr);
+ // uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_clone_ptr")] public static extern long GraphSyncError_clone_ptr(long _arg);
+ // struct LDKGraphSyncError GraphSyncError_clone(const struct LDKGraphSyncError *NONNULL_PTR orig);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_clone")] public static extern long GraphSyncError_clone(long _orig);
+ // struct LDKGraphSyncError GraphSyncError_decode_error(struct LDKDecodeError a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_decode_error")] public static extern long GraphSyncError_decode_error(long _a);
+ // struct LDKGraphSyncError GraphSyncError_lightning_error(struct LDKLightningError a);
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_lightning_error")] public static extern long GraphSyncError_lightning_error(long _a);
// void RapidGossipSync_free(struct LDKRapidGossipSync this_obj);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RapidGossipSync_free")] public static extern void RapidGossipSync_free(long _this_obj);
// MUST_USE_RES struct LDKRapidGossipSync RapidGossipSync_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RapidGossipSync_update_network_graph_no_std")] public static extern long RapidGossipSync_update_network_graph_no_std(long _this_arg, long _update_data, long _current_time_unix);
// MUST_USE_RES bool RapidGossipSync_is_initial_sync_complete(const struct LDKRapidGossipSync *NONNULL_PTR this_arg);
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_RapidGossipSync_is_initial_sync_complete")] public static extern bool RapidGossipSync_is_initial_sync_complete(long _this_arg);
- // void GraphSyncError_free(struct LDKGraphSyncError this_ptr);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_free")] public static extern void GraphSyncError_free(long _this_ptr);
- // uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_clone_ptr")] public static extern long GraphSyncError_clone_ptr(long _arg);
- // struct LDKGraphSyncError GraphSyncError_clone(const struct LDKGraphSyncError *NONNULL_PTR orig);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_clone")] public static extern long GraphSyncError_clone(long _orig);
- // struct LDKGraphSyncError GraphSyncError_decode_error(struct LDKDecodeError a);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_decode_error")] public static extern long GraphSyncError_decode_error(long _a);
- // struct LDKGraphSyncError GraphSyncError_lightning_error(struct LDKLightningError a);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_GraphSyncError_lightning_error")] public static extern long GraphSyncError_lightning_error(long _a);
static long c_callback_l_l(int obj_ptr, int fn_id, long a) {
if (obj_ptr >= js_objs.Count) {
Environment.Exit(44);
}
return ((LDKEcdsaChannelSigner)obj).sign_channel_announcement_with_funding_key(a);
- case 35:
+ case 36:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKNodeSigner)obj).sign_bolt12_invoice_request(a);
- case 36:
+ case 37:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKNodeSigner)obj).sign_bolt12_invoice(a);
- case 37:
+ case 38:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKNodeSigner)obj).sign_gossip_message(a);
- case 40:
+ case 41:
if (!(obj is LDKSignerProvider)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSignerProvider in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKSignerProvider)obj).read_chan_signer(a);
- case 57:
- if (!(obj is LDKPersister)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKPersister in l_l");
- Console.Error.Flush();
- Environment.Exit(44);
+ case 42:
+ if (!(obj is LDKSignerProvider)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKSignerProvider in l_l");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKSignerProvider)obj).get_destination_script(a);
+ case 62:
+ if (!(obj is LDKPersister)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKPersister in l_l");
+ Console.Error.Flush();
+ Environment.Exit(44);
}
return ((LDKPersister)obj).persist_manager(a);
- case 58:
+ case 63:
if (!(obj is LDKPersister)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKPersister in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKPersister)obj).persist_graph(a);
- case 59:
+ case 64:
if (!(obj is LDKPersister)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKPersister in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKPersister)obj).persist_scorer(a);
- case 105:
+ case 114:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKChannelMessageHandler)obj).provided_init_features(a);
- case 107:
+ case 116:
if (!(obj is LDKOffersMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOffersMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOffersMessageHandler)obj).handle_message(a);
- case 109:
+ case 118:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_node_announcement(a);
- case 110:
+ case 119:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_channel_announcement(a);
- case 111:
+ case 120:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_channel_update(a);
- case 112:
+ case 121:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).get_next_channel_announcement(a);
- case 113:
+ case 122:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).get_next_node_announcement(a);
- case 121:
+ case 130:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).provided_init_features(a);
- case 123:
+ case 133:
if (!(obj is LDKOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOnionMessageHandler)obj).next_onion_message_for_peer(a);
- case 127:
+ case 138:
if (!(obj is LDKOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOnionMessageHandler)obj).provided_init_features(a);
- case 132:
+ case 143:
if (!(obj is LDKCustomMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKCustomMessageHandler)obj).provided_init_features(a);
- case 133:
+ case 144:
if (!(obj is LDKCustomOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomOnionMessageHandler in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKCustomOnionMessageHandler)obj).handle_custom_message(a);
- case 143:
+ case 153:
if (!(obj is LDKCoinSelectionSource)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCoinSelectionSource in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
- return ((LDKCoinSelectionSource)obj).sign_tx(a);
- case 146:
+ return ((LDKCoinSelectionSource)obj).sign_psbt(a);
+ case 156:
if (!(obj is LDKWalletSource)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWalletSource in l_l");
Console.Error.Flush();
Environment.Exit(44);
}
- return ((LDKWalletSource)obj).sign_tx(a);
+ return ((LDKWalletSource)obj).sign_psbt(a);
default:
Console.Error.WriteLine("Got unknown function call with id " + fn_id + " from C in l_l");
Console.Error.Flush();
}
}
public delegate long l_l_callback(int obj_ptr, int fn_id, long a);
+ static l_l_callback l_l_callback_inst = c_callback_l_l;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_l_invoker")] public static extern int register_l_l_invoker(l_l_callback callee);
- static int _run_l_l_registration = register_l_l_invoker(c_callback_l_l);
+ static int _run_l_l_registration = register_l_l_invoker(l_l_callback_inst);
static long c_callback_l_ll(int obj_ptr, int fn_id, long a, long b) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_ll");
Environment.Exit(44);
}
return ((LDKChannelSigner)obj).validate_holder_commitment(a, b);
- case 5:
- if (!(obj is LDKEcdsaChannelSigner)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKEcdsaChannelSigner in l_ll");
- Console.Error.Flush();
- Environment.Exit(44);
- }
- return ((LDKEcdsaChannelSigner)obj).sign_counterparty_commitment(a, b);
- case 6:
- if (!(obj is LDKEcdsaChannelSigner)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKEcdsaChannelSigner in l_ll");
+ case 3:
+ if (!(obj is LDKChannelSigner)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelSigner in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
- return ((LDKEcdsaChannelSigner)obj).validate_counterparty_revocation(a, b);
+ return ((LDKChannelSigner)obj).validate_counterparty_revocation(a, b);
case 13:
if (!(obj is LDKEcdsaChannelSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKEcdsaChannelSigner in l_ll");
Environment.Exit(44);
}
return ((LDKEcdsaChannelSigner)obj).sign_holder_anchor_input(a, b);
- case 25:
+ case 26:
if (!(obj is LDKUtxoLookup)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKUtxoLookup in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKUtxoLookup)obj).get_utxo(a, b);
- case 26:
+ case 27:
if (!(obj is LDKWatch)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWatch in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKWatch)obj).watch_channel(a, b);
- case 39:
+ case 40:
if (!(obj is LDKSignerProvider)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSignerProvider in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKSignerProvider)obj).derive_channel_signer(a, b);
- case 56:
+ case 46:
+ if (!(obj is LDKMessageRouter)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKMessageRouter in l_ll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKMessageRouter)obj).create_blinded_paths(a, b);
+ case 61:
if (!(obj is LDKKVStore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKKVStore in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKKVStore)obj).list(a, b);
- case 115:
+ case 124:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_reply_channel_range(a, b);
- case 116:
+ case 125:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_reply_short_channel_ids_end(a, b);
- case 117:
+ case 126:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_query_channel_range(a, b);
- case 118:
+ case 127:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).handle_query_short_channel_ids(a, b);
- case 129:
+ case 140:
if (!(obj is LDKCustomMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomMessageHandler in l_ll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKCustomMessageHandler)obj).handle_custom_message(a, b);
- case 134:
+ case 145:
if (!(obj is LDKCustomOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomOnionMessageHandler in l_ll");
Console.Error.Flush();
}
}
public delegate long l_ll_callback(int obj_ptr, int fn_id, long a, long b);
+ static l_ll_callback l_ll_callback_inst = c_callback_l_ll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_ll_invoker")] public static extern int register_l_ll_invoker(l_ll_callback callee);
- static int _run_l_ll_registration = register_l_ll_invoker(c_callback_l_ll);
+ static int _run_l_ll_registration = register_l_ll_invoker(l_ll_callback_inst);
static long c_callback_l_(int obj_ptr, int fn_id) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_");
Environment.Exit(43);
}
switch (fn_id) {
- case 3:
+ case 4:
if (!(obj is LDKChannelSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelSigner in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKWriteableEcdsaChannelSigner)obj).write();
- case 21:
+ case 22:
if (!(obj is LDKLockableScore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKLockableScore in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKLockableScore)obj).read_lock();
- case 22:
+ case 23:
if (!(obj is LDKLockableScore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKLockableScore in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKLockableScore)obj).write_lock();
- case 23:
+ case 24:
if (!(obj is LDKWriteableScore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWriteableScore in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKWriteableScore)obj).write();
- case 28:
+ case 29:
if (!(obj is LDKWatch)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWatch in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKWatch)obj).release_pending_monitor_events();
- case 30:
+ case 31:
if (!(obj is LDKEntropySource)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKEntropySource in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKEntropySource)obj).get_secure_random_bytes();
- case 31:
+ case 32:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKNodeSigner)obj).get_inbound_payment_key_material();
- case 41:
- if (!(obj is LDKSignerProvider)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKSignerProvider in l_");
- Console.Error.Flush();
- Environment.Exit(44);
- }
- return ((LDKSignerProvider)obj).get_destination_script();
- case 42:
+ case 43:
if (!(obj is LDKSignerProvider)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSignerProvider in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKSignerProvider)obj).get_shutdown_scriptpubkey();
- case 47:
+ case 51:
if (!(obj is LDKType)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKType in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKType)obj).debug_str();
- case 48:
+ case 52:
if (!(obj is LDKType)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKType in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKType)obj).write();
- case 49:
+ case 53:
if (!(obj is LDKOnionMessageContents)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageContents in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOnionMessageContents)obj).tlv_type();
- case 50:
+ case 54:
if (!(obj is LDKOnionMessageContents)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageContents in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOnionMessageContents)obj).write();
- case 69:
+ case 55:
+ if (!(obj is LDKOnionMessageContents)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageContents in l_");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKOnionMessageContents)obj).debug_str();
+ case 74:
if (!(obj is LDKConfirm)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKConfirm in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKConfirm)obj).get_relevant_txids();
- case 72:
+ case 77:
if (!(obj is LDKMessageSendEventsProvider)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKMessageSendEventsProvider in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKMessageSendEventsProvider)obj).get_and_clear_pending_msg_events();
- case 104:
+ case 113:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKChannelMessageHandler)obj).provided_node_features();
- case 106:
+ case 115:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKChannelMessageHandler)obj).get_chain_hashes();
- case 108:
+ case 117:
if (!(obj is LDKOffersMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOffersMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOffersMessageHandler)obj).release_pending_messages();
- case 120:
+ case 129:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).provided_node_features();
- case 126:
+ case 131:
+ if (!(obj is LDKOnionMessageHandler)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in l_");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKOnionMessageHandler)obj).get_and_clear_connections_needed();
+ case 137:
if (!(obj is LDKOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKOnionMessageHandler)obj).provided_node_features();
- case 130:
+ case 141:
if (!(obj is LDKCustomMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKCustomMessageHandler)obj).get_and_clear_pending_msg();
- case 131:
+ case 142:
if (!(obj is LDKCustomMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKCustomMessageHandler)obj).provided_node_features();
- case 135:
+ case 146:
if (!(obj is LDKCustomOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomOnionMessageHandler in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKCustomOnionMessageHandler)obj).release_pending_custom_messages();
- case 139:
+ case 150:
if (!(obj is LDKSocketDescriptor)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSocketDescriptor in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKSocketDescriptor)obj).hash();
- case 140:
+ case 151:
if (!(obj is LDKScore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKScore in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKScore)obj).write();
- case 144:
+ case 154:
if (!(obj is LDKWalletSource)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWalletSource in l_");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKWalletSource)obj).list_confirmed_utxos();
- case 145:
+ case 155:
if (!(obj is LDKWalletSource)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWalletSource in l_");
Console.Error.Flush();
}
}
public delegate long l__callback(int obj_ptr, int fn_id);
+ static l__callback l__callback_inst = c_callback_l_;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l__invoker")] public static extern int register_l__invoker(l__callback callee);
- static int _run_l__registration = register_l__invoker(c_callback_l_);
+ static int _run_l__registration = register_l__invoker(l__callback_inst);
static void c_callback_void_l(int obj_ptr, int fn_id, long a) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in void_l");
Environment.Exit(43);
}
switch (fn_id) {
- case 4:
+ case 5:
if (!(obj is LDKChannelSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelSigner in void_l");
Console.Error.Flush();
}
((LDKChannelSigner)obj).provide_channel_parameters(a);
return;
- case 18:
- if (!(obj is LDKScoreUpdate)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreUpdate in void_l");
- Console.Error.Flush();
- Environment.Exit(44);
- }
- ((LDKScoreUpdate)obj).payment_path_successful(a);
- return;
- case 20:
+ case 21:
if (!(obj is LDKScoreUpdate)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreUpdate in void_l");
Console.Error.Flush();
Environment.Exit(44);
}
- ((LDKScoreUpdate)obj).probe_successful(a);
+ ((LDKScoreUpdate)obj).time_passed(a);
return;
- case 24:
+ case 25:
if (!(obj is LDKLogger)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKLogger in void_l");
Console.Error.Flush();
}
((LDKLogger)obj).log(a);
return;
- case 29:
+ case 30:
if (!(obj is LDKBroadcasterInterface)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKBroadcasterInterface in void_l");
Console.Error.Flush();
}
((LDKBroadcasterInterface)obj).broadcast_transactions(a);
return;
- case 52:
+ case 57:
if (!(obj is LDKFilter)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKFilter in void_l");
Console.Error.Flush();
}
((LDKFilter)obj).register_output(a);
return;
- case 67:
+ case 72:
if (!(obj is LDKConfirm)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKConfirm in void_l");
Console.Error.Flush();
}
((LDKConfirm)obj).transaction_unconfirmed(a);
return;
- case 70:
+ case 75:
if (!(obj is LDKEventHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKEventHandler in void_l");
Console.Error.Flush();
}
((LDKEventHandler)obj).handle_event(a);
return;
- case 71:
+ case 76:
if (!(obj is LDKEventsProvider)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKEventsProvider in void_l");
Console.Error.Flush();
}
((LDKEventsProvider)obj).process_pending_events(a);
return;
- case 99:
+ case 108:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_l");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).peer_disconnected(a);
return;
- case 125:
+ case 135:
if (!(obj is LDKOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in void_l");
Console.Error.Flush();
}
}
public delegate void void_l_callback(int obj_ptr, int fn_id, long a);
+ static void_l_callback void_l_callback_inst = c_callback_void_l;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_void_l_invoker")] public static extern int register_void_l_invoker(void_l_callback callee);
- static int _run_void_l_registration = register_void_l_invoker(c_callback_void_l);
+ static int _run_void_l_registration = register_void_l_invoker(void_l_callback_inst);
+ static long c_callback_l_lll(int obj_ptr, int fn_id, long a, long b, long c) {
+ if (obj_ptr >= js_objs.Count) {
+ Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(42);
+ }
+ object obj = js_objs[obj_ptr].Target;
+ if (obj == null) {
+ Console.Error.WriteLine("Got function call on GC'd JS object in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(43);
+ }
+ switch (fn_id) {
+ case 6:
+ if (!(obj is LDKEcdsaChannelSigner)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKEcdsaChannelSigner in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKEcdsaChannelSigner)obj).sign_counterparty_commitment(a, b, c);
+ case 10:
+ if (!(obj is LDKEcdsaChannelSigner)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKEcdsaChannelSigner in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKEcdsaChannelSigner)obj).sign_holder_htlc_transaction(a, b, c);
+ case 16:
+ if (!(obj is LDKScoreLookUp)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreLookUp in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKScoreLookUp)obj).channel_penalty_msat(a, b, c);
+ case 45:
+ if (!(obj is LDKMessageRouter)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKMessageRouter in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKMessageRouter)obj).find_path(a, b, c);
+ case 58:
+ if (!(obj is LDKKVStore)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKKVStore in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKKVStore)obj).read(a, b, c);
+ default:
+ Console.Error.WriteLine("Got unknown function call with id " + fn_id + " from C in l_lll");
+ Console.Error.Flush();
+ Environment.Exit(45);
+ return 0;
+ }
+ }
+ public delegate long l_lll_callback(int obj_ptr, int fn_id, long a, long b, long c);
+ static l_lll_callback l_lll_callback_inst = c_callback_l_lll;
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_lll_invoker")] public static extern int register_l_lll_invoker(l_lll_callback callee);
+ static int _run_l_lll_registration = register_l_lll_invoker(l_lll_callback_inst);
static long c_callback_l_llll(int obj_ptr, int fn_id, long a, long b, long c, long d) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_llll");
Environment.Exit(44);
}
return ((LDKEcdsaChannelSigner)obj).sign_justice_revoked_output(a, b, c, d);
- case 44:
+ case 47:
if (!(obj is LDKRouter)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRouter in l_llll");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRouter)obj).find_route(a, b, c, d);
- case 54:
+ case 49:
+ if (!(obj is LDKRouter)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKRouter in l_llll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ return ((LDKRouter)obj).create_blinded_payment_paths(a, b, c, d);
+ case 59:
if (!(obj is LDKKVStore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKKVStore in l_llll");
Console.Error.Flush();
}
}
public delegate long l_llll_callback(int obj_ptr, int fn_id, long a, long b, long c, long d);
+ static l_llll_callback l_llll_callback_inst = c_callback_l_llll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_llll_invoker")] public static extern int register_l_llll_invoker(l_llll_callback callee);
- static int _run_l_llll_registration = register_l_llll_invoker(c_callback_l_llll);
+ static int _run_l_llll_registration = register_l_llll_invoker(l_llll_callback_inst);
static long c_callback_l_lllll(int obj_ptr, int fn_id, long a, long b, long c, long d, long e) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_lllll");
Environment.Exit(44);
}
return ((LDKEcdsaChannelSigner)obj).sign_counterparty_htlc_transaction(a, b, c, d, e);
- case 16:
- if (!(obj is LDKScoreLookUp)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreLookUp in l_lllll");
- Console.Error.Flush();
- Environment.Exit(44);
- }
- return ((LDKScoreLookUp)obj).channel_penalty_msat(a, b, c, d, e);
default:
Console.Error.WriteLine("Got unknown function call with id " + fn_id + " from C in l_lllll");
Console.Error.Flush();
}
}
public delegate long l_lllll_callback(int obj_ptr, int fn_id, long a, long b, long c, long d, long e);
+ static l_lllll_callback l_lllll_callback_inst = c_callback_l_lllll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_lllll_invoker")] public static extern int register_l_lllll_invoker(l_lllll_callback callee);
- static int _run_l_lllll_registration = register_l_lllll_invoker(c_callback_l_lllll);
- static long c_callback_l_lll(int obj_ptr, int fn_id, long a, long b, long c) {
+ static int _run_l_lllll_registration = register_l_lllll_invoker(l_lllll_callback_inst);
+ static void c_callback_void_lll(int obj_ptr, int fn_id, long a, long b, long c) {
if (obj_ptr >= js_objs.Count) {
- Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_lll");
+ Console.Error.WriteLine("Got function call on unknown/free'd JS object in void_lll");
Console.Error.Flush();
Environment.Exit(42);
}
object obj = js_objs[obj_ptr].Target;
if (obj == null) {
- Console.Error.WriteLine("Got function call on GC'd JS object in l_lll");
+ Console.Error.WriteLine("Got function call on GC'd JS object in void_lll");
Console.Error.Flush();
Environment.Exit(43);
}
switch (fn_id) {
- case 10:
- if (!(obj is LDKEcdsaChannelSigner)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKEcdsaChannelSigner in l_lll");
- Console.Error.Flush();
- Environment.Exit(44);
- }
- return ((LDKEcdsaChannelSigner)obj).sign_holder_htlc_transaction(a, b, c);
- case 53:
- if (!(obj is LDKKVStore)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKKVStore in l_lll");
+ case 17:
+ if (!(obj is LDKScoreUpdate)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreUpdate in void_lll");
Console.Error.Flush();
Environment.Exit(44);
}
- return ((LDKKVStore)obj).read(a, b, c);
- case 141:
- if (!(obj is LDKMessageRouter)) {
- Console.Error.WriteLine("Got function call to object that wasn't a LDKMessageRouter in l_lll");
+ ((LDKScoreUpdate)obj).payment_path_failed(a, b, c);
+ return;
+ case 19:
+ if (!(obj is LDKScoreUpdate)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreUpdate in void_lll");
Console.Error.Flush();
Environment.Exit(44);
}
- return ((LDKMessageRouter)obj).find_path(a, b, c);
+ ((LDKScoreUpdate)obj).probe_failed(a, b, c);
+ return;
default:
- Console.Error.WriteLine("Got unknown function call with id " + fn_id + " from C in l_lll");
+ Console.Error.WriteLine("Got unknown function call with id " + fn_id + " from C in void_lll");
Console.Error.Flush();
Environment.Exit(45);
- return 0;
+ return;
}
}
- public delegate long l_lll_callback(int obj_ptr, int fn_id, long a, long b, long c);
- [DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_lll_invoker")] public static extern int register_l_lll_invoker(l_lll_callback callee);
- static int _run_l_lll_registration = register_l_lll_invoker(c_callback_l_lll);
+ public delegate void void_lll_callback(int obj_ptr, int fn_id, long a, long b, long c);
+ static void_lll_callback void_lll_callback_inst = c_callback_void_lll;
+ [DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_void_lll_invoker")] public static extern int register_void_lll_invoker(void_lll_callback callee);
+ static int _run_void_lll_registration = register_void_lll_invoker(void_lll_callback_inst);
static void c_callback_void_ll(int obj_ptr, int fn_id, long a, long b) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in void_ll");
Environment.Exit(43);
}
switch (fn_id) {
- case 17:
+ case 18:
if (!(obj is LDKScoreUpdate)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreUpdate in void_ll");
Console.Error.Flush();
Environment.Exit(44);
}
- ((LDKScoreUpdate)obj).payment_path_failed(a, b);
+ ((LDKScoreUpdate)obj).payment_path_successful(a, b);
return;
- case 19:
+ case 20:
if (!(obj is LDKScoreUpdate)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKScoreUpdate in void_ll");
Console.Error.Flush();
Environment.Exit(44);
}
- ((LDKScoreUpdate)obj).probe_failed(a, b);
+ ((LDKScoreUpdate)obj).probe_successful(a, b);
return;
- case 51:
+ case 56:
if (!(obj is LDKFilter)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKFilter in void_ll");
Console.Error.Flush();
}
((LDKFilter)obj).register_tx(a, b);
return;
- case 73:
+ case 78:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_open_channel(a, b);
return;
- case 74:
+ case 79:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_open_channel_v2(a, b);
return;
- case 75:
+ case 80:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_accept_channel(a, b);
return;
- case 76:
+ case 81:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_accept_channel_v2(a, b);
return;
- case 77:
+ case 82:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_funding_created(a, b);
return;
- case 78:
+ case 83:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_funding_signed(a, b);
return;
- case 79:
+ case 84:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_channel_ready(a, b);
return;
- case 80:
+ case 85:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_shutdown(a, b);
return;
- case 81:
+ case 86:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_closing_signed(a, b);
return;
- case 82:
+ case 87:
+ if (!(obj is LDKChannelMessageHandler)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ ((LDKChannelMessageHandler)obj).handle_stfu(a, b);
+ return;
+ case 88:
+ if (!(obj is LDKChannelMessageHandler)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ ((LDKChannelMessageHandler)obj).handle_splice(a, b);
+ return;
+ case 89:
+ if (!(obj is LDKChannelMessageHandler)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ ((LDKChannelMessageHandler)obj).handle_splice_ack(a, b);
+ return;
+ case 90:
+ if (!(obj is LDKChannelMessageHandler)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ ((LDKChannelMessageHandler)obj).handle_splice_locked(a, b);
+ return;
+ case 91:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_add_input(a, b);
return;
- case 83:
+ case 92:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_add_output(a, b);
return;
- case 84:
+ case 93:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_remove_input(a, b);
return;
- case 85:
+ case 94:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_remove_output(a, b);
return;
- case 86:
+ case 95:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_complete(a, b);
return;
- case 87:
+ case 96:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_signatures(a, b);
return;
- case 88:
+ case 97:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_init_rbf(a, b);
return;
- case 89:
+ case 98:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_ack_rbf(a, b);
return;
- case 90:
+ case 99:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_tx_abort(a, b);
return;
- case 91:
+ case 100:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_update_add_htlc(a, b);
return;
- case 92:
+ case 101:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_update_fulfill_htlc(a, b);
return;
- case 93:
+ case 102:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_update_fail_htlc(a, b);
return;
- case 94:
+ case 103:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_update_fail_malformed_htlc(a, b);
return;
- case 95:
+ case 104:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_commitment_signed(a, b);
return;
- case 96:
+ case 105:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_revoke_and_ack(a, b);
return;
- case 97:
+ case 106:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_update_fee(a, b);
return;
- case 98:
+ case 107:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_announcement_signatures(a, b);
return;
- case 101:
+ case 110:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_channel_reestablish(a, b);
return;
- case 102:
+ case 111:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_channel_update(a, b);
return;
- case 103:
+ case 112:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in void_ll");
Console.Error.Flush();
}
((LDKChannelMessageHandler)obj).handle_error(a, b);
return;
- case 122:
+ case 132:
if (!(obj is LDKOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in void_ll");
Console.Error.Flush();
}
}
public delegate void void_ll_callback(int obj_ptr, int fn_id, long a, long b);
+ static void_ll_callback void_ll_callback_inst = c_callback_void_ll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_void_ll_invoker")] public static extern int register_void_ll_invoker(void_ll_callback callee);
- static int _run_void_ll_registration = register_void_ll_invoker(c_callback_void_ll);
+ static int _run_void_ll_registration = register_void_ll_invoker(void_ll_callback_inst);
static ChannelMonitorUpdateStatus c_callback_ChannelMonitorUpdateStatus_ll(int obj_ptr, int fn_id, long a, long b) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in ChannelMonitorUpdateStatus_ll");
Environment.Exit(43);
}
switch (fn_id) {
- case 27:
+ case 28:
if (!(obj is LDKWatch)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKWatch in ChannelMonitorUpdateStatus_ll");
Console.Error.Flush();
}
}
public delegate ChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_ll_callback(int obj_ptr, int fn_id, long a, long b);
+ static ChannelMonitorUpdateStatus_ll_callback ChannelMonitorUpdateStatus_ll_callback_inst = c_callback_ChannelMonitorUpdateStatus_ll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_ChannelMonitorUpdateStatus_ll_invoker")] public static extern int register_ChannelMonitorUpdateStatus_ll_invoker(ChannelMonitorUpdateStatus_ll_callback callee);
- static int _run_ChannelMonitorUpdateStatus_ll_registration = register_ChannelMonitorUpdateStatus_ll_invoker(c_callback_ChannelMonitorUpdateStatus_ll);
+ static int _run_ChannelMonitorUpdateStatus_ll_registration = register_ChannelMonitorUpdateStatus_ll_invoker(ChannelMonitorUpdateStatus_ll_callback_inst);
static long c_callback_l_Recipient(int obj_ptr, int fn_id, Recipient a) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_Recipient");
Environment.Exit(43);
}
switch (fn_id) {
- case 32:
+ case 33:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_Recipient");
Console.Error.Flush();
}
}
public delegate long l_Recipient_callback(int obj_ptr, int fn_id, Recipient a);
+ static l_Recipient_callback l_Recipient_callback_inst = c_callback_l_Recipient;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_Recipient_invoker")] public static extern int register_l_Recipient_invoker(l_Recipient_callback callee);
- static int _run_l_Recipient_registration = register_l_Recipient_invoker(c_callback_l_Recipient);
+ static int _run_l_Recipient_registration = register_l_Recipient_invoker(l_Recipient_callback_inst);
static long c_callback_l_Recipientll(int obj_ptr, int fn_id, Recipient a, long b, long c) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_Recipientll");
Environment.Exit(43);
}
switch (fn_id) {
- case 33:
+ case 34:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_Recipientll");
Console.Error.Flush();
}
}
public delegate long l_Recipientll_callback(int obj_ptr, int fn_id, Recipient a, long b, long c);
+ static l_Recipientll_callback l_Recipientll_callback_inst = c_callback_l_Recipientll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_Recipientll_invoker")] public static extern int register_l_Recipientll_invoker(l_Recipientll_callback callee);
- static int _run_l_Recipientll_registration = register_l_Recipientll_invoker(c_callback_l_Recipientll);
+ static int _run_l_Recipientll_registration = register_l_Recipientll_invoker(l_Recipientll_callback_inst);
static long c_callback_l_llRecipient(int obj_ptr, int fn_id, long a, long b, Recipient c) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_llRecipient");
Environment.Exit(43);
}
switch (fn_id) {
- case 34:
+ case 35:
if (!(obj is LDKNodeSigner)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKNodeSigner in l_llRecipient");
Console.Error.Flush();
}
}
public delegate long l_llRecipient_callback(int obj_ptr, int fn_id, long a, long b, Recipient c);
+ static l_llRecipient_callback l_llRecipient_callback_inst = c_callback_l_llRecipient;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_llRecipient_invoker")] public static extern int register_l_llRecipient_invoker(l_llRecipient_callback callee);
- static int _run_l_llRecipient_registration = register_l_llRecipient_invoker(c_callback_l_llRecipient);
+ static int _run_l_llRecipient_registration = register_l_llRecipient_invoker(l_llRecipient_callback_inst);
static long c_callback_l_bll(int obj_ptr, int fn_id, bool a, long b, long c) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_bll");
Environment.Exit(43);
}
switch (fn_id) {
- case 38:
+ case 39:
if (!(obj is LDKSignerProvider)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSignerProvider in l_bll");
Console.Error.Flush();
}
}
public delegate long l_bll_callback(int obj_ptr, int fn_id, bool a, long b, long c);
+ static l_bll_callback l_bll_callback_inst = c_callback_l_bll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_bll_invoker")] public static extern int register_l_bll_invoker(l_bll_callback callee);
- static int _run_l_bll_registration = register_l_bll_invoker(c_callback_l_bll);
+ static int _run_l_bll_registration = register_l_bll_invoker(l_bll_callback_inst);
static int c_callback_i_ConfirmationTarget(int obj_ptr, int fn_id, ConfirmationTarget a) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in i_ConfirmationTarget");
Environment.Exit(43);
}
switch (fn_id) {
- case 43:
+ case 44:
if (!(obj is LDKFeeEstimator)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKFeeEstimator in i_ConfirmationTarget");
Console.Error.Flush();
}
}
public delegate int i_ConfirmationTarget_callback(int obj_ptr, int fn_id, ConfirmationTarget a);
+ static i_ConfirmationTarget_callback i_ConfirmationTarget_callback_inst = c_callback_i_ConfirmationTarget;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_i_ConfirmationTarget_invoker")] public static extern int register_i_ConfirmationTarget_invoker(i_ConfirmationTarget_callback callee);
- static int _run_i_ConfirmationTarget_registration = register_i_ConfirmationTarget_invoker(c_callback_i_ConfirmationTarget);
+ static int _run_i_ConfirmationTarget_registration = register_i_ConfirmationTarget_invoker(i_ConfirmationTarget_callback_inst);
static long c_callback_l_llllll(int obj_ptr, int fn_id, long a, long b, long c, long d, long e, long f) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_llllll");
Environment.Exit(43);
}
switch (fn_id) {
- case 45:
+ case 48:
if (!(obj is LDKRouter)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRouter in l_llllll");
Console.Error.Flush();
}
}
public delegate long l_llllll_callback(int obj_ptr, int fn_id, long a, long b, long c, long d, long e, long f);
+ static l_llllll_callback l_llllll_callback_inst = c_callback_l_llllll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_llllll_invoker")] public static extern int register_l_llllll_invoker(l_llllll_callback callee);
- static int _run_l_llllll_registration = register_l_llllll_invoker(c_callback_l_llllll);
+ static int _run_l_llllll_registration = register_l_llllll_invoker(l_llllll_callback_inst);
static short c_callback_s_(int obj_ptr, int fn_id) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in s_");
Environment.Exit(43);
}
switch (fn_id) {
- case 46:
+ case 50:
if (!(obj is LDKType)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKType in s_");
Console.Error.Flush();
}
}
public delegate short s__callback(int obj_ptr, int fn_id);
+ static s__callback s__callback_inst = c_callback_s_;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_s__invoker")] public static extern int register_s__invoker(s__callback callee);
- static int _run_s__registration = register_s__invoker(c_callback_s_);
+ static int _run_s__registration = register_s__invoker(s__callback_inst);
static long c_callback_l_lllb(int obj_ptr, int fn_id, long a, long b, long c, bool d) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_lllb");
Environment.Exit(43);
}
switch (fn_id) {
- case 55:
+ case 60:
if (!(obj is LDKKVStore)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKKVStore in l_lllb");
Console.Error.Flush();
}
}
public delegate long l_lllb_callback(int obj_ptr, int fn_id, long a, long b, long c, bool d);
+ static l_lllb_callback l_lllb_callback_inst = c_callback_l_lllb;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_lllb_invoker")] public static extern int register_l_lllb_invoker(l_lllb_callback callee);
- static int _run_l_lllb_registration = register_l_lllb_invoker(c_callback_l_lllb);
+ static int _run_l_lllb_registration = register_l_lllb_invoker(l_lllb_callback_inst);
static ChannelMonitorUpdateStatus c_callback_ChannelMonitorUpdateStatus_lll(int obj_ptr, int fn_id, long a, long b, long c) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in ChannelMonitorUpdateStatus_lll");
Environment.Exit(43);
}
switch (fn_id) {
- case 60:
+ case 65:
if (!(obj is LDKPersist)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKPersist in ChannelMonitorUpdateStatus_lll");
Console.Error.Flush();
}
}
public delegate ChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_lll_callback(int obj_ptr, int fn_id, long a, long b, long c);
+ static ChannelMonitorUpdateStatus_lll_callback ChannelMonitorUpdateStatus_lll_callback_inst = c_callback_ChannelMonitorUpdateStatus_lll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_ChannelMonitorUpdateStatus_lll_invoker")] public static extern int register_ChannelMonitorUpdateStatus_lll_invoker(ChannelMonitorUpdateStatus_lll_callback callee);
- static int _run_ChannelMonitorUpdateStatus_lll_registration = register_ChannelMonitorUpdateStatus_lll_invoker(c_callback_ChannelMonitorUpdateStatus_lll);
+ static int _run_ChannelMonitorUpdateStatus_lll_registration = register_ChannelMonitorUpdateStatus_lll_invoker(ChannelMonitorUpdateStatus_lll_callback_inst);
static ChannelMonitorUpdateStatus c_callback_ChannelMonitorUpdateStatus_llll(int obj_ptr, int fn_id, long a, long b, long c, long d) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in ChannelMonitorUpdateStatus_llll");
Environment.Exit(43);
}
switch (fn_id) {
- case 61:
+ case 66:
if (!(obj is LDKPersist)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKPersist in ChannelMonitorUpdateStatus_llll");
Console.Error.Flush();
}
}
public delegate ChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_llll_callback(int obj_ptr, int fn_id, long a, long b, long c, long d);
+ static ChannelMonitorUpdateStatus_llll_callback ChannelMonitorUpdateStatus_llll_callback_inst = c_callback_ChannelMonitorUpdateStatus_llll;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_ChannelMonitorUpdateStatus_llll_invoker")] public static extern int register_ChannelMonitorUpdateStatus_llll_invoker(ChannelMonitorUpdateStatus_llll_callback callee);
- static int _run_ChannelMonitorUpdateStatus_llll_registration = register_ChannelMonitorUpdateStatus_llll_invoker(c_callback_ChannelMonitorUpdateStatus_llll);
+ static int _run_ChannelMonitorUpdateStatus_llll_registration = register_ChannelMonitorUpdateStatus_llll_invoker(ChannelMonitorUpdateStatus_llll_callback_inst);
static void c_callback_void_(int obj_ptr, int fn_id) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in void_");
Environment.Exit(43);
}
switch (fn_id) {
- case 62:
+ case 67:
if (!(obj is LDKFutureCallback)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKFutureCallback in void_");
Console.Error.Flush();
}
((LDKFutureCallback)obj).call();
return;
- case 137:
+ case 136:
+ if (!(obj is LDKOnionMessageHandler)) {
+ Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in void_");
+ Console.Error.Flush();
+ Environment.Exit(44);
+ }
+ ((LDKOnionMessageHandler)obj).timer_tick_occurred();
+ return;
+ case 148:
if (!(obj is LDKSocketDescriptor)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSocketDescriptor in void_");
Console.Error.Flush();
}
}
public delegate void void__callback(int obj_ptr, int fn_id);
+ static void__callback void__callback_inst = c_callback_void_;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_void__invoker")] public static extern int register_void__invoker(void__callback callee);
- static int _run_void__registration = register_void__invoker(c_callback_void_);
+ static int _run_void__registration = register_void__invoker(void__callback_inst);
static void c_callback_void_lli(int obj_ptr, int fn_id, long a, long b, int c) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in void_lli");
Environment.Exit(43);
}
switch (fn_id) {
- case 63:
+ case 68:
if (!(obj is LDKListen)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKListen in void_lli");
Console.Error.Flush();
}
((LDKListen)obj).filtered_block_connected(a, b, c);
return;
- case 66:
+ case 71:
if (!(obj is LDKConfirm)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKConfirm in void_lli");
Console.Error.Flush();
}
}
public delegate void void_lli_callback(int obj_ptr, int fn_id, long a, long b, int c);
+ static void_lli_callback void_lli_callback_inst = c_callback_void_lli;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_void_lli_invoker")] public static extern int register_void_lli_invoker(void_lli_callback callee);
- static int _run_void_lli_registration = register_void_lli_invoker(c_callback_void_lli);
+ static int _run_void_lli_registration = register_void_lli_invoker(void_lli_callback_inst);
static void c_callback_void_li(int obj_ptr, int fn_id, long a, int b) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in void_li");
Environment.Exit(43);
}
switch (fn_id) {
- case 64:
+ case 69:
if (!(obj is LDKListen)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKListen in void_li");
Console.Error.Flush();
}
((LDKListen)obj).block_connected(a, b);
return;
- case 65:
+ case 70:
if (!(obj is LDKListen)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKListen in void_li");
Console.Error.Flush();
}
((LDKListen)obj).block_disconnected(a, b);
return;
- case 68:
+ case 73:
if (!(obj is LDKConfirm)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKConfirm in void_li");
Console.Error.Flush();
}
}
public delegate void void_li_callback(int obj_ptr, int fn_id, long a, int b);
+ static void_li_callback void_li_callback_inst = c_callback_void_li;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_void_li_invoker")] public static extern int register_void_li_invoker(void_li_callback callee);
- static int _run_void_li_registration = register_void_li_invoker(c_callback_void_li);
+ static int _run_void_li_registration = register_void_li_invoker(void_li_callback_inst);
static long c_callback_l_llb(int obj_ptr, int fn_id, long a, long b, bool c) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_llb");
Environment.Exit(43);
}
switch (fn_id) {
- case 100:
+ case 109:
if (!(obj is LDKChannelMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKChannelMessageHandler in l_llb");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKChannelMessageHandler)obj).peer_connected(a, b, c);
- case 114:
+ case 123:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in l_llb");
Console.Error.Flush();
Environment.Exit(44);
}
return ((LDKRoutingMessageHandler)obj).peer_connected(a, b, c);
- case 124:
+ case 134:
if (!(obj is LDKOnionMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKOnionMessageHandler in l_llb");
Console.Error.Flush();
}
}
public delegate long l_llb_callback(int obj_ptr, int fn_id, long a, long b, bool c);
+ static l_llb_callback l_llb_callback_inst = c_callback_l_llb;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_llb_invoker")] public static extern int register_l_llb_invoker(l_llb_callback callee);
- static int _run_l_llb_registration = register_l_llb_invoker(c_callback_l_llb);
+ static int _run_l_llb_registration = register_l_llb_invoker(l_llb_callback_inst);
static bool c_callback_b_(int obj_ptr, int fn_id) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in b_");
Environment.Exit(43);
}
switch (fn_id) {
- case 119:
+ case 128:
if (!(obj is LDKRoutingMessageHandler)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKRoutingMessageHandler in b_");
Console.Error.Flush();
}
}
public delegate bool b__callback(int obj_ptr, int fn_id);
+ static b__callback b__callback_inst = c_callback_b_;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_b__invoker")] public static extern int register_b__invoker(b__callback callee);
- static int _run_b__registration = register_b__invoker(c_callback_b_);
+ static int _run_b__registration = register_b__invoker(b__callback_inst);
static long c_callback_l_sl(int obj_ptr, int fn_id, short a, long b) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_sl");
Environment.Exit(43);
}
switch (fn_id) {
- case 128:
+ case 139:
if (!(obj is LDKCustomMessageReader)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCustomMessageReader in l_sl");
Console.Error.Flush();
}
}
public delegate long l_sl_callback(int obj_ptr, int fn_id, short a, long b);
+ static l_sl_callback l_sl_callback_inst = c_callback_l_sl;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_sl_invoker")] public static extern int register_l_sl_invoker(l_sl_callback callee);
- static int _run_l_sl_registration = register_l_sl_invoker(c_callback_l_sl);
+ static int _run_l_sl_registration = register_l_sl_invoker(l_sl_callback_inst);
static long c_callback_l_lb(int obj_ptr, int fn_id, long a, bool b) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_lb");
Environment.Exit(43);
}
switch (fn_id) {
- case 136:
+ case 147:
if (!(obj is LDKSocketDescriptor)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSocketDescriptor in l_lb");
Console.Error.Flush();
}
}
public delegate long l_lb_callback(int obj_ptr, int fn_id, long a, bool b);
+ static l_lb_callback l_lb_callback_inst = c_callback_l_lb;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_lb_invoker")] public static extern int register_l_lb_invoker(l_lb_callback callee);
- static int _run_l_lb_registration = register_l_lb_invoker(c_callback_l_lb);
+ static int _run_l_lb_registration = register_l_lb_invoker(l_lb_callback_inst);
static bool c_callback_b_l(int obj_ptr, int fn_id, long a) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in b_l");
Environment.Exit(43);
}
switch (fn_id) {
- case 138:
+ case 149:
if (!(obj is LDKSocketDescriptor)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKSocketDescriptor in b_l");
Console.Error.Flush();
}
}
public delegate bool b_l_callback(int obj_ptr, int fn_id, long a);
+ static b_l_callback b_l_callback_inst = c_callback_b_l;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_b_l_invoker")] public static extern int register_b_l_invoker(b_l_callback callee);
- static int _run_b_l_registration = register_b_l_invoker(c_callback_b_l);
+ static int _run_b_l_registration = register_b_l_invoker(b_l_callback_inst);
static long c_callback_l_llli(int obj_ptr, int fn_id, long a, long b, long c, int d) {
if (obj_ptr >= js_objs.Count) {
Console.Error.WriteLine("Got function call on unknown/free'd JS object in l_llli");
Environment.Exit(43);
}
switch (fn_id) {
- case 142:
+ case 152:
if (!(obj is LDKCoinSelectionSource)) {
Console.Error.WriteLine("Got function call to object that wasn't a LDKCoinSelectionSource in l_llli");
Console.Error.Flush();
}
}
public delegate long l_llli_callback(int obj_ptr, int fn_id, long a, long b, long c, int d);
+ static l_llli_callback l_llli_callback_inst = c_callback_l_llli;
[DllImport ("ldkcsharp", EntryPoint="CS_LDK_register_l_llli_invoker")] public static extern int register_l_llli_invoker(l_llli_callback callee);
- static int _run_l_llli_registration = register_l_llli_invoker(c_callback_l_llli);
+ static int _run_l_llli_registration = register_l_llli_invoker(l_llli_callback_inst);
}
} } }
\ No newline at end of file
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the AcceptChannel.
+ */
+ public long hash() {
+ long ret = bindings.AcceptChannel_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two AcceptChannels contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the AcceptChannelV2.
+ */
+ public long hash() {
+ long ret = bindings.AcceptChannelV2_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two AcceptChannelV2s contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the AnnouncementSignatures.
+ */
+ public long hash() {
+ long ret = bindings.AnnouncementSignatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two AnnouncementSignaturess contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Information used to forward or fail this HTLC that is being forwarded within a blinded path.
+ */
+public class BlindedForward : CommonBase {
+ internal BlindedForward(object _dummy, long ptr) : base(ptr) { }
+ ~BlindedForward() {
+ if (ptr != 0) { bindings.BlindedForward_free(ptr); }
+ }
+
+ /**
+ * The `blinding_point` that was set in the inbound [`msgs::UpdateAddHTLC`], or in the inbound
+ * onion payload if we're the introduction node. Useful for calculating the next hop's
+ * [`msgs::UpdateAddHTLC::blinding_point`].
+ */
+ public byte[] get_inbound_blinding_point() {
+ long ret = bindings.BlindedForward_get_inbound_blinding_point(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The `blinding_point` that was set in the inbound [`msgs::UpdateAddHTLC`], or in the inbound
+ * onion payload if we're the introduction node. Useful for calculating the next hop's
+ * [`msgs::UpdateAddHTLC::blinding_point`].
+ */
+ public void set_inbound_blinding_point(byte[] val) {
+ bindings.BlindedForward_set_inbound_blinding_point(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * If needed, this determines how this HTLC should be failed backwards, based on whether we are
+ * the introduction node.
+ */
+ public BlindedFailure get_failure() {
+ BlindedFailure ret = bindings.BlindedForward_get_failure(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * If needed, this determines how this HTLC should be failed backwards, based on whether we are
+ * the introduction node.
+ */
+ public void set_failure(BlindedFailure val) {
+ bindings.BlindedForward_set_failure(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new BlindedForward given each field
+ */
+ public static BlindedForward of(byte[] inbound_blinding_point_arg, BlindedFailure failure_arg) {
+ long ret = bindings.BlindedForward_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(inbound_blinding_point_arg, 33)), failure_arg);
+ GC.KeepAlive(inbound_blinding_point_arg);
+ GC.KeepAlive(failure_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.BlindedForward ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.BlindedForward(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.BlindedForward_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the BlindedForward
+ */
+ public BlindedForward clone() {
+ long ret = bindings.BlindedForward_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.BlindedForward ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.BlindedForward(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Generates a non-cryptographic 64-bit hash of the BlindedForward.
+ */
+ public long hash() {
+ long ret = bindings.BlindedForward_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
+ /**
+ * Checks if two BlindedForwards contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.BlindedForward b) {
+ bool ret = bindings.BlindedForward_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is BlindedForward)) return false;
+ return this.eq((BlindedForward)o);
+ }
+ /**
+ * Serialize the BlindedForward object into a byte array which can be read by BlindedForward_read
+ */
+ public byte[] write() {
+ long ret = bindings.BlindedForward_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a BlindedForward from a byte array, created by BlindedForward_write
+ */
+ public static Result_BlindedForwardDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.BlindedForward_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedForwardDecodeErrorZ ret_hu_conv = Result_BlindedForwardDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the BlindedHopFeatures.
+ */
+ public long hash() {
+ long ret = bindings.BlindedHopFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A [`CandidateRouteHop::Blinded`] entry.
+ */
+public class BlindedPathCandidate : CommonBase {
+ internal BlindedPathCandidate(object _dummy, long ptr) : base(ptr) { }
+ ~BlindedPathCandidate() {
+ if (ptr != 0) { bindings.BlindedPathCandidate_free(ptr); }
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.BlindedPathCandidate_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the BlindedPathCandidate
+ */
+ public BlindedPathCandidate clone() {
+ long ret = bindings.BlindedPathCandidate_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.BlindedPathCandidate ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.BlindedPathCandidate(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Bolt11InvoiceFeatures.
+ */
+ public long hash() {
+ long ret = bindings.Bolt11InvoiceFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Bolt12InvoiceFeatures.
+ */
+ public long hash() {
+ long ret = bindings.Bolt12InvoiceFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
* be sure to manage both cases correctly.
*
* Bitcoin transaction packages are defined in BIP 331 and here:
- * https://github.com/bitcoin/bitcoin/blob/master/doc/policy/packages.md
+ * <https://github.com/bitcoin/bitcoin/blob/master/doc/policy/packages.md>
*/
void broadcast_transactions(byte[][] txs);
}
* be sure to manage both cases correctly.
*
* Bitcoin transaction packages are defined in BIP 331 and here:
- * https://github.com/bitcoin/bitcoin/blob/master/doc/policy/packages.md
+ * <https://github.com/bitcoin/bitcoin/blob/master/doc/policy/packages.md>
*/
public void broadcast_transactions(byte[][] txs) {
bindings.BroadcasterInterface_broadcast_transactions(this.ptr, InternalUtils.encodeUint64Array(InternalUtils.mapArray(txs, txs_conv_8 => InternalUtils.encodeUint8Array(txs_conv_8))));
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+/**
+ * A wrapper around the various hop representations.
+ *
+ * Can be used to examine the properties of a hop,
+ * potentially to decide whether to include it in a route.
+ */
+public class CandidateRouteHop : CommonBase {
+ protected CandidateRouteHop(object _dummy, long ptr) : base(ptr) { }
+ ~CandidateRouteHop() {
+ if (ptr != 0) { bindings.CandidateRouteHop_free(ptr); }
+ }
+
+ internal static CandidateRouteHop constr_from_ptr(long ptr) {
+ long raw_ty = bindings.LDKCandidateRouteHop_ty_from_ptr(ptr);
+ switch (raw_ty) {
+ case 0: return new CandidateRouteHop_FirstHop(ptr);
+ case 1: return new CandidateRouteHop_PublicHop(ptr);
+ case 2: return new CandidateRouteHop_PrivateHop(ptr);
+ case 3: return new CandidateRouteHop_Blinded(ptr);
+ case 4: return new CandidateRouteHop_OneHopBlinded(ptr);
+ default:
+ throw new ArgumentException("Impossible enum variant");
+ }
+ }
+
+ /** A CandidateRouteHop of type FirstHop */
+ public class CandidateRouteHop_FirstHop : CandidateRouteHop {
+ public FirstHopCandidate first_hop;
+ internal CandidateRouteHop_FirstHop(long ptr) : base(null, ptr) {
+ long first_hop = bindings.LDKCandidateRouteHop_FirstHop_get_first_hop(ptr);
+ org.ldk.structs.FirstHopCandidate first_hop_hu_conv = null; if (first_hop < 0 || first_hop > 4096) { first_hop_hu_conv = new org.ldk.structs.FirstHopCandidate(null, first_hop); }
+ if (first_hop_hu_conv != null) { first_hop_hu_conv.ptrs_to.AddLast(this); };
+ this.first_hop = first_hop_hu_conv;
+ }
+ }
+ /** A CandidateRouteHop of type PublicHop */
+ public class CandidateRouteHop_PublicHop : CandidateRouteHop {
+ public PublicHopCandidate public_hop;
+ internal CandidateRouteHop_PublicHop(long ptr) : base(null, ptr) {
+ long public_hop = bindings.LDKCandidateRouteHop_PublicHop_get_public_hop(ptr);
+ org.ldk.structs.PublicHopCandidate public_hop_hu_conv = null; if (public_hop < 0 || public_hop > 4096) { public_hop_hu_conv = new org.ldk.structs.PublicHopCandidate(null, public_hop); }
+ if (public_hop_hu_conv != null) { public_hop_hu_conv.ptrs_to.AddLast(this); };
+ this.public_hop = public_hop_hu_conv;
+ }
+ }
+ /** A CandidateRouteHop of type PrivateHop */
+ public class CandidateRouteHop_PrivateHop : CandidateRouteHop {
+ public PrivateHopCandidate private_hop;
+ internal CandidateRouteHop_PrivateHop(long ptr) : base(null, ptr) {
+ long private_hop = bindings.LDKCandidateRouteHop_PrivateHop_get_private_hop(ptr);
+ org.ldk.structs.PrivateHopCandidate private_hop_hu_conv = null; if (private_hop < 0 || private_hop > 4096) { private_hop_hu_conv = new org.ldk.structs.PrivateHopCandidate(null, private_hop); }
+ if (private_hop_hu_conv != null) { private_hop_hu_conv.ptrs_to.AddLast(this); };
+ this.private_hop = private_hop_hu_conv;
+ }
+ }
+ /** A CandidateRouteHop of type Blinded */
+ public class CandidateRouteHop_Blinded : CandidateRouteHop {
+ public BlindedPathCandidate blinded;
+ internal CandidateRouteHop_Blinded(long ptr) : base(null, ptr) {
+ long blinded = bindings.LDKCandidateRouteHop_Blinded_get_blinded(ptr);
+ org.ldk.structs.BlindedPathCandidate blinded_hu_conv = null; if (blinded < 0 || blinded > 4096) { blinded_hu_conv = new org.ldk.structs.BlindedPathCandidate(null, blinded); }
+ if (blinded_hu_conv != null) { blinded_hu_conv.ptrs_to.AddLast(this); };
+ this.blinded = blinded_hu_conv;
+ }
+ }
+ /** A CandidateRouteHop of type OneHopBlinded */
+ public class CandidateRouteHop_OneHopBlinded : CandidateRouteHop {
+ public OneHopBlindedPathCandidate one_hop_blinded;
+ internal CandidateRouteHop_OneHopBlinded(long ptr) : base(null, ptr) {
+ long one_hop_blinded = bindings.LDKCandidateRouteHop_OneHopBlinded_get_one_hop_blinded(ptr);
+ org.ldk.structs.OneHopBlindedPathCandidate one_hop_blinded_hu_conv = null; if (one_hop_blinded < 0 || one_hop_blinded > 4096) { one_hop_blinded_hu_conv = new org.ldk.structs.OneHopBlindedPathCandidate(null, one_hop_blinded); }
+ if (one_hop_blinded_hu_conv != null) { one_hop_blinded_hu_conv.ptrs_to.AddLast(this); };
+ this.one_hop_blinded = one_hop_blinded_hu_conv;
+ }
+ }
+ internal long clone_ptr() {
+ long ret = bindings.CandidateRouteHop_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the CandidateRouteHop
+ */
+ public CandidateRouteHop clone() {
+ long ret = bindings.CandidateRouteHop_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.CandidateRouteHop ret_hu_conv = org.ldk.structs.CandidateRouteHop.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new FirstHop-variant CandidateRouteHop
+ */
+ public static CandidateRouteHop first_hop(org.ldk.structs.FirstHopCandidate a) {
+ long ret = bindings.CandidateRouteHop_first_hop(a == null ? 0 : a.ptr);
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.CandidateRouteHop ret_hu_conv = org.ldk.structs.CandidateRouteHop.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(a); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new PublicHop-variant CandidateRouteHop
+ */
+ public static CandidateRouteHop public_hop(org.ldk.structs.PublicHopCandidate a) {
+ long ret = bindings.CandidateRouteHop_public_hop(a == null ? 0 : a.ptr);
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.CandidateRouteHop ret_hu_conv = org.ldk.structs.CandidateRouteHop.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(a); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new PrivateHop-variant CandidateRouteHop
+ */
+ public static CandidateRouteHop private_hop(org.ldk.structs.PrivateHopCandidate a) {
+ long ret = bindings.CandidateRouteHop_private_hop(a == null ? 0 : a.ptr);
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.CandidateRouteHop ret_hu_conv = org.ldk.structs.CandidateRouteHop.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(a); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new Blinded-variant CandidateRouteHop
+ */
+ public static CandidateRouteHop blinded(org.ldk.structs.BlindedPathCandidate a) {
+ long ret = bindings.CandidateRouteHop_blinded(a == null ? 0 : a.ptr);
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.CandidateRouteHop ret_hu_conv = org.ldk.structs.CandidateRouteHop.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(a); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new OneHopBlinded-variant CandidateRouteHop
+ */
+ public static CandidateRouteHop one_hop_blinded(org.ldk.structs.OneHopBlindedPathCandidate a) {
+ long ret = bindings.CandidateRouteHop_one_hop_blinded(a == null ? 0 : a.ptr);
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.CandidateRouteHop ret_hu_conv = org.ldk.structs.CandidateRouteHop.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(a); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Returns the globally unique short channel ID for this hop, if one is known.
+ *
+ * This only returns `Some` if the channel is public (either our own, or one we've learned
+ * from the public network graph), and thus the short channel ID we have for this channel is
+ * globally unique and identifies this channel in a global namespace.
+ */
+ public Option_u64Z globally_unique_short_channel_id() {
+ long ret = bindings.CandidateRouteHop_globally_unique_short_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_u64Z ret_hu_conv = org.ldk.structs.Option_u64Z.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Returns the required difference in HTLC CLTV expiry between the [`Self::source`] and the
+ * next-hop for an HTLC taking this hop.
+ *
+ * This is the time that the node(s) in this hop have to claim the HTLC on-chain if the
+ * next-hop goes on chain with a payment preimage.
+ */
+ public int cltv_expiry_delta() {
+ int ret = bindings.CandidateRouteHop_cltv_expiry_delta(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Returns the minimum amount that can be sent over this hop, in millisatoshis.
+ */
+ public long htlc_minimum_msat() {
+ long ret = bindings.CandidateRouteHop_htlc_minimum_msat(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Returns the fees that must be paid to route an HTLC over this channel.
+ */
+ public RoutingFees fees() {
+ long ret = bindings.CandidateRouteHop_fees(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RoutingFees ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RoutingFees(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Returns the source node id of current hop.
+ *
+ * Source node id refers to the node forwarding the HTLC through this hop.
+ *
+ * For [`Self::FirstHop`] we return payer's node id.
+ */
+ public NodeId source() {
+ long ret = bindings.CandidateRouteHop_source(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.NodeId ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.NodeId(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Returns the target node id of this hop, if known.
+ *
+ * Target node id refers to the node receiving the HTLC after this hop.
+ *
+ * For [`Self::Blinded`] we return `None` because the ultimate destination after the blinded
+ * path is unknown.
+ *
+ * For [`Self::OneHopBlinded`] we return `None` because the target is the same as the source,
+ * and such a return value would be somewhat nonsensical.
+ *
+ * Note that the return value (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public NodeId target() {
+ long ret = bindings.CandidateRouteHop_target(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.NodeId ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.NodeId(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ChannelAnnouncement.
+ */
+ public long hash() {
+ long ret = bindings.ChannelAnnouncement_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ChannelAnnouncements contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
* - The counterparty will get an [`HTLCIntercepted`] event upon payment forward, and call
* [`forward_intercepted_htlc`] with less than the amount provided in
* [`HTLCIntercepted::expected_outbound_amount_msat`]. The difference between the expected and
- * actual forward amounts is their fee.
+ * actual forward amounts is their fee. See
+ * <https://github.com/BitcoinAndLightningLayerSpecs/lsp/tree/main/LSPS2#flow-lsp-trusts-client-model>
+ * for how this feature may be used in the LSP use case.
*
* # Note
* It's important for payee wallet software to verify that [`PaymentClaimable::amount_msat`] is
* - The counterparty will get an [`HTLCIntercepted`] event upon payment forward, and call
* [`forward_intercepted_htlc`] with less than the amount provided in
* [`HTLCIntercepted::expected_outbound_amount_msat`]. The difference between the expected and
- * actual forward amounts is their fee.
+ * actual forward amounts is their fee. See
+ * <https://github.com/BitcoinAndLightningLayerSpecs/lsp/tree/main/LSPS2#flow-lsp-trusts-client-model>
+ * for how this feature may be used in the LSP use case.
*
* # Note
* It's important for payee wallet software to verify that [`PaymentClaimable::amount_msat`] is
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ChannelFeatures.
+ */
+ public long hash() {
+ long ret = bindings.ChannelFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
* connection is available, the outbound `open_channel` message may fail to send, resulting in
* the channel eventually being silently forgotten (dropped on reload).
*
+ * If `temporary_channel_id` is specified, it will be used as the temporary channel ID of the
+ * channel. Otherwise, a random one will be generated for you.
+ *
* Returns the new Channel's temporary `channel_id`. This ID will appear as
* [`Event::FundingGenerationReady::temporary_channel_id`] and in
* [`ChannelDetails::channel_id`] until after
*
* Note that override_config (or a relevant inner pointer) may be NULL or all-0s to represent None
*/
- public Result_ThirtyTwoBytesAPIErrorZ create_channel(byte[] their_network_key, long channel_value_satoshis, long push_msat, org.ldk.util.UInt128 user_channel_id, org.ldk.structs.UserConfig override_config) {
- long ret = bindings.ChannelManager_create_channel(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(their_network_key, 33)), channel_value_satoshis, push_msat, InternalUtils.encodeUint8Array(user_channel_id.getLEBytes()), override_config == null ? 0 : override_config.ptr);
+ public Result_ThirtyTwoBytesAPIErrorZ create_channel(byte[] their_network_key, long channel_value_satoshis, long push_msat, org.ldk.util.UInt128 user_channel_id, org.ldk.structs.Option_ThirtyTwoBytesZ temporary_channel_id, org.ldk.structs.UserConfig override_config) {
+ long ret = bindings.ChannelManager_create_channel(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(their_network_key, 33)), channel_value_satoshis, push_msat, InternalUtils.encodeUint8Array(user_channel_id.getLEBytes()), temporary_channel_id.ptr, override_config == null ? 0 : override_config.ptr);
GC.KeepAlive(this);
GC.KeepAlive(their_network_key);
GC.KeepAlive(channel_value_satoshis);
GC.KeepAlive(push_msat);
GC.KeepAlive(user_channel_id);
+ GC.KeepAlive(temporary_channel_id);
GC.KeepAlive(override_config);
if (ret >= 0 && ret <= 4096) { return null; }
Result_ThirtyTwoBytesAPIErrorZ ret_hu_conv = Result_ThirtyTwoBytesAPIErrorZ.constr_from_ptr(ret);
+ if (this != null) { this.ptrs_to.AddLast(temporary_channel_id); };
if (this != null) { this.ptrs_to.AddLast(override_config); };
return ret_hu_conv;
}
* Return values are identical to [`Self::funding_transaction_generated`], respective to
* each individual channel and transaction output.
*
- * Do NOT broadcast the funding transaction yourself. This batch funding transcaction
+ * Do NOT broadcast the funding transaction yourself. This batch funding transaction
* will only be broadcast when we have safely received and persisted the counterparty's
* signature for each channel.
*
*
* # Errors
*
- * Errors if a duplicate `payment_id` is provided given the caveats in the aforementioned link
- * or if the provided parameters are invalid for the offer.
+ * Errors if:
+ * - a duplicate `payment_id` is provided given the caveats in the aforementioned link,
+ * - the provided parameters are invalid for the offer,
+ * - the parameterized [`Router`] is unable to create a blinded reply path for the invoice
+ * request.
*
* [`InvoiceRequest`]: crate::offers::invoice_request::InvoiceRequest
* [`InvoiceRequest::quantity`]: crate::offers::invoice_request::InvoiceRequest::quantity
* node meeting the aforementioned criteria, but there's no guarantee that they will be
* received and no retries will be made.
*
+ * # Errors
+ *
+ * Errors if the parameterized [`Router`] is unable to create a blinded payment path or reply
+ * path for the invoice.
+ *
* [`Bolt12Invoice`]: crate::offers::invoice::Bolt12Invoice
*/
public Result_NoneBolt12SemanticErrorZ request_refund_payment(org.ldk.structs.Refund refund) {
/**Handle an incoming `closing_signed` message from the given peer.
*/
void handle_closing_signed(byte[] their_node_id, ClosingSigned msg);
+ /**Handle an incoming `stfu` message from the given peer.
+ */
+ void handle_stfu(byte[] their_node_id, Stfu msg);
+ /**Handle an incoming `splice` message from the given peer.
+ */
+ void handle_splice(byte[] their_node_id, Splice msg);
+ /**Handle an incoming `splice_ack` message from the given peer.
+ */
+ void handle_splice_ack(byte[] their_node_id, SpliceAck msg);
+ /**Handle an incoming `splice_locked` message from the given peer.
+ */
+ void handle_splice_locked(byte[] their_node_id, SpliceLocked msg);
/**Handle an incoming `tx_add_input message` from the given peer.
*/
void handle_tx_add_input(byte[] their_node_id, TxAddInput msg);
arg.handle_closing_signed(_their_node_id_conv, _msg_hu_conv);
GC.KeepAlive(arg);
}
+ public void handle_stfu(long _their_node_id, long _msg) {
+ byte[] _their_node_id_conv = InternalUtils.decodeUint8Array(_their_node_id);
+ org.ldk.structs.Stfu _msg_hu_conv = null; if (_msg < 0 || _msg > 4096) { _msg_hu_conv = new org.ldk.structs.Stfu(null, _msg); }
+ arg.handle_stfu(_their_node_id_conv, _msg_hu_conv);
+ GC.KeepAlive(arg);
+ }
+ public void handle_splice(long _their_node_id, long _msg) {
+ byte[] _their_node_id_conv = InternalUtils.decodeUint8Array(_their_node_id);
+ org.ldk.structs.Splice _msg_hu_conv = null; if (_msg < 0 || _msg > 4096) { _msg_hu_conv = new org.ldk.structs.Splice(null, _msg); }
+ arg.handle_splice(_their_node_id_conv, _msg_hu_conv);
+ GC.KeepAlive(arg);
+ }
+ public void handle_splice_ack(long _their_node_id, long _msg) {
+ byte[] _their_node_id_conv = InternalUtils.decodeUint8Array(_their_node_id);
+ org.ldk.structs.SpliceAck _msg_hu_conv = null; if (_msg < 0 || _msg > 4096) { _msg_hu_conv = new org.ldk.structs.SpliceAck(null, _msg); }
+ arg.handle_splice_ack(_their_node_id_conv, _msg_hu_conv);
+ GC.KeepAlive(arg);
+ }
+ public void handle_splice_locked(long _their_node_id, long _msg) {
+ byte[] _their_node_id_conv = InternalUtils.decodeUint8Array(_their_node_id);
+ org.ldk.structs.SpliceLocked _msg_hu_conv = null; if (_msg < 0 || _msg > 4096) { _msg_hu_conv = new org.ldk.structs.SpliceLocked(null, _msg); }
+ arg.handle_splice_locked(_their_node_id_conv, _msg_hu_conv);
+ GC.KeepAlive(arg);
+ }
public void handle_tx_add_input(long _their_node_id, long _msg) {
byte[] _their_node_id_conv = InternalUtils.decodeUint8Array(_their_node_id);
org.ldk.structs.TxAddInput _msg_hu_conv = null; if (_msg < 0 || _msg > 4096) { _msg_hu_conv = new org.ldk.structs.TxAddInput(null, _msg); }
if (this != null) { this.ptrs_to.AddLast(msg); };
}
+ /**
+ * Handle an incoming `stfu` message from the given peer.
+ */
+ public void handle_stfu(byte[] their_node_id, org.ldk.structs.Stfu msg) {
+ bindings.ChannelMessageHandler_handle_stfu(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(their_node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(their_node_id);
+ GC.KeepAlive(msg);
+ if (this != null) { this.ptrs_to.AddLast(msg); };
+ }
+
+ /**
+ * Handle an incoming `splice` message from the given peer.
+ */
+ public void handle_splice(byte[] their_node_id, org.ldk.structs.Splice msg) {
+ bindings.ChannelMessageHandler_handle_splice(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(their_node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(their_node_id);
+ GC.KeepAlive(msg);
+ if (this != null) { this.ptrs_to.AddLast(msg); };
+ }
+
+ /**
+ * Handle an incoming `splice_ack` message from the given peer.
+ */
+ public void handle_splice_ack(byte[] their_node_id, org.ldk.structs.SpliceAck msg) {
+ bindings.ChannelMessageHandler_handle_splice_ack(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(their_node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(their_node_id);
+ GC.KeepAlive(msg);
+ if (this != null) { this.ptrs_to.AddLast(msg); };
+ }
+
+ /**
+ * Handle an incoming `splice_locked` message from the given peer.
+ */
+ public void handle_splice_locked(byte[] their_node_id, org.ldk.structs.SpliceLocked msg) {
+ bindings.ChannelMessageHandler_handle_splice_locked(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(their_node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(their_node_id);
+ GC.KeepAlive(msg);
+ if (this != null) { this.ptrs_to.AddLast(msg); };
+ }
+
/**
* Handle an incoming `tx_add_input message` from the given peer.
*/
* calling `chain::Filter::register_output` and `chain::Filter::register_tx` until all outputs
* have been registered.
*/
- public void load_outputs_to_watch(org.ldk.structs.Filter filter) {
- bindings.ChannelMonitor_load_outputs_to_watch(this.ptr, filter.ptr);
+ public void load_outputs_to_watch(org.ldk.structs.Filter filter, org.ldk.structs.Logger logger) {
+ bindings.ChannelMonitor_load_outputs_to_watch(this.ptr, filter.ptr, logger.ptr);
GC.KeepAlive(this);
GC.KeepAlive(filter);
+ GC.KeepAlive(logger);
if (this != null) { this.ptrs_to.AddLast(filter); };
+ if (this != null) { this.ptrs_to.AddLast(logger); };
}
/**
* to the commitment transaction being revoked, this will return a signed transaction, but
* the signature will not be valid.
*
- * [`EcdsaChannelSigner::sign_justice_revoked_output`]: crate::sign::EcdsaChannelSigner::sign_justice_revoked_output
+ * [`EcdsaChannelSigner::sign_justice_revoked_output`]: crate::sign::ecdsa::EcdsaChannelSigner::sign_justice_revoked_output
* [`Persist`]: crate::chain::chainmonitor::Persist
*/
public Result_TransactionNoneZ sign_to_local_justice_tx(byte[] justice_tx, long input_idx, long value, long commitment_number) {
/**
* Returns the set of txids that should be monitored for re-organization out of the chain.
*/
- public TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[] get_relevant_txids() {
+ public ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[] get_relevant_txids() {
long ret = bindings.ChannelMonitor_get_relevant_txids(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- int ret_conv_49_len = InternalUtils.getArrayLength(ret);
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[] ret_conv_49_arr = new TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[ret_conv_49_len];
- for (int x = 0; x < ret_conv_49_len; x++) {
- long ret_conv_49 = InternalUtils.getU64ArrayElem(ret, x);
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ ret_conv_49_hu_conv = new TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ(null, ret_conv_49);
- if (ret_conv_49_hu_conv != null) { ret_conv_49_hu_conv.ptrs_to.AddLast(this); };
- ret_conv_49_arr[x] = ret_conv_49_hu_conv;
+ int ret_conv_54_len = InternalUtils.getArrayLength(ret);
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[] ret_conv_54_arr = new ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[ret_conv_54_len];
+ for (int c = 0; c < ret_conv_54_len; c++) {
+ long ret_conv_54 = InternalUtils.getU64ArrayElem(ret, c);
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ ret_conv_54_hu_conv = new ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ(null, ret_conv_54);
+ if (ret_conv_54_hu_conv != null) { ret_conv_54_hu_conv.ptrs_to.AddLast(this); };
+ ret_conv_54_arr[c] = ret_conv_54_hu_conv;
}
bindings.free_buffer(ret);
- return ret_conv_49_arr;
+ return ret_conv_54_arr;
}
/**
* counterparty to create a secret which the counterparty can reveal to revoke previous
* states.
*/
- public byte[] get_revocation_basepoint() {
+ public RevocationBasepoint get_revocation_basepoint() {
long ret = bindings.ChannelPublicKeys_get_revocation_basepoint(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.RevocationBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* counterparty to create a secret which the counterparty can reveal to revoke previous
* states.
*/
- public void set_revocation_basepoint(byte[] val) {
- bindings.ChannelPublicKeys_set_revocation_basepoint(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_revocation_basepoint(org.ldk.structs.RevocationBasepoint val) {
+ bindings.ChannelPublicKeys_set_revocation_basepoint(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* public key which receives non-HTLC-encumbered funds which are only available for spending
* after some delay (or can be claimed via the revocation path).
*/
- public byte[] get_delayed_payment_basepoint() {
+ public DelayedPaymentBasepoint get_delayed_payment_basepoint() {
long ret = bindings.ChannelPublicKeys_get_delayed_payment_basepoint(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.DelayedPaymentBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* public key which receives non-HTLC-encumbered funds which are only available for spending
* after some delay (or can be claimed via the revocation path).
*/
- public void set_delayed_payment_basepoint(byte[] val) {
- bindings.ChannelPublicKeys_set_delayed_payment_basepoint(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_delayed_payment_basepoint(org.ldk.structs.DelayedPaymentBasepoint val) {
+ bindings.ChannelPublicKeys_set_delayed_payment_basepoint(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* The base point which is used (with derive_public_key) to derive a per-commitment public key
* which is used to encumber HTLC-in-flight outputs.
*/
- public byte[] get_htlc_basepoint() {
+ public HtlcBasepoint get_htlc_basepoint() {
long ret = bindings.ChannelPublicKeys_get_htlc_basepoint(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.HtlcBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* The base point which is used (with derive_public_key) to derive a per-commitment public key
* which is used to encumber HTLC-in-flight outputs.
*/
- public void set_htlc_basepoint(byte[] val) {
- bindings.ChannelPublicKeys_set_htlc_basepoint(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_htlc_basepoint(org.ldk.structs.HtlcBasepoint val) {
+ bindings.ChannelPublicKeys_set_htlc_basepoint(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* Constructs a new ChannelPublicKeys given each field
*/
- public static ChannelPublicKeys of(byte[] funding_pubkey_arg, byte[] revocation_basepoint_arg, byte[] payment_point_arg, byte[] delayed_payment_basepoint_arg, byte[] htlc_basepoint_arg) {
- long ret = bindings.ChannelPublicKeys_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(funding_pubkey_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(revocation_basepoint_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_point_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(delayed_payment_basepoint_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(htlc_basepoint_arg, 33)));
+ public static ChannelPublicKeys of(byte[] funding_pubkey_arg, org.ldk.structs.RevocationBasepoint revocation_basepoint_arg, byte[] payment_point_arg, org.ldk.structs.DelayedPaymentBasepoint delayed_payment_basepoint_arg, org.ldk.structs.HtlcBasepoint htlc_basepoint_arg) {
+ long ret = bindings.ChannelPublicKeys_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(funding_pubkey_arg, 33)), revocation_basepoint_arg == null ? 0 : revocation_basepoint_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_point_arg, 33)), delayed_payment_basepoint_arg == null ? 0 : delayed_payment_basepoint_arg.ptr, htlc_basepoint_arg == null ? 0 : htlc_basepoint_arg.ptr);
GC.KeepAlive(funding_pubkey_arg);
GC.KeepAlive(revocation_basepoint_arg);
GC.KeepAlive(payment_point_arg);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.ChannelPublicKeys ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.ChannelPublicKeys(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(revocation_basepoint_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(delayed_payment_basepoint_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(htlc_basepoint_arg); };
return ret_hu_conv;
}
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ChannelReady.
+ */
+ public long hash() {
+ long ret = bindings.ChannelReady_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ChannelReadys contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ChannelReestablish.
+ */
+ public long hash() {
+ long ret = bindings.ChannelReestablish_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ChannelReestablishs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
* Policy checks should be implemented in this function, including checking the amount
* sent to us and checking the HTLCs.
*
- * The preimages of outgoing HTLCs that were fulfilled since the last commitment are provided.
+ * The preimages of outbound HTLCs that were fulfilled since the last commitment are provided.
* A validating signer should ensure that an HTLC output is removed only when the matching
* preimage is provided, or when the value to holder is restored.
*
* Note that all the relevant preimages will be provided, but there may also be additional
* irrelevant or duplicate preimages.
*/
- Result_NoneNoneZ validate_holder_commitment(HolderCommitmentTransaction holder_tx, byte[][] preimages);
+ Result_NoneNoneZ validate_holder_commitment(HolderCommitmentTransaction holder_tx, byte[][] outbound_htlc_preimages);
+ /**Validate the counterparty's revocation.
+ *
+ * This is required in order for the signer to make sure that the state has moved
+ * forward and it is safe to sign the next counterparty commitment.
+ */
+ Result_NoneNoneZ validate_counterparty_revocation(long idx, byte[] secret);
/**Returns an arbitrary identifier describing the set of keys which are provided back to you in
* some [`SpendableOutputDescriptor`] types. This should be sufficient to identify this
* [`EcdsaChannelSigner`] object uniquely and lookup or re-derive its keys.
long result = InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(ret, 32));
return result;
}
- public long validate_holder_commitment(long _holder_tx, long _preimages) {
+ public long validate_holder_commitment(long _holder_tx, long _outbound_htlc_preimages) {
org.ldk.structs.HolderCommitmentTransaction _holder_tx_hu_conv = null; if (_holder_tx < 0 || _holder_tx > 4096) { _holder_tx_hu_conv = new org.ldk.structs.HolderCommitmentTransaction(null, _holder_tx); }
- int _preimages_conv_8_len = InternalUtils.getArrayLength(_preimages);
- byte[][] _preimages_conv_8_arr = new byte[_preimages_conv_8_len][];
- for (int i = 0; i < _preimages_conv_8_len; i++) {
- long _preimages_conv_8 = InternalUtils.getU64ArrayElem(_preimages, i);
- byte[] _preimages_conv_8_conv = InternalUtils.decodeUint8Array(_preimages_conv_8);
- _preimages_conv_8_arr[i] = _preimages_conv_8_conv;
+ int _outbound_htlc_preimages_conv_8_len = InternalUtils.getArrayLength(_outbound_htlc_preimages);
+ byte[][] _outbound_htlc_preimages_conv_8_arr = new byte[_outbound_htlc_preimages_conv_8_len][];
+ for (int i = 0; i < _outbound_htlc_preimages_conv_8_len; i++) {
+ long _outbound_htlc_preimages_conv_8 = InternalUtils.getU64ArrayElem(_outbound_htlc_preimages, i);
+ byte[] _outbound_htlc_preimages_conv_8_conv = InternalUtils.decodeUint8Array(_outbound_htlc_preimages_conv_8);
+ _outbound_htlc_preimages_conv_8_arr[i] = _outbound_htlc_preimages_conv_8_conv;
}
- bindings.free_buffer(_preimages);
- Result_NoneNoneZ ret = arg.validate_holder_commitment(_holder_tx_hu_conv, _preimages_conv_8_arr);
+ bindings.free_buffer(_outbound_htlc_preimages);
+ Result_NoneNoneZ ret = arg.validate_holder_commitment(_holder_tx_hu_conv, _outbound_htlc_preimages_conv_8_arr);
+ GC.KeepAlive(arg);
+ long result = ret == null ? 0 : ret.clone_ptr();
+ return result;
+ }
+ public long validate_counterparty_revocation(long _idx, long _secret) {
+ byte[] _secret_conv = InternalUtils.decodeUint8Array(_secret);
+ Result_NoneNoneZ ret = arg.validate_counterparty_revocation(_idx, _secret_conv);
GC.KeepAlive(arg);
long result = ret == null ? 0 : ret.clone_ptr();
return result;
* Policy checks should be implemented in this function, including checking the amount
* sent to us and checking the HTLCs.
*
- * The preimages of outgoing HTLCs that were fulfilled since the last commitment are provided.
+ * The preimages of outbound HTLCs that were fulfilled since the last commitment are provided.
* A validating signer should ensure that an HTLC output is removed only when the matching
* preimage is provided, or when the value to holder is restored.
*
* Note that all the relevant preimages will be provided, but there may also be additional
* irrelevant or duplicate preimages.
*/
- public Result_NoneNoneZ validate_holder_commitment(org.ldk.structs.HolderCommitmentTransaction holder_tx, byte[][] preimages) {
- long ret = bindings.ChannelSigner_validate_holder_commitment(this.ptr, holder_tx == null ? 0 : holder_tx.ptr, InternalUtils.encodeUint64Array(InternalUtils.mapArray(preimages, preimages_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(preimages_conv_8, 32)))));
+ public Result_NoneNoneZ validate_holder_commitment(org.ldk.structs.HolderCommitmentTransaction holder_tx, byte[][] outbound_htlc_preimages) {
+ long ret = bindings.ChannelSigner_validate_holder_commitment(this.ptr, holder_tx == null ? 0 : holder_tx.ptr, InternalUtils.encodeUint64Array(InternalUtils.mapArray(outbound_htlc_preimages, outbound_htlc_preimages_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(outbound_htlc_preimages_conv_8, 32)))));
GC.KeepAlive(this);
GC.KeepAlive(holder_tx);
- GC.KeepAlive(preimages);
+ GC.KeepAlive(outbound_htlc_preimages);
if (ret >= 0 && ret <= 4096) { return null; }
Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret);
if (this != null) { this.ptrs_to.AddLast(holder_tx); };
return ret_hu_conv;
}
+ /**
+ * Validate the counterparty's revocation.
+ *
+ * This is required in order for the signer to make sure that the state has moved
+ * forward and it is safe to sign the next counterparty commitment.
+ */
+ public Result_NoneNoneZ validate_counterparty_revocation(long idx, byte[] secret) {
+ long ret = bindings.ChannelSigner_validate_counterparty_revocation(this.ptr, idx, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(secret, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(idx);
+ GC.KeepAlive(secret);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
/**
* Returns an arbitrary identifier describing the set of keys which are provided back to you in
* some [`SpendableOutputDescriptor`] types. This should be sufficient to identify this
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ChannelTypeFeatures.
+ */
+ public long hash() {
+ long ret = bindings.ChannelTypeFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ChannelUpdate.
+ */
+ public long hash() {
+ long ret = bindings.ChannelUpdate_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ChannelUpdates contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
GC.KeepAlive(val);
}
+ /**
+ * The extra fee our counterparty skimmed off the top of this HTLC, if any.
+ *
+ * This value will always be 0 for [`ClaimedHTLC`]s serialized with LDK versions prior to
+ * 0.0.119.
+ */
+ public long get_counterparty_skimmed_fee_msat() {
+ long ret = bindings.ClaimedHTLC_get_counterparty_skimmed_fee_msat(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The extra fee our counterparty skimmed off the top of this HTLC, if any.
+ *
+ * This value will always be 0 for [`ClaimedHTLC`]s serialized with LDK versions prior to
+ * 0.0.119.
+ */
+ public void set_counterparty_skimmed_fee_msat(long val) {
+ bindings.ClaimedHTLC_set_counterparty_skimmed_fee_msat(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
/**
* Constructs a new ClaimedHTLC given each field
*/
- public static ClaimedHTLC of(byte[] channel_id_arg, org.ldk.util.UInt128 user_channel_id_arg, int cltv_expiry_arg, long value_msat_arg) {
- long ret = bindings.ClaimedHTLC_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)), InternalUtils.encodeUint8Array(user_channel_id_arg.getLEBytes()), cltv_expiry_arg, value_msat_arg);
+ public static ClaimedHTLC of(byte[] channel_id_arg, org.ldk.util.UInt128 user_channel_id_arg, int cltv_expiry_arg, long value_msat_arg, long counterparty_skimmed_fee_msat_arg) {
+ long ret = bindings.ClaimedHTLC_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)), InternalUtils.encodeUint8Array(user_channel_id_arg.getLEBytes()), cltv_expiry_arg, value_msat_arg, counterparty_skimmed_fee_msat_arg);
GC.KeepAlive(channel_id_arg);
GC.KeepAlive(user_channel_id_arg);
GC.KeepAlive(cltv_expiry_arg);
GC.KeepAlive(value_msat_arg);
+ GC.KeepAlive(counterparty_skimmed_fee_msat_arg);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.ClaimedHTLC ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.ClaimedHTLC(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ClosingSigned.
+ */
+ public long hash() {
+ long ret = bindings.ClosingSigned_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ClosingSigneds contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ClosingSignedFeeRange.
+ */
+ public long hash() {
+ long ret = bindings.ClosingSignedFeeRange_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ClosingSignedFeeRanges contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
Result_CoinSelectionNoneZ select_confirmed_utxos(byte[] claim_id, Input[] must_spend, TxOut[] must_pay_to, int target_feerate_sat_per_1000_weight);
/**Signs and provides the full witness for all inputs within the transaction known to the
* trait (i.e., any provided via [`CoinSelectionSource::select_confirmed_utxos`]).
+ *
+ * If your wallet does not support signing PSBTs you can call `psbt.extract_tx()` to get the
+ * unsigned transaction and then sign it with your wallet.
*/
- Result_TransactionNoneZ sign_tx(byte[] tx);
+ Result_TransactionNoneZ sign_psbt(byte[] psbt);
}
/**
long result = ret == null ? 0 : ret.clone_ptr();
return result;
}
- public long sign_tx(long _tx) {
- byte[] _tx_conv = InternalUtils.decodeUint8Array(_tx);
- Result_TransactionNoneZ ret = arg.sign_tx(_tx_conv);
+ public long sign_psbt(long _psbt) {
+ byte[] _psbt_conv = InternalUtils.decodeUint8Array(_psbt);
+ Result_TransactionNoneZ ret = arg.sign_psbt(_psbt_conv);
GC.KeepAlive(arg);
long result = ret == null ? 0 : ret.clone_ptr();
return result;
/**
* Signs and provides the full witness for all inputs within the transaction known to the
* trait (i.e., any provided via [`CoinSelectionSource::select_confirmed_utxos`]).
+ *
+ * If your wallet does not support signing PSBTs you can call `psbt.extract_tx()` to get the
+ * unsigned transaction and then sign it with your wallet.
*/
- public Result_TransactionNoneZ sign_tx(byte[] tx) {
- long ret = bindings.CoinSelectionSource_sign_tx(this.ptr, InternalUtils.encodeUint8Array(tx));
+ public Result_TransactionNoneZ sign_psbt(byte[] psbt) {
+ long ret = bindings.CoinSelectionSource_sign_psbt(this.ptr, InternalUtils.encodeUint8Array(psbt));
GC.KeepAlive(this);
- GC.KeepAlive(tx);
+ GC.KeepAlive(psbt);
if (ret >= 0 && ret <= 4096) { return null; }
Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret);
return ret_hu_conv;
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the CommitmentSigned.
+ */
+ public long hash() {
+ long ret = bindings.CommitmentSigned_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two CommitmentSigneds contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the CommitmentUpdate.
+ */
+ public long hash() {
+ long ret = bindings.CommitmentUpdate_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two CommitmentUpdates contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
*/
void best_block_updated(byte[] header, int height);
/**Returns transactions that must be monitored for reorganization out of the chain along
- * with the hash of the block as part of which it had been previously confirmed.
+ * with the height and the hash of the block as part of which it had been previously confirmed.
*
* Note that the returned `Option<BlockHash>` might be `None` for channels created with LDK
* 0.0.112 and prior, in which case you need to manually track previous confirmations.
* given to [`transaction_unconfirmed`].
*
* If any of the returned transactions are confirmed in a block other than the one with the
- * given hash, they need to be unconfirmed and reconfirmed via [`transaction_unconfirmed`] and
- * [`transactions_confirmed`], respectively.
+ * given hash at the given height, they need to be unconfirmed and reconfirmed via
+ * [`transaction_unconfirmed`] and [`transactions_confirmed`], respectively.
*
* [`transactions_confirmed`]: Self::transactions_confirmed
* [`transaction_unconfirmed`]: Self::transaction_unconfirmed
*/
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[] get_relevant_txids();
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[] get_relevant_txids();
}
/**
GC.KeepAlive(arg);
}
public long get_relevant_txids() {
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[] ret = arg.get_relevant_txids();
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[] ret = arg.get_relevant_txids();
GC.KeepAlive(arg);
- long result = InternalUtils.encodeUint64Array(InternalUtils.mapArray(ret, ret_conv_49 => ret_conv_49 == null ? 0 : ret_conv_49.clone_ptr()));
+ long result = InternalUtils.encodeUint64Array(InternalUtils.mapArray(ret, ret_conv_54 => ret_conv_54 == null ? 0 : ret_conv_54.clone_ptr()));
return result;
}
}
/**
* Returns transactions that must be monitored for reorganization out of the chain along
- * with the hash of the block as part of which it had been previously confirmed.
+ * with the height and the hash of the block as part of which it had been previously confirmed.
*
* Note that the returned `Option<BlockHash>` might be `None` for channels created with LDK
* 0.0.112 and prior, in which case you need to manually track previous confirmations.
* given to [`transaction_unconfirmed`].
*
* If any of the returned transactions are confirmed in a block other than the one with the
- * given hash, they need to be unconfirmed and reconfirmed via [`transaction_unconfirmed`] and
- * [`transactions_confirmed`], respectively.
+ * given hash at the given height, they need to be unconfirmed and reconfirmed via
+ * [`transaction_unconfirmed`] and [`transactions_confirmed`], respectively.
*
* [`transactions_confirmed`]: Self::transactions_confirmed
* [`transaction_unconfirmed`]: Self::transaction_unconfirmed
*/
- public TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[] get_relevant_txids() {
+ public ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[] get_relevant_txids() {
long ret = bindings.Confirm_get_relevant_txids(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- int ret_conv_49_len = InternalUtils.getArrayLength(ret);
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[] ret_conv_49_arr = new TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ[ret_conv_49_len];
- for (int x = 0; x < ret_conv_49_len; x++) {
- long ret_conv_49 = InternalUtils.getU64ArrayElem(ret, x);
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ ret_conv_49_hu_conv = new TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ(null, ret_conv_49);
- if (ret_conv_49_hu_conv != null) { ret_conv_49_hu_conv.ptrs_to.AddLast(this); };
- ret_conv_49_arr[x] = ret_conv_49_hu_conv;
+ int ret_conv_54_len = InternalUtils.getArrayLength(ret);
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[] ret_conv_54_arr = new ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ[ret_conv_54_len];
+ for (int c = 0; c < ret_conv_54_len; c++) {
+ long ret_conv_54 = InternalUtils.getU64ArrayElem(ret, c);
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ ret_conv_54_hu_conv = new ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ(null, ret_conv_54);
+ if (ret_conv_54_hu_conv != null) { ret_conv_54_hu_conv.ptrs_to.AddLast(this); };
+ ret_conv_54_arr[c] = ret_conv_54_hu_conv;
}
bindings.free_buffer(ret);
- return ret_conv_49_arr;
+ return ret_conv_54_arr;
}
}
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the DecodeError.
+ */
+ public long hash() {
+ long ret = bindings.DecodeError_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two DecodeErrors contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
}
/**
- * Constructs a new DefaultMessageRouter given each field
+ * Creates a [`DefaultMessageRouter`] using the given [`NetworkGraph`].
*/
- public static DefaultMessageRouter of() {
- long ret = bindings.DefaultMessageRouter_new();
+ public static DefaultMessageRouter of(org.ldk.structs.NetworkGraph network_graph, org.ldk.structs.EntropySource entropy_source) {
+ long ret = bindings.DefaultMessageRouter_new(network_graph == null ? 0 : network_graph.ptr, entropy_source.ptr);
+ GC.KeepAlive(network_graph);
+ GC.KeepAlive(entropy_source);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.DefaultMessageRouter ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DefaultMessageRouter(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(network_graph); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(entropy_source); };
return ret_hu_conv;
}
/**
* Creates a new router.
*/
- public static DefaultRouter of(org.ldk.structs.NetworkGraph network_graph, org.ldk.structs.Logger logger, byte[] random_seed_bytes, org.ldk.structs.LockableScore scorer, org.ldk.structs.ProbabilisticScoringFeeParameters score_params) {
- long ret = bindings.DefaultRouter_new(network_graph == null ? 0 : network_graph.ptr, logger.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(random_seed_bytes, 32)), scorer.ptr, score_params == null ? 0 : score_params.ptr);
+ public static DefaultRouter of(org.ldk.structs.NetworkGraph network_graph, org.ldk.structs.Logger logger, org.ldk.structs.EntropySource entropy_source, org.ldk.structs.LockableScore scorer, org.ldk.structs.ProbabilisticScoringFeeParameters score_params) {
+ long ret = bindings.DefaultRouter_new(network_graph == null ? 0 : network_graph.ptr, logger.ptr, entropy_source.ptr, scorer.ptr, score_params == null ? 0 : score_params.ptr);
GC.KeepAlive(network_graph);
GC.KeepAlive(logger);
- GC.KeepAlive(random_seed_bytes);
+ GC.KeepAlive(entropy_source);
GC.KeepAlive(scorer);
GC.KeepAlive(score_params);
if (ret >= 0 && ret <= 4096) { return null; }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(network_graph); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(logger); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(entropy_source); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(scorer); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(score_params); };
return ret_hu_conv;
return ret_hu_conv;
}
+ /**
+ * Constructs a new MessageRouter which calls the relevant methods on this_arg.
+ * This copies the `inner` pointer in this_arg and thus the returned MessageRouter must be freed before this_arg is
+ */
+ public MessageRouter as_MessageRouter() {
+ long ret = bindings.DefaultRouter_as_MessageRouter(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ MessageRouter ret_hu_conv = new MessageRouter(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
}
} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Base key used in conjunction with a `per_commitment_point` to generate a [`DelayedPaymentKey`].
+ *
+ * The delayed payment key is used to pay the commitment state broadcaster their
+ * non-HTLC-encumbered funds after a delay to give their counterparty a chance to punish if the
+ * state broadcasted was previously revoked.
+ */
+public class DelayedPaymentBasepoint : CommonBase {
+ internal DelayedPaymentBasepoint(object _dummy, long ptr) : base(ptr) { }
+ ~DelayedPaymentBasepoint() {
+ if (ptr != 0) { bindings.DelayedPaymentBasepoint_free(ptr); }
+ }
+
+ public byte[] get_a() {
+ long ret = bindings.DelayedPaymentBasepoint_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ public void set_a(byte[] val) {
+ bindings.DelayedPaymentBasepoint_set_a(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new DelayedPaymentBasepoint given each field
+ */
+ public static DelayedPaymentBasepoint of(byte[] a_arg) {
+ long ret = bindings.DelayedPaymentBasepoint_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a_arg, 33)));
+ GC.KeepAlive(a_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.DelayedPaymentBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two DelayedPaymentBasepoints contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.DelayedPaymentBasepoint b) {
+ bool ret = bindings.DelayedPaymentBasepoint_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is DelayedPaymentBasepoint)) return false;
+ return this.eq((DelayedPaymentBasepoint)o);
+ }
+ internal long clone_ptr() {
+ long ret = bindings.DelayedPaymentBasepoint_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the DelayedPaymentBasepoint
+ */
+ public DelayedPaymentBasepoint clone() {
+ long ret = bindings.DelayedPaymentBasepoint_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.DelayedPaymentBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Generates a non-cryptographic 64-bit hash of the DelayedPaymentBasepoint.
+ */
+ public long hash() {
+ long ret = bindings.DelayedPaymentBasepoint_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
+ /**
+ * Get inner Public Key
+ */
+ public byte[] to_public_key() {
+ long ret = bindings.DelayedPaymentBasepoint_to_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Serialize the DelayedPaymentBasepoint object into a byte array which can be read by DelayedPaymentBasepoint_read
+ */
+ public byte[] write() {
+ long ret = bindings.DelayedPaymentBasepoint_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a DelayedPaymentBasepoint from a byte array, created by DelayedPaymentBasepoint_write
+ */
+ public static Result_DelayedPaymentBasepointDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.DelayedPaymentBasepoint_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentBasepointDecodeErrorZ ret_hu_conv = Result_DelayedPaymentBasepointDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A derived key built from a [`DelayedPaymentBasepoint`] and `per_commitment_point`.
+ *
+ * The delayed payment key is used to pay the commitment state broadcaster their
+ * non-HTLC-encumbered funds after a delay. This delay gives their counterparty a chance to
+ * punish and claim all the channel funds if the state broadcasted was previously revoked.
+ *
+ * [See the BOLT specs]
+ * (https://github.com/lightning/bolts/blob/master/03-transactions.md#localpubkey-local_htlcpubkey-remote_htlcpubkey-local_delayedpubkey-and-remote_delayedpubkey-derivation)
+ * for more information on key derivation details.
+ */
+public class DelayedPaymentKey : CommonBase {
+ internal DelayedPaymentKey(object _dummy, long ptr) : base(ptr) { }
+ ~DelayedPaymentKey() {
+ if (ptr != 0) { bindings.DelayedPaymentKey_free(ptr); }
+ }
+
+ public byte[] get_a() {
+ long ret = bindings.DelayedPaymentKey_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ public void set_a(byte[] val) {
+ bindings.DelayedPaymentKey_set_a(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new DelayedPaymentKey given each field
+ */
+ public static DelayedPaymentKey of(byte[] a_arg) {
+ long ret = bindings.DelayedPaymentKey_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a_arg, 33)));
+ GC.KeepAlive(a_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.DelayedPaymentKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two DelayedPaymentKeys contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.DelayedPaymentKey b) {
+ bool ret = bindings.DelayedPaymentKey_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is DelayedPaymentKey)) return false;
+ return this.eq((DelayedPaymentKey)o);
+ }
+ internal long clone_ptr() {
+ long ret = bindings.DelayedPaymentKey_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the DelayedPaymentKey
+ */
+ public DelayedPaymentKey clone() {
+ long ret = bindings.DelayedPaymentKey_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.DelayedPaymentKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Derive a public delayedpubkey using one node\'s `per_commitment_point` and its countersignatory\'s `basepoint`
+ */
+ public static DelayedPaymentKey from_basepoint(org.ldk.structs.DelayedPaymentBasepoint countersignatory_basepoint, byte[] per_commitment_point) {
+ long ret = bindings.DelayedPaymentKey_from_basepoint(countersignatory_basepoint == null ? 0 : countersignatory_basepoint.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)));
+ GC.KeepAlive(countersignatory_basepoint);
+ GC.KeepAlive(per_commitment_point);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.DelayedPaymentKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(countersignatory_basepoint); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Build a delayedpubkey directly from an already-derived private key
+ */
+ public static DelayedPaymentKey from_secret_key(byte[] sk) {
+ long ret = bindings.DelayedPaymentKey_from_secret_key(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(sk, 32)));
+ GC.KeepAlive(sk);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.DelayedPaymentKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Get inner Public Key
+ */
+ public byte[] to_public_key() {
+ long ret = bindings.DelayedPaymentKey_to_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Serialize the DelayedPaymentKey object into a byte array which can be read by DelayedPaymentKey_read
+ */
+ public byte[] write() {
+ long ret = bindings.DelayedPaymentKey_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a DelayedPaymentKey from a byte array, created by DelayedPaymentKey_write
+ */
+ public static Result_DelayedPaymentKeyDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.DelayedPaymentKey_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentKeyDecodeErrorZ ret_hu_conv = Result_DelayedPaymentKeyDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
* The revocation point specific to the commitment transaction which was broadcast. Used to
* derive the witnessScript for this output.
*/
- public byte[] get_revocation_pubkey() {
+ public RevocationKey get_revocation_pubkey() {
long ret = bindings.DelayedPaymentOutputDescriptor_get_revocation_pubkey(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.RevocationKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* The revocation point specific to the commitment transaction which was broadcast. Used to
* derive the witnessScript for this output.
*/
- public void set_revocation_pubkey(byte[] val) {
- bindings.DelayedPaymentOutputDescriptor_set_revocation_pubkey(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_revocation_pubkey(org.ldk.structs.RevocationKey val) {
+ bindings.DelayedPaymentOutputDescriptor_set_revocation_pubkey(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
/**
* Constructs a new DelayedPaymentOutputDescriptor given each field
*/
- public static DelayedPaymentOutputDescriptor of(org.ldk.structs.OutPoint outpoint_arg, byte[] per_commitment_point_arg, short to_self_delay_arg, org.ldk.structs.TxOut output_arg, byte[] revocation_pubkey_arg, byte[] channel_keys_id_arg, long channel_value_satoshis_arg) {
- long ret = bindings.DelayedPaymentOutputDescriptor_new(outpoint_arg == null ? 0 : outpoint_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point_arg, 33)), to_self_delay_arg, output_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(revocation_pubkey_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_keys_id_arg, 32)), channel_value_satoshis_arg);
+ public static DelayedPaymentOutputDescriptor of(org.ldk.structs.OutPoint outpoint_arg, byte[] per_commitment_point_arg, short to_self_delay_arg, org.ldk.structs.TxOut output_arg, org.ldk.structs.RevocationKey revocation_pubkey_arg, byte[] channel_keys_id_arg, long channel_value_satoshis_arg) {
+ long ret = bindings.DelayedPaymentOutputDescriptor_new(outpoint_arg == null ? 0 : outpoint_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point_arg, 33)), to_self_delay_arg, output_arg.ptr, revocation_pubkey_arg == null ? 0 : revocation_pubkey_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_keys_id_arg, 32)), channel_value_satoshis_arg);
GC.KeepAlive(outpoint_arg);
GC.KeepAlive(per_commitment_point_arg);
GC.KeepAlive(to_self_delay_arg);
org.ldk.structs.DelayedPaymentOutputDescriptor ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentOutputDescriptor(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(outpoint_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(revocation_pubkey_arg); };
return ret_hu_conv;
}
}
/**
- * Returns the underlying description [`String`]
+ * Returns the underlying description [`UntrustedString`]
*/
- public string into_inner() {
+ public UntrustedString into_inner() {
long ret = bindings.Description_into_inner(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- string ret_conv = InternalUtils.decodeString(ret);
+ org.ldk.structs.UntrustedString ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.UntrustedString(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
if (this != null) { this.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Get the string representation of a Description object
+ */
+ public string to_str() {
+ long ret = bindings.Description_to_str(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ string ret_conv = InternalUtils.decodeString(ret);
return ret_conv;
}
return ret_hu_conv;
}
- /**
- * Returns the maximum HTLC amount allowed over the channel in the direction.
- */
- public long htlc_maximum_msat() {
- long ret = bindings.DirectedChannelInfo_htlc_maximum_msat(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
/**
* Returns the [`EffectiveCapacity`] of the channel in the direction.
*
* Policy checks should be implemented in this function, including checking the amount
* sent to us and checking the HTLCs.
*
- * The preimages of outgoing HTLCs that were fulfilled since the last commitment are provided.
- * A validating signer should ensure that an HTLC output is removed only when the matching
- * preimage is provided, or when the value to holder is restored.
+ * The preimages of outbound and inbound HTLCs that were fulfilled since the last commitment
+ * are provided. A validating signer should ensure that an outbound HTLC output is removed
+ * only when the matching preimage is provided and after the corresponding inbound HTLC has
+ * been removed for forwarded payments.
*
* Note that all the relevant preimages will be provided, but there may also be additional
* irrelevant or duplicate preimages.
*/
- Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment(CommitmentTransaction commitment_tx, byte[][] preimages);
- /**Validate the counterparty's revocation.
- *
- * This is required in order for the signer to make sure that the state has moved
- * forward and it is safe to sign the next counterparty commitment.
- */
- Result_NoneNoneZ validate_counterparty_revocation(long idx, byte[] secret);
+ Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment(CommitmentTransaction commitment_tx, byte[][] inbound_htlc_preimages, byte[][] outbound_htlc_preimages);
/**Creates a signature for a holder's commitment transaction.
*
* This will be called
* [`ChannelMonitor`] [replica](https://github.com/lightningdevkit/rust-lightning/blob/main/GLOSSARY.md#monitor-replicas)
* broadcasts it before receiving the update for the latest commitment transaction.
*
- * [`EcdsaSighashType::All`]: bitcoin::blockdata::transaction::EcdsaSighashType::All
+ * [`EcdsaSighashType::All`]: bitcoin::sighash::EcdsaSighashType::All
* [`ChannelMonitor`]: crate::chain::channelmonitor::ChannelMonitor
*/
Result_ECDSASignatureNoneZ sign_holder_htlc_transaction(byte[] htlc_tx, long input, HTLCDescriptor htlc_descriptor);
* Note that if this fails or is rejected, the channel will not be publicly announced and
* our counterparty may (though likely will not) close the channel on us for violating the
* protocol.
+ *
+ * [`NodeSigner::sign_gossip_message`]: crate::sign::NodeSigner::sign_gossip_message
*/
Result_ECDSASignatureNoneZ sign_channel_announcement_with_funding_key(UnsignedChannelAnnouncement msg);
}
internal LDKEcdsaChannelSignerImpl(EcdsaChannelSignerInterface arg, LDKEcdsaChannelSignerHolder impl_holder) { this.arg = arg; this.impl_holder = impl_holder; }
private EcdsaChannelSignerInterface arg;
private LDKEcdsaChannelSignerHolder impl_holder;
- public long sign_counterparty_commitment(long _commitment_tx, long _preimages) {
+ public long sign_counterparty_commitment(long _commitment_tx, long _inbound_htlc_preimages, long _outbound_htlc_preimages) {
org.ldk.structs.CommitmentTransaction _commitment_tx_hu_conv = null; if (_commitment_tx < 0 || _commitment_tx > 4096) { _commitment_tx_hu_conv = new org.ldk.structs.CommitmentTransaction(null, _commitment_tx); }
- int _preimages_conv_8_len = InternalUtils.getArrayLength(_preimages);
- byte[][] _preimages_conv_8_arr = new byte[_preimages_conv_8_len][];
- for (int i = 0; i < _preimages_conv_8_len; i++) {
- long _preimages_conv_8 = InternalUtils.getU64ArrayElem(_preimages, i);
- byte[] _preimages_conv_8_conv = InternalUtils.decodeUint8Array(_preimages_conv_8);
- _preimages_conv_8_arr[i] = _preimages_conv_8_conv;
+ int _inbound_htlc_preimages_conv_8_len = InternalUtils.getArrayLength(_inbound_htlc_preimages);
+ byte[][] _inbound_htlc_preimages_conv_8_arr = new byte[_inbound_htlc_preimages_conv_8_len][];
+ for (int i = 0; i < _inbound_htlc_preimages_conv_8_len; i++) {
+ long _inbound_htlc_preimages_conv_8 = InternalUtils.getU64ArrayElem(_inbound_htlc_preimages, i);
+ byte[] _inbound_htlc_preimages_conv_8_conv = InternalUtils.decodeUint8Array(_inbound_htlc_preimages_conv_8);
+ _inbound_htlc_preimages_conv_8_arr[i] = _inbound_htlc_preimages_conv_8_conv;
}
- bindings.free_buffer(_preimages);
- Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ ret = arg.sign_counterparty_commitment(_commitment_tx_hu_conv, _preimages_conv_8_arr);
- GC.KeepAlive(arg);
- long result = ret == null ? 0 : ret.clone_ptr();
- return result;
- }
- public long validate_counterparty_revocation(long _idx, long _secret) {
- byte[] _secret_conv = InternalUtils.decodeUint8Array(_secret);
- Result_NoneNoneZ ret = arg.validate_counterparty_revocation(_idx, _secret_conv);
+ bindings.free_buffer(_inbound_htlc_preimages);
+ int _outbound_htlc_preimages_conv_8_len = InternalUtils.getArrayLength(_outbound_htlc_preimages);
+ byte[][] _outbound_htlc_preimages_conv_8_arr = new byte[_outbound_htlc_preimages_conv_8_len][];
+ for (int i = 0; i < _outbound_htlc_preimages_conv_8_len; i++) {
+ long _outbound_htlc_preimages_conv_8 = InternalUtils.getU64ArrayElem(_outbound_htlc_preimages, i);
+ byte[] _outbound_htlc_preimages_conv_8_conv = InternalUtils.decodeUint8Array(_outbound_htlc_preimages_conv_8);
+ _outbound_htlc_preimages_conv_8_arr[i] = _outbound_htlc_preimages_conv_8_conv;
+ }
+ bindings.free_buffer(_outbound_htlc_preimages);
+ Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ ret = arg.sign_counterparty_commitment(_commitment_tx_hu_conv, _inbound_htlc_preimages_conv_8_arr, _outbound_htlc_preimages_conv_8_arr);
GC.KeepAlive(arg);
long result = ret == null ? 0 : ret.clone_ptr();
return result;
* Policy checks should be implemented in this function, including checking the amount
* sent to us and checking the HTLCs.
*
- * The preimages of outgoing HTLCs that were fulfilled since the last commitment are provided.
- * A validating signer should ensure that an HTLC output is removed only when the matching
- * preimage is provided, or when the value to holder is restored.
+ * The preimages of outbound and inbound HTLCs that were fulfilled since the last commitment
+ * are provided. A validating signer should ensure that an outbound HTLC output is removed
+ * only when the matching preimage is provided and after the corresponding inbound HTLC has
+ * been removed for forwarded payments.
*
* Note that all the relevant preimages will be provided, but there may also be additional
* irrelevant or duplicate preimages.
*/
- public Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment(org.ldk.structs.CommitmentTransaction commitment_tx, byte[][] preimages) {
- long ret = bindings.EcdsaChannelSigner_sign_counterparty_commitment(this.ptr, commitment_tx == null ? 0 : commitment_tx.ptr, InternalUtils.encodeUint64Array(InternalUtils.mapArray(preimages, preimages_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(preimages_conv_8, 32)))));
+ public Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ sign_counterparty_commitment(org.ldk.structs.CommitmentTransaction commitment_tx, byte[][] inbound_htlc_preimages, byte[][] outbound_htlc_preimages) {
+ long ret = bindings.EcdsaChannelSigner_sign_counterparty_commitment(this.ptr, commitment_tx == null ? 0 : commitment_tx.ptr, InternalUtils.encodeUint64Array(InternalUtils.mapArray(inbound_htlc_preimages, inbound_htlc_preimages_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(inbound_htlc_preimages_conv_8, 32)))), InternalUtils.encodeUint64Array(InternalUtils.mapArray(outbound_htlc_preimages, outbound_htlc_preimages_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(outbound_htlc_preimages_conv_8, 32)))));
GC.KeepAlive(this);
GC.KeepAlive(commitment_tx);
- GC.KeepAlive(preimages);
+ GC.KeepAlive(inbound_htlc_preimages);
+ GC.KeepAlive(outbound_htlc_preimages);
if (ret >= 0 && ret <= 4096) { return null; }
Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ ret_hu_conv = Result_C2Tuple_ECDSASignatureCVec_ECDSASignatureZZNoneZ.constr_from_ptr(ret);
if (this != null) { this.ptrs_to.AddLast(commitment_tx); };
return ret_hu_conv;
}
- /**
- * Validate the counterparty's revocation.
- *
- * This is required in order for the signer to make sure that the state has moved
- * forward and it is safe to sign the next counterparty commitment.
- */
- public Result_NoneNoneZ validate_counterparty_revocation(long idx, byte[] secret) {
- long ret = bindings.EcdsaChannelSigner_validate_counterparty_revocation(this.ptr, idx, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(secret, 32)));
- GC.KeepAlive(this);
- GC.KeepAlive(idx);
- GC.KeepAlive(secret);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NoneNoneZ ret_hu_conv = Result_NoneNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
/**
* Creates a signature for a holder's commitment transaction.
*
* [`ChannelMonitor`] [replica](https://github.com/lightningdevkit/rust-lightning/blob/main/GLOSSARY.md#monitor-replicas)
* broadcasts it before receiving the update for the latest commitment transaction.
*
- * [`EcdsaSighashType::All`]: bitcoin::blockdata::transaction::EcdsaSighashType::All
+ * [`EcdsaSighashType::All`]: bitcoin::sighash::EcdsaSighashType::All
* [`ChannelMonitor`]: crate::chain::channelmonitor::ChannelMonitor
*/
public Result_ECDSASignatureNoneZ sign_holder_htlc_transaction(byte[] htlc_tx, long input, org.ldk.structs.HTLCDescriptor htlc_descriptor) {
* Note that if this fails or is rejected, the channel will not be publicly announced and
* our counterparty may (though likely will not) close the channel on us for violating the
* protocol.
+ *
+ * [`NodeSigner::sign_gossip_message`]: crate::sign::NodeSigner::sign_gossip_message
*/
public Result_ECDSASignatureNoneZ sign_channel_announcement_with_funding_key(org.ldk.structs.UnsignedChannelAnnouncement msg) {
long ret = bindings.EcdsaChannelSigner_sign_channel_announcement_with_funding_key(this.ptr, msg == null ? 0 : msg.ptr);
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ErrorAction.
+ */
+ public long hash() {
+ long ret = bindings.ErrorAction_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
}
} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ErrorMessage.
+ */
+ public long hash() {
+ long ret = bindings.ErrorMessage_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ErrorMessages contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
case 0: return new Event_FundingGenerationReady(ptr);
case 1: return new Event_PaymentClaimable(ptr);
case 2: return new Event_PaymentClaimed(ptr);
- case 3: return new Event_InvoiceRequestFailed(ptr);
- case 4: return new Event_PaymentSent(ptr);
- case 5: return new Event_PaymentFailed(ptr);
- case 6: return new Event_PaymentPathSuccessful(ptr);
- case 7: return new Event_PaymentPathFailed(ptr);
- case 8: return new Event_ProbeSuccessful(ptr);
- case 9: return new Event_ProbeFailed(ptr);
- case 10: return new Event_PendingHTLCsForwardable(ptr);
- case 11: return new Event_HTLCIntercepted(ptr);
- case 12: return new Event_SpendableOutputs(ptr);
- case 13: return new Event_PaymentForwarded(ptr);
- case 14: return new Event_ChannelPending(ptr);
- case 15: return new Event_ChannelReady(ptr);
- case 16: return new Event_ChannelClosed(ptr);
- case 17: return new Event_DiscardFunding(ptr);
- case 18: return new Event_OpenChannelRequest(ptr);
- case 19: return new Event_HTLCHandlingFailed(ptr);
- case 20: return new Event_BumpTransaction(ptr);
+ case 3: return new Event_ConnectionNeeded(ptr);
+ case 4: return new Event_InvoiceRequestFailed(ptr);
+ case 5: return new Event_PaymentSent(ptr);
+ case 6: return new Event_PaymentFailed(ptr);
+ case 7: return new Event_PaymentPathSuccessful(ptr);
+ case 8: return new Event_PaymentPathFailed(ptr);
+ case 9: return new Event_ProbeSuccessful(ptr);
+ case 10: return new Event_ProbeFailed(ptr);
+ case 11: return new Event_PendingHTLCsForwardable(ptr);
+ case 12: return new Event_HTLCIntercepted(ptr);
+ case 13: return new Event_SpendableOutputs(ptr);
+ case 14: return new Event_PaymentForwarded(ptr);
+ case 15: return new Event_ChannelPending(ptr);
+ case 16: return new Event_ChannelReady(ptr);
+ case 17: return new Event_ChannelClosed(ptr);
+ case 18: return new Event_DiscardFunding(ptr);
+ case 19: return new Event_OpenChannelRequest(ptr);
+ case 20: return new Event_HTLCHandlingFailed(ptr);
+ case 21: return new Event_BumpTransaction(ptr);
default:
throw new ArgumentException("Impossible enum variant");
}
this.sender_intended_total_msat = sender_intended_total_msat_hu_conv;
}
}
+ /** A Event of type ConnectionNeeded */
+ public class Event_ConnectionNeeded : Event {
+ /**
+ * The node id for the node needing a connection.
+ */
+ public byte[] node_id;
+ /**
+ * Sockets for connecting to the node.
+ */
+ public SocketAddress[] addresses;
+ internal Event_ConnectionNeeded(long ptr) : base(null, ptr) {
+ long node_id = bindings.LDKEvent_ConnectionNeeded_get_node_id(ptr);
+ byte[] node_id_conv = InternalUtils.decodeUint8Array(node_id);
+ this.node_id = node_id_conv;
+ long addresses = bindings.LDKEvent_ConnectionNeeded_get_addresses(ptr);
+ int addresses_conv_15_len = InternalUtils.getArrayLength(addresses);
+ SocketAddress[] addresses_conv_15_arr = new SocketAddress[addresses_conv_15_len];
+ for (int p = 0; p < addresses_conv_15_len; p++) {
+ long addresses_conv_15 = InternalUtils.getU64ArrayElem(addresses, p);
+ org.ldk.structs.SocketAddress addresses_conv_15_hu_conv = org.ldk.structs.SocketAddress.constr_from_ptr(addresses_conv_15);
+ if (addresses_conv_15_hu_conv != null) { addresses_conv_15_hu_conv.ptrs_to.AddLast(this); };
+ addresses_conv_15_arr[p] = addresses_conv_15_hu_conv;
+ }
+ bindings.free_buffer(addresses);
+ this.addresses = addresses_conv_15_arr;
+ }
+ }
/** A Event of type InvoiceRequestFailed */
public class Event_InvoiceRequestFailed : Event {
/**
* This field will be `None` for objects serialized prior to LDK 0.0.117.
*/
public Option_u64Z channel_capacity_sats;
+ /**
+ * The original channel funding TXO; this helps checking for the existence and confirmation
+ * status of the closing tx.
+ * Note that for instances serialized in v0.0.119 or prior this will be missing (None).
+ *
+ * Note that this (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public OutPoint channel_funding_txo;
internal Event_ChannelClosed(long ptr) : base(null, ptr) {
long channel_id = bindings.LDKEvent_ChannelClosed_get_channel_id(ptr);
byte[] channel_id_conv = InternalUtils.decodeUint8Array(channel_id);
org.ldk.structs.Option_u64Z channel_capacity_sats_hu_conv = org.ldk.structs.Option_u64Z.constr_from_ptr(channel_capacity_sats);
if (channel_capacity_sats_hu_conv != null) { channel_capacity_sats_hu_conv.ptrs_to.AddLast(this); };
this.channel_capacity_sats = channel_capacity_sats_hu_conv;
+ long channel_funding_txo = bindings.LDKEvent_ChannelClosed_get_channel_funding_txo(ptr);
+ org.ldk.structs.OutPoint channel_funding_txo_hu_conv = null; if (channel_funding_txo < 0 || channel_funding_txo > 4096) { channel_funding_txo_hu_conv = new org.ldk.structs.OutPoint(null, channel_funding_txo); }
+ if (channel_funding_txo_hu_conv != null) { channel_funding_txo_hu_conv.ptrs_to.AddLast(this); };
+ this.channel_funding_txo = channel_funding_txo_hu_conv;
}
}
/** A Event of type DiscardFunding */
return ret_hu_conv;
}
+ /**
+ * Utility method to constructs a new ConnectionNeeded-variant Event
+ */
+ public static Event connection_needed(byte[] node_id, SocketAddress[] addresses) {
+ long ret = bindings.Event_connection_needed(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(node_id, 33)), InternalUtils.encodeUint64Array(InternalUtils.mapArray(addresses, addresses_conv_15 => addresses_conv_15.ptr)));
+ GC.KeepAlive(node_id);
+ GC.KeepAlive(addresses);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Event ret_hu_conv = org.ldk.structs.Event.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ foreach (SocketAddress addresses_conv_15 in addresses) { if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(addresses_conv_15); }; };
+ return ret_hu_conv;
+ }
+
/**
* Utility method to constructs a new InvoiceRequestFailed-variant Event
*/
/**
* Utility method to constructs a new ChannelClosed-variant Event
*/
- public static Event channel_closed(byte[] channel_id, org.ldk.util.UInt128 user_channel_id, org.ldk.structs.ClosureReason reason, byte[] counterparty_node_id, org.ldk.structs.Option_u64Z channel_capacity_sats) {
- long ret = bindings.Event_channel_closed(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id, 32)), InternalUtils.encodeUint8Array(user_channel_id.getLEBytes()), reason.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(counterparty_node_id, 33)), channel_capacity_sats.ptr);
+ public static Event channel_closed(byte[] channel_id, org.ldk.util.UInt128 user_channel_id, org.ldk.structs.ClosureReason reason, byte[] counterparty_node_id, org.ldk.structs.Option_u64Z channel_capacity_sats, org.ldk.structs.OutPoint channel_funding_txo) {
+ long ret = bindings.Event_channel_closed(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id, 32)), InternalUtils.encodeUint8Array(user_channel_id.getLEBytes()), reason.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(counterparty_node_id, 33)), channel_capacity_sats.ptr, channel_funding_txo == null ? 0 : channel_funding_txo.ptr);
GC.KeepAlive(channel_id);
GC.KeepAlive(user_channel_id);
GC.KeepAlive(reason);
GC.KeepAlive(counterparty_node_id);
GC.KeepAlive(channel_capacity_sats);
+ GC.KeepAlive(channel_funding_txo);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.Event ret_hu_conv = org.ldk.structs.Event.constr_from_ptr(ret);
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(reason); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channel_capacity_sats); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channel_funding_txo); };
return ret_hu_conv;
}
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Information communicated in the onion to the recipient for multi-part tracking and proof that
+ * the payment is associated with an invoice.
+ */
+public class FinalOnionHopData : CommonBase {
+ internal FinalOnionHopData(object _dummy, long ptr) : base(ptr) { }
+ ~FinalOnionHopData() {
+ if (ptr != 0) { bindings.FinalOnionHopData_free(ptr); }
+ }
+
+ /**
+ * When sending a multi-part payment, this secret is used to identify a payment across HTLCs.
+ * Because it is generated by the recipient and included in the invoice, it also provides
+ * proof to the recipient that the payment was sent by someone with the generated invoice.
+ */
+ public byte[] get_payment_secret() {
+ long ret = bindings.FinalOnionHopData_get_payment_secret(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * When sending a multi-part payment, this secret is used to identify a payment across HTLCs.
+ * Because it is generated by the recipient and included in the invoice, it also provides
+ * proof to the recipient that the payment was sent by someone with the generated invoice.
+ */
+ public void set_payment_secret(byte[] val) {
+ bindings.FinalOnionHopData_set_payment_secret(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The intended total amount that this payment is for.
+ *
+ * Message serialization may panic if this value is more than 21 million Bitcoin.
+ */
+ public long get_total_msat() {
+ long ret = bindings.FinalOnionHopData_get_total_msat(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The intended total amount that this payment is for.
+ *
+ * Message serialization may panic if this value is more than 21 million Bitcoin.
+ */
+ public void set_total_msat(long val) {
+ bindings.FinalOnionHopData_set_total_msat(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new FinalOnionHopData given each field
+ */
+ public static FinalOnionHopData of(byte[] payment_secret_arg, long total_msat_arg) {
+ long ret = bindings.FinalOnionHopData_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_secret_arg, 32)), total_msat_arg);
+ GC.KeepAlive(payment_secret_arg);
+ GC.KeepAlive(total_msat_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.FinalOnionHopData ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.FinalOnionHopData(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.FinalOnionHopData_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the FinalOnionHopData
+ */
+ public FinalOnionHopData clone() {
+ long ret = bindings.FinalOnionHopData_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.FinalOnionHopData ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.FinalOnionHopData(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Serialize the FinalOnionHopData object into a byte array which can be read by FinalOnionHopData_read
+ */
+ public byte[] write() {
+ long ret = bindings.FinalOnionHopData_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a FinalOnionHopData from a byte array, created by FinalOnionHopData_write
+ */
+ public static Result_FinalOnionHopDataDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.FinalOnionHopData_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_FinalOnionHopDataDecodeErrorZ ret_hu_conv = Result_FinalOnionHopDataDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A [`CandidateRouteHop::FirstHop`] entry.
+ */
+public class FirstHopCandidate : CommonBase {
+ internal FirstHopCandidate(object _dummy, long ptr) : base(ptr) { }
+ ~FirstHopCandidate() {
+ if (ptr != 0) { bindings.FirstHopCandidate_free(ptr); }
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.FirstHopCandidate_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the FirstHopCandidate
+ */
+ public FirstHopCandidate clone() {
+ long ret = bindings.FirstHopCandidate_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.FirstHopCandidate ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.FirstHopCandidate(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the FundingCreated.
+ */
+ public long hash() {
+ long ret = bindings.FundingCreated_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two FundingCreateds contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the FundingSigned.
+ */
+ public long hash() {
+ long ret = bindings.FundingSigned_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two FundingSigneds contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the GossipTimestampFilter.
+ */
+ public long hash() {
+ long ret = bindings.GossipTimestampFilter_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two GossipTimestampFilters contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Hostname.
+ */
+ public long hash() {
+ long ret = bindings.Hostname_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two Hostnames contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Base key used in conjunction with a `per_commitment_point` to generate an [`HtlcKey`].
+ *
+ * HTLC keys are used to ensure only the recipient of an HTLC can claim it on-chain with the HTLC
+ * preimage and that only the sender of an HTLC can claim it on-chain after it has timed out.
+ * Thus, both channel counterparties' HTLC keys will appears in each HTLC output's script.
+ */
+public class HtlcBasepoint : CommonBase {
+ internal HtlcBasepoint(object _dummy, long ptr) : base(ptr) { }
+ ~HtlcBasepoint() {
+ if (ptr != 0) { bindings.HtlcBasepoint_free(ptr); }
+ }
+
+ public byte[] get_a() {
+ long ret = bindings.HtlcBasepoint_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ public void set_a(byte[] val) {
+ bindings.HtlcBasepoint_set_a(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new HtlcBasepoint given each field
+ */
+ public static HtlcBasepoint of(byte[] a_arg) {
+ long ret = bindings.HtlcBasepoint_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a_arg, 33)));
+ GC.KeepAlive(a_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.HtlcBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two HtlcBasepoints contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.HtlcBasepoint b) {
+ bool ret = bindings.HtlcBasepoint_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is HtlcBasepoint)) return false;
+ return this.eq((HtlcBasepoint)o);
+ }
+ internal long clone_ptr() {
+ long ret = bindings.HtlcBasepoint_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the HtlcBasepoint
+ */
+ public HtlcBasepoint clone() {
+ long ret = bindings.HtlcBasepoint_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.HtlcBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Generates a non-cryptographic 64-bit hash of the HtlcBasepoint.
+ */
+ public long hash() {
+ long ret = bindings.HtlcBasepoint_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
+ /**
+ * Get inner Public Key
+ */
+ public byte[] to_public_key() {
+ long ret = bindings.HtlcBasepoint_to_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Serialize the HtlcBasepoint object into a byte array which can be read by HtlcBasepoint_read
+ */
+ public byte[] write() {
+ long ret = bindings.HtlcBasepoint_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a HtlcBasepoint from a byte array, created by HtlcBasepoint_write
+ */
+ public static Result_HtlcBasepointDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.HtlcBasepoint_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcBasepointDecodeErrorZ ret_hu_conv = Result_HtlcBasepointDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A derived key built from a [`HtlcBasepoint`] and `per_commitment_point`.
+ *
+ * HTLC keys are used to ensure only the recipient of an HTLC can claim it on-chain with the HTLC
+ * preimage and that only the sender of an HTLC can claim it on-chain after it has timed out.
+ * Thus, both channel counterparties' HTLC keys will appears in each HTLC output's script.
+ *
+ * [See the BOLT specs]
+ * (https://github.com/lightning/bolts/blob/master/03-transactions.md#localpubkey-local_htlcpubkey-remote_htlcpubkey-local_delayedpubkey-and-remote_delayedpubkey-derivation)
+ * for more information on key derivation details.
+ */
+public class HtlcKey : CommonBase {
+ internal HtlcKey(object _dummy, long ptr) : base(ptr) { }
+ ~HtlcKey() {
+ if (ptr != 0) { bindings.HtlcKey_free(ptr); }
+ }
+
+ public byte[] get_a() {
+ long ret = bindings.HtlcKey_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ public void set_a(byte[] val) {
+ bindings.HtlcKey_set_a(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new HtlcKey given each field
+ */
+ public static HtlcKey of(byte[] a_arg) {
+ long ret = bindings.HtlcKey_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a_arg, 33)));
+ GC.KeepAlive(a_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.HtlcKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two HtlcKeys contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.HtlcKey b) {
+ bool ret = bindings.HtlcKey_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is HtlcKey)) return false;
+ return this.eq((HtlcKey)o);
+ }
+ internal long clone_ptr() {
+ long ret = bindings.HtlcKey_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the HtlcKey
+ */
+ public HtlcKey clone() {
+ long ret = bindings.HtlcKey_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.HtlcKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Derive a public htlcpubkey using one node\'s `per_commitment_point` and its countersignatory\'s `basepoint`
+ */
+ public static HtlcKey from_basepoint(org.ldk.structs.HtlcBasepoint countersignatory_basepoint, byte[] per_commitment_point) {
+ long ret = bindings.HtlcKey_from_basepoint(countersignatory_basepoint == null ? 0 : countersignatory_basepoint.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)));
+ GC.KeepAlive(countersignatory_basepoint);
+ GC.KeepAlive(per_commitment_point);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.HtlcKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(countersignatory_basepoint); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Build a htlcpubkey directly from an already-derived private key
+ */
+ public static HtlcKey from_secret_key(byte[] sk) {
+ long ret = bindings.HtlcKey_from_secret_key(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(sk, 32)));
+ GC.KeepAlive(sk);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.HtlcKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Get inner Public Key
+ */
+ public byte[] to_public_key() {
+ long ret = bindings.HtlcKey_to_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Serialize the HtlcKey object into a byte array which can be read by HtlcKey_read
+ */
+ public byte[] write() {
+ long ret = bindings.HtlcKey_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a HtlcKey from a byte array, created by HtlcKey_write
+ */
+ public static Result_HtlcKeyDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.HtlcKey_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcKeyDecodeErrorZ ret_hu_conv = Result_HtlcKeyDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Constructs a new EventsProvider which calls the relevant methods on this_arg.
+ * This copies the `inner` pointer in this_arg and thus the returned EventsProvider must be freed before this_arg is
+ */
+ public EventsProvider as_EventsProvider() {
+ long ret = bindings.IgnoringMessageHandler_as_EventsProvider(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ EventsProvider ret_hu_conv = new EventsProvider(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
/**
* Constructs a new MessageSendEventsProvider which calls the relevant methods on this_arg.
* This copies the `inner` pointer in this_arg and thus the returned MessageSendEventsProvider must be freed before this_arg is
*
* [`descriptor.outpoint`]: StaticPaymentOutputDescriptor::outpoint
*/
- public Result_CVec_CVec_u8ZZNoneZ sign_counterparty_payment_input(byte[] spend_tx, long input_idx, org.ldk.structs.StaticPaymentOutputDescriptor descriptor) {
+ public Result_WitnessNoneZ sign_counterparty_payment_input(byte[] spend_tx, long input_idx, org.ldk.structs.StaticPaymentOutputDescriptor descriptor) {
long ret = bindings.InMemorySigner_sign_counterparty_payment_input(this.ptr, InternalUtils.encodeUint8Array(spend_tx), input_idx, descriptor == null ? 0 : descriptor.ptr);
GC.KeepAlive(this);
GC.KeepAlive(spend_tx);
GC.KeepAlive(input_idx);
GC.KeepAlive(descriptor);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret);
+ Result_WitnessNoneZ ret_hu_conv = Result_WitnessNoneZ.constr_from_ptr(ret);
if (this != null) { this.ptrs_to.AddLast(descriptor); };
return ret_hu_conv;
}
* [`descriptor.outpoint`]: DelayedPaymentOutputDescriptor::outpoint
* [`descriptor.to_self_delay`]: DelayedPaymentOutputDescriptor::to_self_delay
*/
- public Result_CVec_CVec_u8ZZNoneZ sign_dynamic_p2wsh_input(byte[] spend_tx, long input_idx, org.ldk.structs.DelayedPaymentOutputDescriptor descriptor) {
+ public Result_WitnessNoneZ sign_dynamic_p2wsh_input(byte[] spend_tx, long input_idx, org.ldk.structs.DelayedPaymentOutputDescriptor descriptor) {
long ret = bindings.InMemorySigner_sign_dynamic_p2wsh_input(this.ptr, InternalUtils.encodeUint8Array(spend_tx), input_idx, descriptor == null ? 0 : descriptor.ptr);
GC.KeepAlive(this);
GC.KeepAlive(spend_tx);
GC.KeepAlive(input_idx);
GC.KeepAlive(descriptor);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret);
+ Result_WitnessNoneZ ret_hu_conv = Result_WitnessNoneZ.constr_from_ptr(ret);
if (this != null) { this.ptrs_to.AddLast(descriptor); };
return ret_hu_conv;
}
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Invalid inbound onion payment.
+ */
+public class InboundHTLCErr : CommonBase {
+ internal InboundHTLCErr(object _dummy, long ptr) : base(ptr) { }
+ ~InboundHTLCErr() {
+ if (ptr != 0) { bindings.InboundHTLCErr_free(ptr); }
+ }
+
+ /**
+ * BOLT 4 error code.
+ */
+ public short get_err_code() {
+ short ret = bindings.InboundHTLCErr_get_err_code(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * BOLT 4 error code.
+ */
+ public void set_err_code(short val) {
+ bindings.InboundHTLCErr_set_err_code(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Data attached to this error.
+ *
+ * Returns a copy of the field.
+ */
+ public byte[] get_err_data() {
+ long ret = bindings.InboundHTLCErr_get_err_data(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Data attached to this error.
+ */
+ public void set_err_data(byte[] val) {
+ bindings.InboundHTLCErr_set_err_data(this.ptr, InternalUtils.encodeUint8Array(val));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Error message text.
+ */
+ public string get_msg() {
+ long ret = bindings.InboundHTLCErr_get_msg(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ string ret_conv = InternalUtils.decodeString(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Error message text.
+ */
+ public void set_msg(string val) {
+ bindings.InboundHTLCErr_set_msg(this.ptr, InternalUtils.encodeString(val));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new InboundHTLCErr given each field
+ */
+ public static InboundHTLCErr of(short err_code_arg, byte[] err_data_arg, string msg_arg) {
+ long ret = bindings.InboundHTLCErr_new(err_code_arg, InternalUtils.encodeUint8Array(err_data_arg), InternalUtils.encodeString(msg_arg));
+ GC.KeepAlive(err_code_arg);
+ GC.KeepAlive(err_data_arg);
+ GC.KeepAlive(msg_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.InboundHTLCErr ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.InboundHTLCErr(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Init.
+ */
+ public long hash() {
+ long ret = bindings.Init_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two Inits contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the InitFeatures.
+ */
+ public long hash() {
+ long ret = bindings.InitFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
return ret;
}
+ /**
+ * Set this feature as optional.
+ */
+ public void set_route_blinding_optional() {
+ bindings.InitFeatures_set_route_blinding_optional(this.ptr);
+ GC.KeepAlive(this);
+ }
+
+ /**
+ * Set this feature as required.
+ */
+ public void set_route_blinding_required() {
+ bindings.InitFeatures_set_route_blinding_required(this.ptr);
+ GC.KeepAlive(this);
+ }
+
+ /**
+ * Checks if this feature is supported.
+ */
+ public bool supports_route_blinding() {
+ bool ret = bindings.InitFeatures_supports_route_blinding(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Checks if this feature is required.
+ */
+ public bool requires_route_blinding() {
+ bool ret = bindings.InitFeatures_requires_route_blinding(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
/**
* Set this feature as optional.
*/
/**
- * An error occurring when converting from [`Script`] to [`ShutdownScript`].
+ * An error occurring when converting from [`ScriptBuf`] to [`ShutdownScript`].
*/
public class InvalidShutdownScript : CommonBase {
internal InvalidShutdownScript(object _dummy, long ptr) : base(ptr) { }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the InvoiceRequestFeatures.
+ */
+ public long hash() {
+ long ret = bindings.InvoiceRequestFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
/** An implementation of Logger */
public interface LoggerInterface {
- /**Logs the `Record`
+ /**Logs the [`Record`].
*/
void log(Record record);
}
/**
- * A trait encapsulating the operations required of a logger
+ * A trait encapsulating the operations required of a logger.
*/
public class Logger : CommonBase {
internal bindings.LDKLogger bindings_instance;
private LDKLoggerHolder impl_holder;
public void log(long _record) {
org.ldk.structs.Record _record_hu_conv = null; if (_record < 0 || _record > 4096) { _record_hu_conv = new org.ldk.structs.Record(null, _record); }
+ if (_record_hu_conv != null) { _record_hu_conv.ptrs_to.AddLast(this); };
arg.log(_record_hu_conv);
GC.KeepAlive(arg);
}
* A message handler which handles onion messages. This should generally be an
* [`OnionMessenger`], but can also be an [`IgnoringMessageHandler`].
*
- * [`OnionMessenger`]: crate::onion_message::OnionMessenger
+ * [`OnionMessenger`]: crate::onion_message::messenger::OnionMessenger
*/
public OnionMessageHandler get_onion_message_handler() {
long ret = bindings.MessageHandler_get_onion_message_handler(this.ptr);
* A message handler which handles onion messages. This should generally be an
* [`OnionMessenger`], but can also be an [`IgnoringMessageHandler`].
*
- * [`OnionMessenger`]: crate::onion_message::OnionMessenger
+ * [`OnionMessenger`]: crate::onion_message::messenger::OnionMessenger
*/
public void set_onion_message_handler(org.ldk.structs.OnionMessageHandler val) {
bindings.MessageHandler_set_onion_message_handler(this.ptr, val.ptr);
/**Returns a route for sending an [`OnionMessage`] to the given [`Destination`].
*/
Result_OnionMessagePathNoneZ find_path(byte[] sender, byte[][] peers, Destination destination);
+ /**Creates [`BlindedPath`]s to the `recipient` node. The nodes in `peers` are assumed to be
+ * direct peers with the `recipient`.
+ */
+ Result_CVec_BlindedPathZNoneZ create_blinded_paths(byte[] recipient, byte[][] peers);
}
/**
long result = ret == null ? 0 : ret.clone_ptr();
return result;
}
+ public long create_blinded_paths(long _recipient, long _peers) {
+ byte[] _recipient_conv = InternalUtils.decodeUint8Array(_recipient);
+ int _peers_conv_8_len = InternalUtils.getArrayLength(_peers);
+ byte[][] _peers_conv_8_arr = new byte[_peers_conv_8_len][];
+ for (int i = 0; i < _peers_conv_8_len; i++) {
+ long _peers_conv_8 = InternalUtils.getU64ArrayElem(_peers, i);
+ byte[] _peers_conv_8_conv = InternalUtils.decodeUint8Array(_peers_conv_8);
+ _peers_conv_8_arr[i] = _peers_conv_8_conv;
+ }
+ bindings.free_buffer(_peers);
+ Result_CVec_BlindedPathZNoneZ ret = arg.create_blinded_paths(_recipient_conv, _peers_conv_8_arr);
+ GC.KeepAlive(arg);
+ long result = ret == null ? 0 : ret.clone_ptr();
+ return result;
+ }
}
/** Creates a new instance of MessageRouter from a given implementation */
return ret_hu_conv;
}
+ /**
+ * Creates [`BlindedPath`]s to the `recipient` node. The nodes in `peers` are assumed to be
+ * direct peers with the `recipient`.
+ */
+ public Result_CVec_BlindedPathZNoneZ create_blinded_paths(byte[] recipient, byte[][] peers) {
+ long ret = bindings.MessageRouter_create_blinded_paths(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(recipient, 33)), InternalUtils.encodeUint64Array(InternalUtils.mapArray(peers, peers_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(peers_conv_8, 33)))));
+ GC.KeepAlive(this);
+ GC.KeepAlive(recipient);
+ GC.KeepAlive(peers);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
}
} } }
case 3: return new MessageSendEvent_SendOpenChannelV2(ptr);
case 4: return new MessageSendEvent_SendFundingCreated(ptr);
case 5: return new MessageSendEvent_SendFundingSigned(ptr);
- case 6: return new MessageSendEvent_SendTxAddInput(ptr);
- case 7: return new MessageSendEvent_SendTxAddOutput(ptr);
- case 8: return new MessageSendEvent_SendTxRemoveInput(ptr);
- case 9: return new MessageSendEvent_SendTxRemoveOutput(ptr);
- case 10: return new MessageSendEvent_SendTxComplete(ptr);
- case 11: return new MessageSendEvent_SendTxSignatures(ptr);
- case 12: return new MessageSendEvent_SendTxInitRbf(ptr);
- case 13: return new MessageSendEvent_SendTxAckRbf(ptr);
- case 14: return new MessageSendEvent_SendTxAbort(ptr);
- case 15: return new MessageSendEvent_SendChannelReady(ptr);
- case 16: return new MessageSendEvent_SendAnnouncementSignatures(ptr);
- case 17: return new MessageSendEvent_UpdateHTLCs(ptr);
- case 18: return new MessageSendEvent_SendRevokeAndACK(ptr);
- case 19: return new MessageSendEvent_SendClosingSigned(ptr);
- case 20: return new MessageSendEvent_SendShutdown(ptr);
- case 21: return new MessageSendEvent_SendChannelReestablish(ptr);
- case 22: return new MessageSendEvent_SendChannelAnnouncement(ptr);
- case 23: return new MessageSendEvent_BroadcastChannelAnnouncement(ptr);
- case 24: return new MessageSendEvent_BroadcastChannelUpdate(ptr);
- case 25: return new MessageSendEvent_BroadcastNodeAnnouncement(ptr);
- case 26: return new MessageSendEvent_SendChannelUpdate(ptr);
- case 27: return new MessageSendEvent_HandleError(ptr);
- case 28: return new MessageSendEvent_SendChannelRangeQuery(ptr);
- case 29: return new MessageSendEvent_SendShortIdsQuery(ptr);
- case 30: return new MessageSendEvent_SendReplyChannelRange(ptr);
- case 31: return new MessageSendEvent_SendGossipTimestampFilter(ptr);
+ case 6: return new MessageSendEvent_SendStfu(ptr);
+ case 7: return new MessageSendEvent_SendSplice(ptr);
+ case 8: return new MessageSendEvent_SendSpliceAck(ptr);
+ case 9: return new MessageSendEvent_SendSpliceLocked(ptr);
+ case 10: return new MessageSendEvent_SendTxAddInput(ptr);
+ case 11: return new MessageSendEvent_SendTxAddOutput(ptr);
+ case 12: return new MessageSendEvent_SendTxRemoveInput(ptr);
+ case 13: return new MessageSendEvent_SendTxRemoveOutput(ptr);
+ case 14: return new MessageSendEvent_SendTxComplete(ptr);
+ case 15: return new MessageSendEvent_SendTxSignatures(ptr);
+ case 16: return new MessageSendEvent_SendTxInitRbf(ptr);
+ case 17: return new MessageSendEvent_SendTxAckRbf(ptr);
+ case 18: return new MessageSendEvent_SendTxAbort(ptr);
+ case 19: return new MessageSendEvent_SendChannelReady(ptr);
+ case 20: return new MessageSendEvent_SendAnnouncementSignatures(ptr);
+ case 21: return new MessageSendEvent_UpdateHTLCs(ptr);
+ case 22: return new MessageSendEvent_SendRevokeAndACK(ptr);
+ case 23: return new MessageSendEvent_SendClosingSigned(ptr);
+ case 24: return new MessageSendEvent_SendShutdown(ptr);
+ case 25: return new MessageSendEvent_SendChannelReestablish(ptr);
+ case 26: return new MessageSendEvent_SendChannelAnnouncement(ptr);
+ case 27: return new MessageSendEvent_BroadcastChannelAnnouncement(ptr);
+ case 28: return new MessageSendEvent_BroadcastChannelUpdate(ptr);
+ case 29: return new MessageSendEvent_BroadcastNodeAnnouncement(ptr);
+ case 30: return new MessageSendEvent_SendChannelUpdate(ptr);
+ case 31: return new MessageSendEvent_HandleError(ptr);
+ case 32: return new MessageSendEvent_SendChannelRangeQuery(ptr);
+ case 33: return new MessageSendEvent_SendShortIdsQuery(ptr);
+ case 34: return new MessageSendEvent_SendReplyChannelRange(ptr);
+ case 35: return new MessageSendEvent_SendGossipTimestampFilter(ptr);
default:
throw new ArgumentException("Impossible enum variant");
}
this.msg = msg_hu_conv;
}
}
+ /** A MessageSendEvent of type SendStfu */
+ public class MessageSendEvent_SendStfu : MessageSendEvent {
+ /**
+ * The node_id of the node which should receive this message
+ */
+ public byte[] node_id;
+ /**
+ * The message which should be sent.
+ */
+ public Stfu msg;
+ internal MessageSendEvent_SendStfu(long ptr) : base(null, ptr) {
+ long node_id = bindings.LDKMessageSendEvent_SendStfu_get_node_id(ptr);
+ byte[] node_id_conv = InternalUtils.decodeUint8Array(node_id);
+ this.node_id = node_id_conv;
+ long msg = bindings.LDKMessageSendEvent_SendStfu_get_msg(ptr);
+ org.ldk.structs.Stfu msg_hu_conv = null; if (msg < 0 || msg > 4096) { msg_hu_conv = new org.ldk.structs.Stfu(null, msg); }
+ if (msg_hu_conv != null) { msg_hu_conv.ptrs_to.AddLast(this); };
+ this.msg = msg_hu_conv;
+ }
+ }
+ /** A MessageSendEvent of type SendSplice */
+ public class MessageSendEvent_SendSplice : MessageSendEvent {
+ /**
+ * The node_id of the node which should receive this message
+ */
+ public byte[] node_id;
+ /**
+ * The message which should be sent.
+ */
+ public Splice msg;
+ internal MessageSendEvent_SendSplice(long ptr) : base(null, ptr) {
+ long node_id = bindings.LDKMessageSendEvent_SendSplice_get_node_id(ptr);
+ byte[] node_id_conv = InternalUtils.decodeUint8Array(node_id);
+ this.node_id = node_id_conv;
+ long msg = bindings.LDKMessageSendEvent_SendSplice_get_msg(ptr);
+ org.ldk.structs.Splice msg_hu_conv = null; if (msg < 0 || msg > 4096) { msg_hu_conv = new org.ldk.structs.Splice(null, msg); }
+ if (msg_hu_conv != null) { msg_hu_conv.ptrs_to.AddLast(this); };
+ this.msg = msg_hu_conv;
+ }
+ }
+ /** A MessageSendEvent of type SendSpliceAck */
+ public class MessageSendEvent_SendSpliceAck : MessageSendEvent {
+ /**
+ * The node_id of the node which should receive this message
+ */
+ public byte[] node_id;
+ /**
+ * The message which should be sent.
+ */
+ public SpliceAck msg;
+ internal MessageSendEvent_SendSpliceAck(long ptr) : base(null, ptr) {
+ long node_id = bindings.LDKMessageSendEvent_SendSpliceAck_get_node_id(ptr);
+ byte[] node_id_conv = InternalUtils.decodeUint8Array(node_id);
+ this.node_id = node_id_conv;
+ long msg = bindings.LDKMessageSendEvent_SendSpliceAck_get_msg(ptr);
+ org.ldk.structs.SpliceAck msg_hu_conv = null; if (msg < 0 || msg > 4096) { msg_hu_conv = new org.ldk.structs.SpliceAck(null, msg); }
+ if (msg_hu_conv != null) { msg_hu_conv.ptrs_to.AddLast(this); };
+ this.msg = msg_hu_conv;
+ }
+ }
+ /** A MessageSendEvent of type SendSpliceLocked */
+ public class MessageSendEvent_SendSpliceLocked : MessageSendEvent {
+ /**
+ * The node_id of the node which should receive this message
+ */
+ public byte[] node_id;
+ /**
+ * The message which should be sent.
+ */
+ public SpliceLocked msg;
+ internal MessageSendEvent_SendSpliceLocked(long ptr) : base(null, ptr) {
+ long node_id = bindings.LDKMessageSendEvent_SendSpliceLocked_get_node_id(ptr);
+ byte[] node_id_conv = InternalUtils.decodeUint8Array(node_id);
+ this.node_id = node_id_conv;
+ long msg = bindings.LDKMessageSendEvent_SendSpliceLocked_get_msg(ptr);
+ org.ldk.structs.SpliceLocked msg_hu_conv = null; if (msg < 0 || msg > 4096) { msg_hu_conv = new org.ldk.structs.SpliceLocked(null, msg); }
+ if (msg_hu_conv != null) { msg_hu_conv.ptrs_to.AddLast(this); };
+ this.msg = msg_hu_conv;
+ }
+ }
/** A MessageSendEvent of type SendTxAddInput */
public class MessageSendEvent_SendTxAddInput : MessageSendEvent {
/**
return ret_hu_conv;
}
+ /**
+ * Utility method to constructs a new SendStfu-variant MessageSendEvent
+ */
+ public static MessageSendEvent send_stfu(byte[] node_id, org.ldk.structs.Stfu msg) {
+ long ret = bindings.MessageSendEvent_send_stfu(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(node_id);
+ GC.KeepAlive(msg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(msg); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new SendSplice-variant MessageSendEvent
+ */
+ public static MessageSendEvent send_splice(byte[] node_id, org.ldk.structs.Splice msg) {
+ long ret = bindings.MessageSendEvent_send_splice(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(node_id);
+ GC.KeepAlive(msg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(msg); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new SendSpliceAck-variant MessageSendEvent
+ */
+ public static MessageSendEvent send_splice_ack(byte[] node_id, org.ldk.structs.SpliceAck msg) {
+ long ret = bindings.MessageSendEvent_send_splice_ack(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(node_id);
+ GC.KeepAlive(msg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(msg); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new SendSpliceLocked-variant MessageSendEvent
+ */
+ public static MessageSendEvent send_splice_locked(byte[] node_id, org.ldk.structs.SpliceLocked msg) {
+ long ret = bindings.MessageSendEvent_send_splice_locked(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(node_id, 33)), msg == null ? 0 : msg.ptr);
+ GC.KeepAlive(node_id);
+ GC.KeepAlive(msg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(msg); };
+ return ret_hu_conv;
+ }
+
/**
* Utility method to constructs a new SendTxAddInput-variant MessageSendEvent
*/
*
* # Pruning stale channel updates
*
- * Stale updates are pruned when a full monitor is written. The old monitor is first read, and if
- * that succeeds, updates in the range between the old and new monitors are deleted. The `lazy`
- * flag is used on the [`KVStore::remove`] method, so there are no guarantees that the deletions
+ * Stale updates are pruned when the consolidation threshold is reached according to `maximum_pending_updates`.
+ * Monitor updates in the range between the latest `update_id` and `update_id - maximum_pending_updates`
+ * are deleted.
+ * The `lazy` flag is used on the [`KVStore::remove`] method, so there are no guarantees that the deletions
* will complete. However, stale updates are not a problem for data integrity, since updates are
* only read that are higher than the stored [`ChannelMonitor`]'s `update_id`.
*
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the NodeAlias.
+ */
+ public long hash() {
+ long ret = bindings.NodeAlias_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two NodeAliass contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the NodeAnnouncement.
+ */
+ public long hash() {
+ long ret = bindings.NodeAnnouncement_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two NodeAnnouncements contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the NodeFeatures.
+ */
+ public long hash() {
+ long ret = bindings.NodeFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
return ret;
}
+ /**
+ * Set this feature as optional.
+ */
+ public void set_route_blinding_optional() {
+ bindings.NodeFeatures_set_route_blinding_optional(this.ptr);
+ GC.KeepAlive(this);
+ }
+
+ /**
+ * Set this feature as required.
+ */
+ public void set_route_blinding_required() {
+ bindings.NodeFeatures_set_route_blinding_required(this.ptr);
+ GC.KeepAlive(this);
+ }
+
+ /**
+ * Checks if this feature is supported.
+ */
+ public bool supports_route_blinding() {
+ bool ret = bindings.NodeFeatures_supports_route_blinding(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Checks if this feature is required.
+ */
+ public bool requires_route_blinding() {
+ bool ret = bindings.NodeFeatures_requires_route_blinding(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
/**
* Set this feature as optional.
*/
return ret_conv;
}
+ /**
+ * Get the public key as an array from this NodeId
+ */
+ public byte[] as_array() {
+ long ret = bindings.NodeId_as_array(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
/**
* Get the public key from this NodeId
*/
return ret;
}
+ /**
+ * Whether the offer has expired given the duration since the Unix epoch.
+ */
+ public bool is_expired_no_std(long duration_since_epoch) {
+ bool ret = bindings.Offer_is_expired_no_std(this.ptr, duration_since_epoch);
+ GC.KeepAlive(this);
+ GC.KeepAlive(duration_since_epoch);
+ return ret;
+ }
+
/**
* Returns whether the given quantity is valid for the offer.
*/
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the OfferFeatures.
+ */
+ public long hash() {
+ long ret = bindings.OfferFeatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Create a blank Features with no features set
*/
return ret_hu_conv;
}
+ /**
+ * Constructs a new OnionMessageContents which calls the relevant methods on this_arg.
+ * This copies the `inner` pointer in this_arg and thus the returned OnionMessageContents must be freed before this_arg is
+ */
+ public OnionMessageContents as_OnionMessageContents() {
+ long ret = bindings.OffersMessage_as_OnionMessageContents(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ OnionMessageContents ret_hu_conv = new OnionMessageContents(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
/**
* Serialize the OffersMessage object into a byte array which can be read by OffersMessage_read
*/
*
* The returned [`OffersMessage`], if any, is enqueued to be sent by [`OnionMessenger`].
*
- * [`OnionMessenger`]: crate::onion_message::OnionMessenger
+ * [`OnionMessenger`]: crate::onion_message::messenger::OnionMessenger
*/
Option_OffersMessageZ handle_message(OffersMessage message);
/**Releases any [`OffersMessage`]s that need to be sent.
*
* The returned [`OffersMessage`], if any, is enqueued to be sent by [`OnionMessenger`].
*
- * [`OnionMessenger`]: crate::onion_message::OnionMessenger
+ * [`OnionMessenger`]: crate::onion_message::messenger::OnionMessenger
*/
public Option_OffersMessageZ handle_message(org.ldk.structs.OffersMessage message) {
long ret = bindings.OffersMessageHandler_handle_message(this.ptr, message.ptr);
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A [`CandidateRouteHop::OneHopBlinded`] entry.
+ */
+public class OneHopBlindedPathCandidate : CommonBase {
+ internal OneHopBlindedPathCandidate(object _dummy, long ptr) : base(ptr) { }
+ ~OneHopBlindedPathCandidate() {
+ if (ptr != 0) { bindings.OneHopBlindedPathCandidate_free(ptr); }
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.OneHopBlindedPathCandidate_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the OneHopBlindedPathCandidate
+ */
+ public OneHopBlindedPathCandidate clone() {
+ long ret = bindings.OneHopBlindedPathCandidate_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.OneHopBlindedPathCandidate ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.OneHopBlindedPathCandidate(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the OnionMessage.
+ */
+ public long hash() {
+ long ret = bindings.OnionMessage_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two OnionMessages contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
/**Serialize the object into a byte array
*/
byte[] write();
+ /**Return a human-readable "debug" string describing this object
+ */
+ string debug_str();
}
/**
long result = InternalUtils.encodeUint8Array(ret);
return result;
}
+ public long debug_str() {
+ string ret = arg.debug_str();
+ GC.KeepAlive(arg);
+ long result = InternalUtils.encodeString(ret);
+ return result;
+ }
}
/** Creates a new instance of OnionMessageContents from a given implementation */
return ret_conv;
}
+ /**
+ * Return a human-readable "debug" string describing this object
+ */
+ public string debug_str() {
+ long ret = bindings.OnionMessageContents_debug_str(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ string ret_conv = InternalUtils.decodeString(ret);
+ return ret_conv;
+ }
+
internal long clone_ptr() {
long ret = bindings.OnionMessageContents_clone_ptr(this.ptr);
GC.KeepAlive(this);
/** An implementation of OnionMessageHandler */
public interface OnionMessageHandlerInterface {
+ /**Because much of the lightning network does not yet support forwarding onion messages, we
+ * may need to directly connect to a node which will forward a message for us. In such a case,
+ * this method will return the set of nodes which need connection by node_id and the
+ * corresponding socket addresses where they may accept incoming connections.
+ *
+ * Thus, this method should be polled regularly to detect messages await such a direct
+ * connection.
+ */
+ TwoTuple_PublicKeyCVec_SocketAddressZZ[] get_and_clear_connections_needed();
/**Handle an incoming `onion_message` message from the given peer.
*/
void handle_onion_message(byte[] peer_node_id, OnionMessage msg);
* drop and refuse to forward onion messages to this peer.
*/
void peer_disconnected(byte[] their_node_id);
+ /**Performs actions that should happen roughly every ten seconds after startup. Allows handlers
+ * to drop any buffered onion messages intended for prospective peers.
+ */
+ void timer_tick_occurred();
/**Gets the node feature flags which this handler itself supports. All available handlers are
* queried similarly and their feature flags are OR'd together to form the [`NodeFeatures`]
* which are broadcasted in our [`NodeAnnouncement`] message.
internal LDKOnionMessageHandlerImpl(OnionMessageHandlerInterface arg, LDKOnionMessageHandlerHolder impl_holder) { this.arg = arg; this.impl_holder = impl_holder; }
private OnionMessageHandlerInterface arg;
private LDKOnionMessageHandlerHolder impl_holder;
+ public long get_and_clear_connections_needed() {
+ TwoTuple_PublicKeyCVec_SocketAddressZZ[] ret = arg.get_and_clear_connections_needed();
+ GC.KeepAlive(arg);
+ long result = InternalUtils.encodeUint64Array(InternalUtils.mapArray(ret, ret_conv_40 => ret_conv_40 == null ? 0 : ret_conv_40.clone_ptr()));
+ return result;
+ }
public void handle_onion_message(long _peer_node_id, long _msg) {
byte[] _peer_node_id_conv = InternalUtils.decodeUint8Array(_peer_node_id);
org.ldk.structs.OnionMessage _msg_hu_conv = null; if (_msg < 0 || _msg > 4096) { _msg_hu_conv = new org.ldk.structs.OnionMessage(null, _msg); }
arg.peer_disconnected(_their_node_id_conv);
GC.KeepAlive(arg);
}
+ public void timer_tick_occurred() {
+ arg.timer_tick_occurred();
+ GC.KeepAlive(arg);
+ }
public long provided_node_features() {
NodeFeatures ret = arg.provided_node_features();
GC.KeepAlive(arg);
return impl_holder.held;
}
+ /**
+ * Because much of the lightning network does not yet support forwarding onion messages, we
+ * may need to directly connect to a node which will forward a message for us. In such a case,
+ * this method will return the set of nodes which need connection by node_id and the
+ * corresponding socket addresses where they may accept incoming connections.
+ *
+ * Thus, this method should be polled regularly to detect messages await such a direct
+ * connection.
+ */
+ public TwoTuple_PublicKeyCVec_SocketAddressZZ[] get_and_clear_connections_needed() {
+ long ret = bindings.OnionMessageHandler_get_and_clear_connections_needed(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ int ret_conv_40_len = InternalUtils.getArrayLength(ret);
+ TwoTuple_PublicKeyCVec_SocketAddressZZ[] ret_conv_40_arr = new TwoTuple_PublicKeyCVec_SocketAddressZZ[ret_conv_40_len];
+ for (int o = 0; o < ret_conv_40_len; o++) {
+ long ret_conv_40 = InternalUtils.getU64ArrayElem(ret, o);
+ TwoTuple_PublicKeyCVec_SocketAddressZZ ret_conv_40_hu_conv = new TwoTuple_PublicKeyCVec_SocketAddressZZ(null, ret_conv_40);
+ if (ret_conv_40_hu_conv != null) { ret_conv_40_hu_conv.ptrs_to.AddLast(this); };
+ ret_conv_40_arr[o] = ret_conv_40_hu_conv;
+ }
+ bindings.free_buffer(ret);
+ return ret_conv_40_arr;
+ }
+
/**
* Handle an incoming `onion_message` message from the given peer.
*/
GC.KeepAlive(their_node_id);
}
+ /**
+ * Performs actions that should happen roughly every ten seconds after startup. Allows handlers
+ * to drop any buffered onion messages intended for prospective peers.
+ */
+ public void timer_tick_occurred() {
+ bindings.OnionMessageHandler_timer_tick_occurred(this.ptr);
+ GC.KeepAlive(this);
+ }
+
/**
* Gets the node feature flags which this handler itself supports. All available handlers are
* queried similarly and their feature flags are OR'd together to form the [`NodeFeatures`]
if (this != null) { this.ptrs_to.AddLast(val); };
}
+ /**
+ * Addresses that may be used to connect to [`OnionMessagePath::first_node`].
+ *
+ * Only needs to be set if a connection to the node is required. [`OnionMessenger`] may use
+ * this to initiate such a connection.
+ *
+ * Returns a copy of the field.
+ */
+ public Option_CVec_SocketAddressZZ get_first_node_addresses() {
+ long ret = bindings.OnionMessagePath_get_first_node_addresses(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_CVec_SocketAddressZZ ret_hu_conv = org.ldk.structs.Option_CVec_SocketAddressZZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Addresses that may be used to connect to [`OnionMessagePath::first_node`].
+ *
+ * Only needs to be set if a connection to the node is required. [`OnionMessenger`] may use
+ * this to initiate such a connection.
+ */
+ public void set_first_node_addresses(org.ldk.structs.Option_CVec_SocketAddressZZ val) {
+ bindings.OnionMessagePath_set_first_node_addresses(this.ptr, val.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
+ }
+
/**
* Constructs a new OnionMessagePath given each field
*/
- public static OnionMessagePath of(byte[][] intermediate_nodes_arg, org.ldk.structs.Destination destination_arg) {
- long ret = bindings.OnionMessagePath_new(InternalUtils.encodeUint64Array(InternalUtils.mapArray(intermediate_nodes_arg, intermediate_nodes_arg_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(intermediate_nodes_arg_conv_8, 33)))), destination_arg.ptr);
+ public static OnionMessagePath of(byte[][] intermediate_nodes_arg, org.ldk.structs.Destination destination_arg, org.ldk.structs.Option_CVec_SocketAddressZZ first_node_addresses_arg) {
+ long ret = bindings.OnionMessagePath_new(InternalUtils.encodeUint64Array(InternalUtils.mapArray(intermediate_nodes_arg, intermediate_nodes_arg_conv_8 => InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(intermediate_nodes_arg_conv_8, 33)))), destination_arg.ptr, first_node_addresses_arg.ptr);
GC.KeepAlive(intermediate_nodes_arg);
GC.KeepAlive(destination_arg);
+ GC.KeepAlive(first_node_addresses_arg);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.OnionMessagePath ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.OnionMessagePath(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(destination_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(first_node_addresses_arg); };
return ret_hu_conv;
}
return ret_hu_conv;
}
+ /**
+ * Returns the first node in the path.
+ */
+ public byte[] first_node() {
+ long ret = bindings.OnionMessagePath_first_node(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
}
} } }
* ```
* # extern crate bitcoin;
* # use bitcoin::hashes::_export::_core::time::Duration;
- * # use bitcoin::secp256k1::{PublicKey, Secp256k1, SecretKey};
+ * # use bitcoin::hashes::hex::FromHex;
+ * # use bitcoin::secp256k1::{PublicKey, Secp256k1, SecretKey, self};
* # use lightning::blinded_path::BlindedPath;
- * # use lightning::sign::KeysManager;
+ * # use lightning::sign::{EntropySource, KeysManager};
* # use lightning::ln::peer_handler::IgnoringMessageHandler;
- * # use lightning::onion_message::messenger::{Destination, MessageRouter, OnionMessenger, OnionMessagePath};
+ * # use lightning::onion_message::messenger::{Destination, MessageRouter, OnionMessagePath, OnionMessenger};
* # use lightning::onion_message::packet::OnionMessageContents;
* # use lightning::util::logger::{Logger, Record};
* # use lightning::util::ser::{Writeable, Writer};
* # use std::sync::Arc;
* # struct FakeLogger;
* # impl Logger for FakeLogger {
- * # fn log(&self, record: &Record) { unimplemented!() }
+ * # fn log(&self, record: Record) { println!(\"{:?}\" , record); }
* # }
* # struct FakeMessageRouter {}
* # impl MessageRouter for FakeMessageRouter {
* # fn find_path(&self, sender: PublicKey, peers: Vec<PublicKey>, destination: Destination) -> Result<OnionMessagePath, ()> {
- * # unimplemented!()
+ * # let secp_ctx = Secp256k1::new();
+ * # let node_secret = SecretKey::from_slice(&<Vec<u8>>::from_hex(\"0101010101010101010101010101010101010101010101010101010101010101\").unwrap()[..]).unwrap();
+ * # let hop_node_id1 = PublicKey::from_secret_key(&secp_ctx, &node_secret);
+ * # let hop_node_id2 = hop_node_id1;
+ * # Ok(OnionMessagePath {
+ * # intermediate_nodes: vec![hop_node_id1, hop_node_id2],
+ * # destination,
+ * # first_node_addresses: None,
+ * # })
+ * # }
+ * # fn create_blinded_paths<T: secp256k1::Signing + secp256k1::Verification>(
+ * # &self, _recipient: PublicKey, _peers: Vec<PublicKey>, _secp_ctx: &Secp256k1<T>
+ * # ) -> Result<Vec<BlindedPath>, ()> {
+ * # unreachable!()
* # }
* # }
* # let seed = [42u8; 32];
* # let time = Duration::from_secs(123456);
* # let keys_manager = KeysManager::new(&seed, time.as_secs(), time.subsec_nanos());
* # let logger = Arc::new(FakeLogger {});
- * # let node_secret = SecretKey::from_slice(&hex::decode(\"0101010101010101010101010101010101010101010101010101010101010101\").unwrap()[..]).unwrap();
+ * # let node_secret = SecretKey::from_slice(&<Vec<u8>>::from_hex(\"0101010101010101010101010101010101010101010101010101010101010101\").unwrap()[..]).unwrap();
* # let secp_ctx = Secp256k1::new();
* # let hop_node_id1 = PublicKey::from_secret_key(&secp_ctx, &node_secret);
- * # let (hop_node_id2, hop_node_id3, hop_node_id4) = (hop_node_id1, hop_node_id1, hop_node_id1);
+ * # let (hop_node_id3, hop_node_id4) = (hop_node_id1, hop_node_id1);
* # let destination_node_id = hop_node_id1;
* # let message_router = Arc::new(FakeMessageRouter {});
* # let custom_message_handler = IgnoringMessageHandler {};
* &custom_message_handler
* );
*
- * # #[derive(Clone)]
+ * # #[derive(Debug, Clone)]
* # struct YourCustomMessage {}
* impl Writeable for YourCustomMessage {
* \tfn write<W: Writer>(&self, w: &mut W) -> Result<(), io::Error> {
* \t}
* }
* Send a custom onion message to a node id.
- * let path = OnionMessagePath {
- * \tintermediate_nodes: vec![hop_node_id1, hop_node_id2],
- * \tdestination: Destination::Node(destination_node_id),
- * };
+ * let destination = Destination::Node(destination_node_id);
* let reply_path = None;
* # let message = YourCustomMessage {};
- * onion_messenger.send_onion_message(path, message, reply_path);
+ * onion_messenger.send_onion_message(message, destination, reply_path);
*
* Create a blinded path to yourself, for someone to send an onion message to.
* # let your_node_id = hop_node_id1;
* let blinded_path = BlindedPath::new_for_message(&hops, &keys_manager, &secp_ctx).unwrap();
*
* Send a custom onion message to a blinded path.
- * let path = OnionMessagePath {
- * \tintermediate_nodes: vec![hop_node_id1, hop_node_id2],
- * \tdestination: Destination::BlindedPath(blinded_path),
- * };
+ * let destination = Destination::BlindedPath(blinded_path);
* let reply_path = None;
* # let message = YourCustomMessage {};
- * onion_messenger.send_onion_message(path, message, reply_path);
+ * onion_messenger.send_onion_message(message, destination, reply_path);
* ```
*
* [`InvoiceRequest`]: crate::offers::invoice_request::InvoiceRequest
}
/**
- * Sends an [`OnionMessage`] with the given `contents` for sending to the destination of
- * `path`.
+ * Sends an [`OnionMessage`] with the given `contents` to `destination`.
*
* See [`OnionMessenger`] for example usage.
*
* Note that reply_path (or a relevant inner pointer) may be NULL or all-0s to represent None
*/
- public Result_NoneSendErrorZ send_onion_message(org.ldk.structs.OnionMessagePath path, org.ldk.structs.OnionMessageContents contents, org.ldk.structs.BlindedPath reply_path) {
- long ret = bindings.OnionMessenger_send_onion_message(this.ptr, path == null ? 0 : path.ptr, contents.ptr, reply_path == null ? 0 : reply_path.ptr);
+ public Result_SendSuccessSendErrorZ send_onion_message(org.ldk.structs.OnionMessageContents contents, org.ldk.structs.Destination destination, org.ldk.structs.BlindedPath reply_path) {
+ long ret = bindings.OnionMessenger_send_onion_message(this.ptr, contents.ptr, destination.ptr, reply_path == null ? 0 : reply_path.ptr);
GC.KeepAlive(this);
- GC.KeepAlive(path);
GC.KeepAlive(contents);
+ GC.KeepAlive(destination);
GC.KeepAlive(reply_path);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_NoneSendErrorZ ret_hu_conv = Result_NoneSendErrorZ.constr_from_ptr(ret);
- if (this != null) { this.ptrs_to.AddLast(path); };
+ Result_SendSuccessSendErrorZ ret_hu_conv = Result_SendSuccessSendErrorZ.constr_from_ptr(ret);
if (this != null) { this.ptrs_to.AddLast(contents); };
+ if (this != null) { this.ptrs_to.AddLast(destination); };
if (this != null) { this.ptrs_to.AddLast(reply_path); };
return ret_hu_conv;
}
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * BOLT 4 onion packet including hop data for the next peer.
+ */
+public class OnionPacket : CommonBase {
+ internal OnionPacket(object _dummy, long ptr) : base(ptr) { }
+ ~OnionPacket() {
+ if (ptr != 0) { bindings.OnionPacket_free(ptr); }
+ }
+
+ /**
+ * BOLT 4 version number.
+ */
+ public byte get_version() {
+ byte ret = bindings.OnionPacket_get_version(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * BOLT 4 version number.
+ */
+ public void set_version(byte val) {
+ bindings.OnionPacket_set_version(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * In order to ensure we always return an error on onion decode in compliance with [BOLT
+ * #4](https://github.com/lightning/bolts/blob/master/04-onion-routing.md), we have to
+ * deserialize `OnionPacket`s contained in [`UpdateAddHTLC`] messages even if the ephemeral
+ * public key (here) is bogus, so we hold a [`Result`] instead of a [`PublicKey`] as we'd
+ * like.
+ *
+ * Returns a copy of the field.
+ */
+ public Result_PublicKeySecp256k1ErrorZ get_public_key() {
+ long ret = bindings.OnionPacket_get_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PublicKeySecp256k1ErrorZ ret_hu_conv = Result_PublicKeySecp256k1ErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * In order to ensure we always return an error on onion decode in compliance with [BOLT
+ * #4](https://github.com/lightning/bolts/blob/master/04-onion-routing.md), we have to
+ * deserialize `OnionPacket`s contained in [`UpdateAddHTLC`] messages even if the ephemeral
+ * public key (here) is bogus, so we hold a [`Result`] instead of a [`PublicKey`] as we'd
+ * like.
+ */
+ public void set_public_key(org.ldk.structs.Result_PublicKeySecp256k1ErrorZ val) {
+ bindings.OnionPacket_set_public_key(this.ptr, val != null ? val.ptr : 0);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * HMAC to verify the integrity of hop_data.
+ */
+ public byte[] get_hmac() {
+ long ret = bindings.OnionPacket_get_hmac(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * HMAC to verify the integrity of hop_data.
+ */
+ public void set_hmac(byte[] val) {
+ bindings.OnionPacket_set_hmac(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.OnionPacket_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the OnionPacket
+ */
+ public OnionPacket clone() {
+ long ret = bindings.OnionPacket_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.OnionPacket ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.OnionPacket(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Generates a non-cryptographic 64-bit hash of the OnionPacket.
+ */
+ public long hash() {
+ long ret = bindings.OnionPacket_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
+ /**
+ * Checks if two OnionPackets contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.OnionPacket b) {
+ bool ret = bindings.OnionPacket_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is OnionPacket)) return false;
+ return this.eq((OnionPacket)o);
+ }
+ /**
+ * Serialize the OnionPacket object into a byte array which can be read by OnionPacket_read
+ */
+ public byte[] write() {
+ long ret = bindings.OnionPacket_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a OnionPacket from a byte array, created by OnionPacket_write
+ */
+ public static Result_OnionPacketDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.OnionPacket_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_OnionPacketDecodeErrorZ ret_hu_conv = Result_OnionPacketDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the OpenChannel.
+ */
+ public long hash() {
+ long ret = bindings.OpenChannel_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two OpenChannels contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the OpenChannelV2.
+ */
+ public long hash() {
+ long ret = bindings.OpenChannelV2_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two OpenChannelV2s contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Packet.
+ */
+ public long hash() {
+ long ret = bindings.Packet_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two Packets contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-/**
- * An error that may occur when making a payment.
- */
-public class PaymentError : CommonBase {
- protected PaymentError(object _dummy, long ptr) : base(ptr) { }
- ~PaymentError() {
- if (ptr != 0) { bindings.PaymentError_free(ptr); }
- }
-
- internal static PaymentError constr_from_ptr(long ptr) {
- long raw_ty = bindings.LDKPaymentError_ty_from_ptr(ptr);
- switch (raw_ty) {
- case 0: return new PaymentError_Invoice(ptr);
- case 1: return new PaymentError_Sending(ptr);
- default:
- throw new ArgumentException("Impossible enum variant");
- }
- }
-
- /** A PaymentError of type Invoice */
- public class PaymentError_Invoice : PaymentError {
- public string invoice;
- internal PaymentError_Invoice(long ptr) : base(null, ptr) {
- long invoice = bindings.LDKPaymentError_Invoice_get_invoice(ptr);
- string invoice_conv = InternalUtils.decodeString(invoice);
- this.invoice = invoice_conv;
- }
- }
- /** A PaymentError of type Sending */
- public class PaymentError_Sending : PaymentError {
- public RetryableSendFailure sending;
- internal PaymentError_Sending(long ptr) : base(null, ptr) {
- this.sending = bindings.LDKPaymentError_Sending_get_sending(ptr);
- }
- }
- internal long clone_ptr() {
- long ret = bindings.PaymentError_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a copy of the PaymentError
- */
- public PaymentError clone() {
- long ret = bindings.PaymentError_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.PaymentError ret_hu_conv = org.ldk.structs.PaymentError.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- /**
- * Utility method to constructs a new Invoice-variant PaymentError
- */
- public static PaymentError invoice(string a) {
- long ret = bindings.PaymentError_invoice(InternalUtils.encodeString(a));
- GC.KeepAlive(a);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.PaymentError ret_hu_conv = org.ldk.structs.PaymentError.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- return ret_hu_conv;
- }
-
- /**
- * Utility method to constructs a new Sending-variant PaymentError
- */
- public static PaymentError sending(RetryableSendFailure a) {
- long ret = bindings.PaymentError_sending(a);
- GC.KeepAlive(a);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.PaymentError ret_hu_conv = org.ldk.structs.PaymentError.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if two PaymentErrors contain equal inner contents.
- * This ignores pointers and is_owned flags and looks at the values in fields.
- */
- public bool eq(org.ldk.structs.PaymentError b) {
- bool ret = bindings.PaymentError_eq(this.ptr, b == null ? 0 : b.ptr);
- GC.KeepAlive(this);
- GC.KeepAlive(b);
- return ret;
- }
-
- public override bool Equals(object o) {
- if (!(o is PaymentError)) return false;
- return this.eq((PaymentError)o);
- }
-}
-} } }
GC.KeepAlive(val);
}
+ /**
+ * A list of indices corresponding to blinded paths in [`Payee::Blinded::route_hints`] which this
+ * payment was previously attempted over and which caused the payment to fail. Future attempts
+ * for the same payment shouldn't be relayed through any of these blinded paths.
+ *
+ * Returns a copy of the field.
+ */
+ public long[] get_previously_failed_blinded_path_idxs() {
+ long ret = bindings.PaymentParameters_get_previously_failed_blinded_path_idxs(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ long[] ret_conv = InternalUtils.decodeUint64Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * A list of indices corresponding to blinded paths in [`Payee::Blinded::route_hints`] which this
+ * payment was previously attempted over and which caused the payment to fail. Future attempts
+ * for the same payment shouldn't be relayed through any of these blinded paths.
+ */
+ public void set_previously_failed_blinded_path_idxs(long[] val) {
+ bindings.PaymentParameters_set_previously_failed_blinded_path_idxs(this.ptr, InternalUtils.encodeUint64Array(val));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
/**
* Constructs a new PaymentParameters given each field
*/
- public static PaymentParameters of(org.ldk.structs.Payee payee_arg, org.ldk.structs.Option_u64Z expiry_time_arg, int max_total_cltv_expiry_delta_arg, byte max_path_count_arg, byte max_channel_saturation_power_of_half_arg, long[] previously_failed_channels_arg) {
- long ret = bindings.PaymentParameters_new(payee_arg.ptr, expiry_time_arg.ptr, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, InternalUtils.encodeUint64Array(previously_failed_channels_arg));
+ public static PaymentParameters of(org.ldk.structs.Payee payee_arg, org.ldk.structs.Option_u64Z expiry_time_arg, int max_total_cltv_expiry_delta_arg, byte max_path_count_arg, byte max_channel_saturation_power_of_half_arg, long[] previously_failed_channels_arg, long[] previously_failed_blinded_path_idxs_arg) {
+ long ret = bindings.PaymentParameters_new(payee_arg.ptr, expiry_time_arg.ptr, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, InternalUtils.encodeUint64Array(previously_failed_channels_arg), InternalUtils.encodeUint64Array(previously_failed_blinded_path_idxs_arg));
GC.KeepAlive(payee_arg);
GC.KeepAlive(expiry_time_arg);
GC.KeepAlive(max_total_cltv_expiry_delta_arg);
GC.KeepAlive(max_path_count_arg);
GC.KeepAlive(max_channel_saturation_power_of_half_arg);
GC.KeepAlive(previously_failed_channels_arg);
+ GC.KeepAlive(previously_failed_blinded_path_idxs_arg);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.PaymentParameters ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.PaymentParameters(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
if (!(o is PaymentPurpose)) return false;
return this.eq((PaymentPurpose)o);
}
+ /**
+ * Returns the preimage for this payment, if it is known.
+ */
+ public Option_ThirtyTwoBytesZ preimage() {
+ long ret = bindings.PaymentPurpose_preimage(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_ThirtyTwoBytesZ ret_hu_conv = org.ldk.structs.Option_ThirtyTwoBytesZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
/**
* Serialize the PaymentPurpose object into a byte array which can be read by PaymentPurpose_read
*/
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Information about an incoming HTLC, including the [`PendingHTLCRouting`] describing where it
+ * should go next.
+ */
+public class PendingHTLCInfo : CommonBase {
+ internal PendingHTLCInfo(object _dummy, long ptr) : base(ptr) { }
+ ~PendingHTLCInfo() {
+ if (ptr != 0) { bindings.PendingHTLCInfo_free(ptr); }
+ }
+
+ /**
+ * Further routing details based on whether the HTLC is being forwarded or received.
+ */
+ public PendingHTLCRouting get_routing() {
+ long ret = bindings.PendingHTLCInfo_get_routing(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCRouting ret_hu_conv = org.ldk.structs.PendingHTLCRouting.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Further routing details based on whether the HTLC is being forwarded or received.
+ */
+ public void set_routing(org.ldk.structs.PendingHTLCRouting val) {
+ bindings.PendingHTLCInfo_set_routing(this.ptr, val.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
+ }
+
+ /**
+ * The onion shared secret we build with the sender used to decrypt the onion.
+ *
+ * This is later used to encrypt failure packets in the event that the HTLC is failed.
+ */
+ public byte[] get_incoming_shared_secret() {
+ long ret = bindings.PendingHTLCInfo_get_incoming_shared_secret(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The onion shared secret we build with the sender used to decrypt the onion.
+ *
+ * This is later used to encrypt failure packets in the event that the HTLC is failed.
+ */
+ public void set_incoming_shared_secret(byte[] val) {
+ bindings.PendingHTLCInfo_set_incoming_shared_secret(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Hash of the payment preimage, to lock the payment until the receiver releases the preimage.
+ */
+ public byte[] get_payment_hash() {
+ long ret = bindings.PendingHTLCInfo_get_payment_hash(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Hash of the payment preimage, to lock the payment until the receiver releases the preimage.
+ */
+ public void set_payment_hash(byte[] val) {
+ bindings.PendingHTLCInfo_set_payment_hash(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Amount received in the incoming HTLC.
+ *
+ * This field was added in LDK 0.0.113 and will be `None` for objects written by prior
+ * versions.
+ */
+ public Option_u64Z get_incoming_amt_msat() {
+ long ret = bindings.PendingHTLCInfo_get_incoming_amt_msat(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_u64Z ret_hu_conv = org.ldk.structs.Option_u64Z.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Amount received in the incoming HTLC.
+ *
+ * This field was added in LDK 0.0.113 and will be `None` for objects written by prior
+ * versions.
+ */
+ public void set_incoming_amt_msat(org.ldk.structs.Option_u64Z val) {
+ bindings.PendingHTLCInfo_set_incoming_amt_msat(this.ptr, val.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
+ }
+
+ /**
+ * The amount the sender indicated should be forwarded on to the next hop or amount the sender
+ * intended for us to receive for received payments.
+ *
+ * If the received amount is less than this for received payments, an intermediary hop has
+ * attempted to steal some of our funds and we should fail the HTLC (the sender should retry
+ * it along another path).
+ *
+ * Because nodes can take less than their required fees, and because senders may wish to
+ * improve their own privacy, this amount may be less than [`Self::incoming_amt_msat`] for
+ * received payments. In such cases, recipients must handle this HTLC as if it had received
+ * [`Self::outgoing_amt_msat`].
+ */
+ public long get_outgoing_amt_msat() {
+ long ret = bindings.PendingHTLCInfo_get_outgoing_amt_msat(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The amount the sender indicated should be forwarded on to the next hop or amount the sender
+ * intended for us to receive for received payments.
+ *
+ * If the received amount is less than this for received payments, an intermediary hop has
+ * attempted to steal some of our funds and we should fail the HTLC (the sender should retry
+ * it along another path).
+ *
+ * Because nodes can take less than their required fees, and because senders may wish to
+ * improve their own privacy, this amount may be less than [`Self::incoming_amt_msat`] for
+ * received payments. In such cases, recipients must handle this HTLC as if it had received
+ * [`Self::outgoing_amt_msat`].
+ */
+ public void set_outgoing_amt_msat(long val) {
+ bindings.PendingHTLCInfo_set_outgoing_amt_msat(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The CLTV the sender has indicated we should set on the forwarded HTLC (or has indicated
+ * should have been set on the received HTLC for received payments).
+ */
+ public int get_outgoing_cltv_value() {
+ int ret = bindings.PendingHTLCInfo_get_outgoing_cltv_value(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The CLTV the sender has indicated we should set on the forwarded HTLC (or has indicated
+ * should have been set on the received HTLC for received payments).
+ */
+ public void set_outgoing_cltv_value(int val) {
+ bindings.PendingHTLCInfo_set_outgoing_cltv_value(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The fee taken for this HTLC in addition to the standard protocol HTLC fees.
+ *
+ * If this is a payment for forwarding, this is the fee we are taking before forwarding the
+ * HTLC.
+ *
+ * If this is a received payment, this is the fee that our counterparty took.
+ *
+ * This is used to allow LSPs to take fees as a part of payments, without the sender having to
+ * shoulder them.
+ */
+ public Option_u64Z get_skimmed_fee_msat() {
+ long ret = bindings.PendingHTLCInfo_get_skimmed_fee_msat(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_u64Z ret_hu_conv = org.ldk.structs.Option_u64Z.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * The fee taken for this HTLC in addition to the standard protocol HTLC fees.
+ *
+ * If this is a payment for forwarding, this is the fee we are taking before forwarding the
+ * HTLC.
+ *
+ * If this is a received payment, this is the fee that our counterparty took.
+ *
+ * This is used to allow LSPs to take fees as a part of payments, without the sender having to
+ * shoulder them.
+ */
+ public void set_skimmed_fee_msat(org.ldk.structs.Option_u64Z val) {
+ bindings.PendingHTLCInfo_set_skimmed_fee_msat(this.ptr, val.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
+ }
+
+ /**
+ * Constructs a new PendingHTLCInfo given each field
+ */
+ public static PendingHTLCInfo of(org.ldk.structs.PendingHTLCRouting routing_arg, byte[] incoming_shared_secret_arg, byte[] payment_hash_arg, org.ldk.structs.Option_u64Z incoming_amt_msat_arg, long outgoing_amt_msat_arg, int outgoing_cltv_value_arg, org.ldk.structs.Option_u64Z skimmed_fee_msat_arg) {
+ long ret = bindings.PendingHTLCInfo_new(routing_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(incoming_shared_secret_arg, 32)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_hash_arg, 32)), incoming_amt_msat_arg.ptr, outgoing_amt_msat_arg, outgoing_cltv_value_arg, skimmed_fee_msat_arg.ptr);
+ GC.KeepAlive(routing_arg);
+ GC.KeepAlive(incoming_shared_secret_arg);
+ GC.KeepAlive(payment_hash_arg);
+ GC.KeepAlive(incoming_amt_msat_arg);
+ GC.KeepAlive(outgoing_amt_msat_arg);
+ GC.KeepAlive(outgoing_cltv_value_arg);
+ GC.KeepAlive(skimmed_fee_msat_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCInfo ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.PendingHTLCInfo(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(routing_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(incoming_amt_msat_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(skimmed_fee_msat_arg); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.PendingHTLCInfo_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the PendingHTLCInfo
+ */
+ public PendingHTLCInfo clone() {
+ long ret = bindings.PendingHTLCInfo_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCInfo ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.PendingHTLCInfo(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Serialize the PendingHTLCInfo object into a byte array which can be read by PendingHTLCInfo_read
+ */
+ public byte[] write() {
+ long ret = bindings.PendingHTLCInfo_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a PendingHTLCInfo from a byte array, created by PendingHTLCInfo_write
+ */
+ public static Result_PendingHTLCInfoDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.PendingHTLCInfo_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoDecodeErrorZ ret_hu_conv = Result_PendingHTLCInfoDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+/**
+ * Information about where a received HTLC('s onion) has indicated the HTLC should go.
+ */
+public class PendingHTLCRouting : CommonBase {
+ protected PendingHTLCRouting(object _dummy, long ptr) : base(ptr) { }
+ ~PendingHTLCRouting() {
+ if (ptr != 0) { bindings.PendingHTLCRouting_free(ptr); }
+ }
+
+ internal static PendingHTLCRouting constr_from_ptr(long ptr) {
+ long raw_ty = bindings.LDKPendingHTLCRouting_ty_from_ptr(ptr);
+ switch (raw_ty) {
+ case 0: return new PendingHTLCRouting_Forward(ptr);
+ case 1: return new PendingHTLCRouting_Receive(ptr);
+ case 2: return new PendingHTLCRouting_ReceiveKeysend(ptr);
+ default:
+ throw new ArgumentException("Impossible enum variant");
+ }
+ }
+
+ /** A PendingHTLCRouting of type Forward */
+ public class PendingHTLCRouting_Forward : PendingHTLCRouting {
+ /**
+ * The onion which should be included in the forwarded HTLC, telling the next hop what to
+ * do with the HTLC.
+ */
+ public OnionPacket onion_packet;
+ /**
+ * The short channel ID of the channel which we were instructed to forward this HTLC to.
+ *
+ * This could be a real on-chain SCID, an SCID alias, or some other SCID which has meaning
+ * to the receiving node, such as one returned from
+ * [`ChannelManager::get_intercept_scid`] or [`ChannelManager::get_phantom_scid`].
+ */
+ public long short_channel_id;
+ /**
+ * Set if this HTLC is being forwarded within a blinded path.
+ *
+ * Note that this (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public BlindedForward blinded;
+ internal PendingHTLCRouting_Forward(long ptr) : base(null, ptr) {
+ long onion_packet = bindings.LDKPendingHTLCRouting_Forward_get_onion_packet(ptr);
+ org.ldk.structs.OnionPacket onion_packet_hu_conv = null; if (onion_packet < 0 || onion_packet > 4096) { onion_packet_hu_conv = new org.ldk.structs.OnionPacket(null, onion_packet); }
+ if (onion_packet_hu_conv != null) { onion_packet_hu_conv.ptrs_to.AddLast(this); };
+ this.onion_packet = onion_packet_hu_conv;
+ this.short_channel_id = bindings.LDKPendingHTLCRouting_Forward_get_short_channel_id(ptr);
+ long blinded = bindings.LDKPendingHTLCRouting_Forward_get_blinded(ptr);
+ org.ldk.structs.BlindedForward blinded_hu_conv = null; if (blinded < 0 || blinded > 4096) { blinded_hu_conv = new org.ldk.structs.BlindedForward(null, blinded); }
+ if (blinded_hu_conv != null) { blinded_hu_conv.ptrs_to.AddLast(this); };
+ this.blinded = blinded_hu_conv;
+ }
+ }
+ /** A PendingHTLCRouting of type Receive */
+ public class PendingHTLCRouting_Receive : PendingHTLCRouting {
+ /**
+ * Information about the amount the sender intended to pay and (potential) proof that this
+ * is a payment for an invoice we generated. This proof of payment is is also used for
+ * linking MPP parts of a larger payment.
+ */
+ public FinalOnionHopData payment_data;
+ /**
+ * Additional data which we (allegedly) instructed the sender to include in the onion.
+ *
+ * For HTLCs received by LDK, this will ultimately be exposed in
+ * [`Event::PaymentClaimable::onion_fields`] as
+ * [`RecipientOnionFields::payment_metadata`].
+ */
+ public Option_CVec_u8ZZ payment_metadata;
+ /**
+ * CLTV expiry of the received HTLC.
+ *
+ * Used to track when we should expire pending HTLCs that go unclaimed.
+ */
+ public int incoming_cltv_expiry;
+ /**
+ * If the onion had forwarding instructions to one of our phantom node SCIDs, this will
+ * provide the onion shared secret used to decrypt the next level of forwarding
+ * instructions.
+ *
+ * Note that this (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public byte[] phantom_shared_secret;
+ /**
+ * Custom TLVs which were set by the sender.
+ *
+ * For HTLCs received by LDK, this will ultimately be exposed in
+ * [`Event::PaymentClaimable::onion_fields`] as
+ * [`RecipientOnionFields::custom_tlvs`].
+ */
+ public TwoTuple_u64CVec_u8ZZ[] custom_tlvs;
+ /**
+ * Set if this HTLC is the final hop in a multi-hop blinded path.
+ */
+ public bool requires_blinded_error;
+ internal PendingHTLCRouting_Receive(long ptr) : base(null, ptr) {
+ long payment_data = bindings.LDKPendingHTLCRouting_Receive_get_payment_data(ptr);
+ org.ldk.structs.FinalOnionHopData payment_data_hu_conv = null; if (payment_data < 0 || payment_data > 4096) { payment_data_hu_conv = new org.ldk.structs.FinalOnionHopData(null, payment_data); }
+ if (payment_data_hu_conv != null) { payment_data_hu_conv.ptrs_to.AddLast(this); };
+ this.payment_data = payment_data_hu_conv;
+ long payment_metadata = bindings.LDKPendingHTLCRouting_Receive_get_payment_metadata(ptr);
+ org.ldk.structs.Option_CVec_u8ZZ payment_metadata_hu_conv = org.ldk.structs.Option_CVec_u8ZZ.constr_from_ptr(payment_metadata);
+ if (payment_metadata_hu_conv != null) { payment_metadata_hu_conv.ptrs_to.AddLast(this); };
+ this.payment_metadata = payment_metadata_hu_conv;
+ this.incoming_cltv_expiry = bindings.LDKPendingHTLCRouting_Receive_get_incoming_cltv_expiry(ptr);
+ long phantom_shared_secret = bindings.LDKPendingHTLCRouting_Receive_get_phantom_shared_secret(ptr);
+ byte[] phantom_shared_secret_conv = InternalUtils.decodeUint8Array(phantom_shared_secret);
+ this.phantom_shared_secret = phantom_shared_secret_conv;
+ long custom_tlvs = bindings.LDKPendingHTLCRouting_Receive_get_custom_tlvs(ptr);
+ int custom_tlvs_conv_23_len = InternalUtils.getArrayLength(custom_tlvs);
+ TwoTuple_u64CVec_u8ZZ[] custom_tlvs_conv_23_arr = new TwoTuple_u64CVec_u8ZZ[custom_tlvs_conv_23_len];
+ for (int x = 0; x < custom_tlvs_conv_23_len; x++) {
+ long custom_tlvs_conv_23 = InternalUtils.getU64ArrayElem(custom_tlvs, x);
+ TwoTuple_u64CVec_u8ZZ custom_tlvs_conv_23_hu_conv = new TwoTuple_u64CVec_u8ZZ(null, custom_tlvs_conv_23);
+ if (custom_tlvs_conv_23_hu_conv != null) { custom_tlvs_conv_23_hu_conv.ptrs_to.AddLast(this); };
+ custom_tlvs_conv_23_arr[x] = custom_tlvs_conv_23_hu_conv;
+ }
+ bindings.free_buffer(custom_tlvs);
+ this.custom_tlvs = custom_tlvs_conv_23_arr;
+ this.requires_blinded_error = bindings.LDKPendingHTLCRouting_Receive_get_requires_blinded_error(ptr);
+ }
+ }
+ /** A PendingHTLCRouting of type ReceiveKeysend */
+ public class PendingHTLCRouting_ReceiveKeysend : PendingHTLCRouting {
+ /**
+ * Information about the amount the sender intended to pay and possibly a token to
+ * associate MPP parts of a larger payment.
+ *
+ * This will only be filled in if receiving MPP keysend payments is enabled, and it being
+ * present will cause deserialization to fail on versions of LDK prior to 0.0.116.
+ *
+ * Note that this (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public FinalOnionHopData payment_data;
+ /**
+ * Preimage for this onion payment. This preimage is provided by the sender and will be
+ * used to settle the spontaneous payment.
+ */
+ public byte[] payment_preimage;
+ /**
+ * Additional data which we (allegedly) instructed the sender to include in the onion.
+ *
+ * For HTLCs received by LDK, this will ultimately bubble back up as
+ * [`RecipientOnionFields::payment_metadata`].
+ */
+ public Option_CVec_u8ZZ payment_metadata;
+ /**
+ * CLTV expiry of the received HTLC.
+ *
+ * Used to track when we should expire pending HTLCs that go unclaimed.
+ */
+ public int incoming_cltv_expiry;
+ /**
+ * Custom TLVs which were set by the sender.
+ *
+ * For HTLCs received by LDK, these will ultimately bubble back up as
+ * [`RecipientOnionFields::custom_tlvs`].
+ */
+ public TwoTuple_u64CVec_u8ZZ[] custom_tlvs;
+ internal PendingHTLCRouting_ReceiveKeysend(long ptr) : base(null, ptr) {
+ long payment_data = bindings.LDKPendingHTLCRouting_ReceiveKeysend_get_payment_data(ptr);
+ org.ldk.structs.FinalOnionHopData payment_data_hu_conv = null; if (payment_data < 0 || payment_data > 4096) { payment_data_hu_conv = new org.ldk.structs.FinalOnionHopData(null, payment_data); }
+ if (payment_data_hu_conv != null) { payment_data_hu_conv.ptrs_to.AddLast(this); };
+ this.payment_data = payment_data_hu_conv;
+ long payment_preimage = bindings.LDKPendingHTLCRouting_ReceiveKeysend_get_payment_preimage(ptr);
+ byte[] payment_preimage_conv = InternalUtils.decodeUint8Array(payment_preimage);
+ this.payment_preimage = payment_preimage_conv;
+ long payment_metadata = bindings.LDKPendingHTLCRouting_ReceiveKeysend_get_payment_metadata(ptr);
+ org.ldk.structs.Option_CVec_u8ZZ payment_metadata_hu_conv = org.ldk.structs.Option_CVec_u8ZZ.constr_from_ptr(payment_metadata);
+ if (payment_metadata_hu_conv != null) { payment_metadata_hu_conv.ptrs_to.AddLast(this); };
+ this.payment_metadata = payment_metadata_hu_conv;
+ this.incoming_cltv_expiry = bindings.LDKPendingHTLCRouting_ReceiveKeysend_get_incoming_cltv_expiry(ptr);
+ long custom_tlvs = bindings.LDKPendingHTLCRouting_ReceiveKeysend_get_custom_tlvs(ptr);
+ int custom_tlvs_conv_23_len = InternalUtils.getArrayLength(custom_tlvs);
+ TwoTuple_u64CVec_u8ZZ[] custom_tlvs_conv_23_arr = new TwoTuple_u64CVec_u8ZZ[custom_tlvs_conv_23_len];
+ for (int x = 0; x < custom_tlvs_conv_23_len; x++) {
+ long custom_tlvs_conv_23 = InternalUtils.getU64ArrayElem(custom_tlvs, x);
+ TwoTuple_u64CVec_u8ZZ custom_tlvs_conv_23_hu_conv = new TwoTuple_u64CVec_u8ZZ(null, custom_tlvs_conv_23);
+ if (custom_tlvs_conv_23_hu_conv != null) { custom_tlvs_conv_23_hu_conv.ptrs_to.AddLast(this); };
+ custom_tlvs_conv_23_arr[x] = custom_tlvs_conv_23_hu_conv;
+ }
+ bindings.free_buffer(custom_tlvs);
+ this.custom_tlvs = custom_tlvs_conv_23_arr;
+ }
+ }
+ internal long clone_ptr() {
+ long ret = bindings.PendingHTLCRouting_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the PendingHTLCRouting
+ */
+ public PendingHTLCRouting clone() {
+ long ret = bindings.PendingHTLCRouting_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCRouting ret_hu_conv = org.ldk.structs.PendingHTLCRouting.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new Forward-variant PendingHTLCRouting
+ */
+ public static PendingHTLCRouting forward(org.ldk.structs.OnionPacket onion_packet, long short_channel_id, org.ldk.structs.BlindedForward blinded) {
+ long ret = bindings.PendingHTLCRouting_forward(onion_packet == null ? 0 : onion_packet.ptr, short_channel_id, blinded == null ? 0 : blinded.ptr);
+ GC.KeepAlive(onion_packet);
+ GC.KeepAlive(short_channel_id);
+ GC.KeepAlive(blinded);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCRouting ret_hu_conv = org.ldk.structs.PendingHTLCRouting.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(onion_packet); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(blinded); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new Receive-variant PendingHTLCRouting
+ */
+ public static PendingHTLCRouting receive(org.ldk.structs.FinalOnionHopData payment_data, org.ldk.structs.Option_CVec_u8ZZ payment_metadata, int incoming_cltv_expiry, byte[] phantom_shared_secret, TwoTuple_u64CVec_u8ZZ[] custom_tlvs, bool requires_blinded_error) {
+ long ret = bindings.PendingHTLCRouting_receive(payment_data == null ? 0 : payment_data.ptr, payment_metadata.ptr, incoming_cltv_expiry, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(phantom_shared_secret, 32)), InternalUtils.encodeUint64Array(InternalUtils.mapArray(custom_tlvs, custom_tlvs_conv_23 => custom_tlvs_conv_23 != null ? custom_tlvs_conv_23.ptr : 0)), requires_blinded_error);
+ GC.KeepAlive(payment_data);
+ GC.KeepAlive(payment_metadata);
+ GC.KeepAlive(incoming_cltv_expiry);
+ GC.KeepAlive(phantom_shared_secret);
+ GC.KeepAlive(custom_tlvs);
+ GC.KeepAlive(requires_blinded_error);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCRouting ret_hu_conv = org.ldk.structs.PendingHTLCRouting.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(payment_data); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(payment_metadata); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new ReceiveKeysend-variant PendingHTLCRouting
+ */
+ public static PendingHTLCRouting receive_keysend(org.ldk.structs.FinalOnionHopData payment_data, byte[] payment_preimage, org.ldk.structs.Option_CVec_u8ZZ payment_metadata, int incoming_cltv_expiry, TwoTuple_u64CVec_u8ZZ[] custom_tlvs) {
+ long ret = bindings.PendingHTLCRouting_receive_keysend(payment_data == null ? 0 : payment_data.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_preimage, 32)), payment_metadata.ptr, incoming_cltv_expiry, InternalUtils.encodeUint64Array(InternalUtils.mapArray(custom_tlvs, custom_tlvs_conv_23 => custom_tlvs_conv_23 != null ? custom_tlvs_conv_23.ptr : 0)));
+ GC.KeepAlive(payment_data);
+ GC.KeepAlive(payment_preimage);
+ GC.KeepAlive(payment_metadata);
+ GC.KeepAlive(incoming_cltv_expiry);
+ GC.KeepAlive(custom_tlvs);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PendingHTLCRouting ret_hu_conv = org.ldk.structs.PendingHTLCRouting.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(payment_data); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(payment_metadata); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Serialize the PendingHTLCRouting object into a byte array which can be read by PendingHTLCRouting_read
+ */
+ public byte[] write() {
+ long ret = bindings.PendingHTLCRouting_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a PendingHTLCRouting from a byte array, created by PendingHTLCRouting_write
+ */
+ public static Result_PendingHTLCRoutingDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.PendingHTLCRouting_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCRoutingDecodeErrorZ ret_hu_conv = Result_PendingHTLCRoutingDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Ping.
+ */
+ public long hash() {
+ long ret = bindings.Ping_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two Pings contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Pong.
+ */
+ public long hash() {
+ long ret = bindings.Pong_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two Pongs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A [`CandidateRouteHop::PrivateHop`] entry.
+ */
+public class PrivateHopCandidate : CommonBase {
+ internal PrivateHopCandidate(object _dummy, long ptr) : base(ptr) { }
+ ~PrivateHopCandidate() {
+ if (ptr != 0) { bindings.PrivateHopCandidate_free(ptr); }
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.PrivateHopCandidate_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the PrivateHopCandidate
+ */
+ public PrivateHopCandidate clone() {
+ long ret = bindings.PrivateHopCandidate_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PrivateHopCandidate ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.PrivateHopCandidate(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
* These bounds are then used to determine a success probability using the formula from
* Optimally Reliable & Cheap Payment Flows on the Lightning Network* by Rene Pickhardt
* and Stefan Richter [[1]] (i.e. `(upper_bound - payment_amount) / (upper_bound - lower_bound)`).
- * 6762, 1070
+ *
* This probability is combined with the [`liquidity_penalty_multiplier_msat`] and
* [`liquidity_penalty_amount_multiplier_msat`] parameters to calculate a concrete penalty in
* milli-satoshis. The penalties, when added across all hops, have the property of being linear in
* formula, but using the history of a channel rather than our latest estimates for the liquidity
* bounds.
*
- * # Note
- *
- * Mixing the `no-std` feature between serialization and deserialization results in undefined
- * behavior.
- *
* [1]: https://arxiv.org/abs/2107.05322
* [`liquidity_penalty_multiplier_msat`]: ProbabilisticScoringFeeParameters::liquidity_penalty_multiplier_msat
* [`liquidity_penalty_amount_multiplier_msat`]: ProbabilisticScoringFeeParameters::liquidity_penalty_amount_multiplier_msat
* in the top and bottom bucket, and roughly with similar (recent) frequency.
*
* Because the datapoints are decayed slowly over time, values will eventually return to
- * `Some(([1; 32], [1; 32]))` and then to `None` once no datapoints remain.
+ * `Some(([0; 32], [0; 32]))` or `None` if no data remains for a channel.
*
* In order to fetch a single success probability from the buckets provided here, as used in
* the scoring model, see [`Self::historical_estimated_payment_success_probability`].
*
* Default value: 14 days
*
- * [`historical_estimated_channel_liquidity_probabilities`]: ProbabilisticScorerUsingTime::historical_estimated_channel_liquidity_probabilities
+ * [`historical_estimated_channel_liquidity_probabilities`]: ProbabilisticScorer::historical_estimated_channel_liquidity_probabilities
*/
public long get_historical_no_updates_half_life() {
long ret = bindings.ProbabilisticScoringDecayParameters_get_historical_no_updates_half_life(this.ptr);
*
* Default value: 14 days
*
- * [`historical_estimated_channel_liquidity_probabilities`]: ProbabilisticScorerUsingTime::historical_estimated_channel_liquidity_probabilities
+ * [`historical_estimated_channel_liquidity_probabilities`]: ProbabilisticScorer::historical_estimated_channel_liquidity_probabilities
*/
public void set_historical_no_updates_half_life(long val) {
bindings.ProbabilisticScoringDecayParameters_set_historical_no_updates_half_life(this.ptr, val);
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-/**
- * An error that may occur when sending a payment probe.
- */
-public class ProbingError : CommonBase {
- protected ProbingError(object _dummy, long ptr) : base(ptr) { }
- ~ProbingError() {
- if (ptr != 0) { bindings.ProbingError_free(ptr); }
- }
-
- internal static ProbingError constr_from_ptr(long ptr) {
- long raw_ty = bindings.LDKProbingError_ty_from_ptr(ptr);
- switch (raw_ty) {
- case 0: return new ProbingError_Invoice(ptr);
- case 1: return new ProbingError_Sending(ptr);
- default:
- throw new ArgumentException("Impossible enum variant");
- }
- }
-
- /** A ProbingError of type Invoice */
- public class ProbingError_Invoice : ProbingError {
- public string invoice;
- internal ProbingError_Invoice(long ptr) : base(null, ptr) {
- long invoice = bindings.LDKProbingError_Invoice_get_invoice(ptr);
- string invoice_conv = InternalUtils.decodeString(invoice);
- this.invoice = invoice_conv;
- }
- }
- /** A ProbingError of type Sending */
- public class ProbingError_Sending : ProbingError {
- public ProbeSendFailure sending;
- internal ProbingError_Sending(long ptr) : base(null, ptr) {
- long sending = bindings.LDKProbingError_Sending_get_sending(ptr);
- org.ldk.structs.ProbeSendFailure sending_hu_conv = org.ldk.structs.ProbeSendFailure.constr_from_ptr(sending);
- if (sending_hu_conv != null) { sending_hu_conv.ptrs_to.AddLast(this); };
- this.sending = sending_hu_conv;
- }
- }
- internal long clone_ptr() {
- long ret = bindings.ProbingError_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a copy of the ProbingError
- */
- public ProbingError clone() {
- long ret = bindings.ProbingError_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.ProbingError ret_hu_conv = org.ldk.structs.ProbingError.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- /**
- * Utility method to constructs a new Invoice-variant ProbingError
- */
- public static ProbingError invoice(string a) {
- long ret = bindings.ProbingError_invoice(InternalUtils.encodeString(a));
- GC.KeepAlive(a);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.ProbingError ret_hu_conv = org.ldk.structs.ProbingError.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- return ret_hu_conv;
- }
-
- /**
- * Utility method to constructs a new Sending-variant ProbingError
- */
- public static ProbingError sending(org.ldk.structs.ProbeSendFailure a) {
- long ret = bindings.ProbingError_sending(a.ptr);
- GC.KeepAlive(a);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.ProbingError ret_hu_conv = org.ldk.structs.ProbingError.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(a); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if two ProbingErrors contain equal inner contents.
- * This ignores pointers and is_owned flags and looks at the values in fields.
- */
- public bool eq(org.ldk.structs.ProbingError b) {
- bool ret = bindings.ProbingError_eq(this.ptr, b == null ? 0 : b.ptr);
- GC.KeepAlive(this);
- GC.KeepAlive(b);
- return ret;
- }
-
- public override bool Equals(object o) {
- if (!(o is ProbingError)) return false;
- return this.eq((ProbingError)o);
- }
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A [`CandidateRouteHop::PublicHop`] entry.
+ */
+public class PublicHopCandidate : CommonBase {
+ internal PublicHopCandidate(object _dummy, long ptr) : base(ptr) { }
+ ~PublicHopCandidate() {
+ if (ptr != 0) { bindings.PublicHopCandidate_free(ptr); }
+ }
+
+ /**
+ * The short channel ID of the channel, i.e. the identifier by which we refer to this
+ * channel.
+ */
+ public long get_short_channel_id() {
+ long ret = bindings.PublicHopCandidate_get_short_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The short channel ID of the channel, i.e. the identifier by which we refer to this
+ * channel.
+ */
+ public void set_short_channel_id(long val) {
+ bindings.PublicHopCandidate_set_short_channel_id(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.PublicHopCandidate_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the PublicHopCandidate
+ */
+ public PublicHopCandidate clone() {
+ long ret = bindings.PublicHopCandidate_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.PublicHopCandidate ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.PublicHopCandidate(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the QueryChannelRange.
+ */
+ public long hash() {
+ long ret = bindings.QueryChannelRange_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two QueryChannelRanges contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the QueryShortChannelIds.
+ */
+ public long hash() {
+ long ret = bindings.QueryShortChannelIds_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two QueryShortChannelIdss contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_conv;
}
- /**
- * Read a ReceiveTlvs from a byte array, created by ReceiveTlvs_write
- */
- public static Result_ReceiveTlvsDecodeErrorZ read(byte[] ser) {
- long ret = bindings.ReceiveTlvs_read(InternalUtils.encodeUint8Array(ser));
- GC.KeepAlive(ser);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ReceiveTlvsDecodeErrorZ ret_hu_conv = Result_ReceiveTlvsDecodeErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
}
} } }
GC.KeepAlive(val);
}
+ /**
+ * The node id of the peer pertaining to the logged record.
+ *
+ * Note that in some cases a [`Self::channel_id`] may be filled in but this may still be
+ * `None`, depending on if the peer information is readily available in LDK when the log is
+ * generated.
+ *
+ * Note that the return value (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public byte[] get_peer_id() {
+ long ret = bindings.Record_get_peer_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The node id of the peer pertaining to the logged record.
+ *
+ * Note that in some cases a [`Self::channel_id`] may be filled in but this may still be
+ * `None`, depending on if the peer information is readily available in LDK when the log is
+ * generated.
+ *
+ * Note that val (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public void set_peer_id(byte[] val) {
+ bindings.Record_set_peer_id(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The channel id of the channel pertaining to the logged record. May be a temporary id before
+ * the channel has been funded.
+ */
+ public Option_ThirtyTwoBytesZ get_channel_id() {
+ long ret = bindings.Record_get_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_ThirtyTwoBytesZ ret_hu_conv = org.ldk.structs.Option_ThirtyTwoBytesZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * The channel id of the channel pertaining to the logged record. May be a temporary id before
+ * the channel has been funded.
+ */
+ public void set_channel_id(org.ldk.structs.Option_ThirtyTwoBytesZ val) {
+ bindings.Record_set_channel_id(this.ptr, val.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
+ }
+
/**
* The message body.
*/
GC.KeepAlive(val);
}
+ /**
+ * Constructs a new Record given each field
+ *
+ * Note that peer_id_arg (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public static Record of(Level level_arg, byte[] peer_id_arg, org.ldk.structs.Option_ThirtyTwoBytesZ channel_id_arg, string args_arg, string module_path_arg, string file_arg, int line_arg) {
+ long ret = bindings.Record_new(level_arg, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(peer_id_arg, 33)), channel_id_arg.ptr, InternalUtils.encodeString(args_arg), InternalUtils.encodeString(module_path_arg), InternalUtils.encodeString(file_arg), line_arg);
+ GC.KeepAlive(level_arg);
+ GC.KeepAlive(peer_id_arg);
+ GC.KeepAlive(channel_id_arg);
+ GC.KeepAlive(args_arg);
+ GC.KeepAlive(module_path_arg);
+ GC.KeepAlive(file_arg);
+ GC.KeepAlive(line_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Record ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.Record(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channel_id_arg); };
+ return ret_hu_conv;
+ }
+
internal long clone_ptr() {
long ret = bindings.Record_clone_ptr(this.ptr);
GC.KeepAlive(this);
return ret;
}
+ /**
+ * Whether the refund has expired given the duration since the Unix epoch.
+ */
+ public bool is_expired_no_std(long duration_since_epoch) {
+ bool ret = bindings.Refund_is_expired_no_std(this.ptr, duration_since_epoch);
+ GC.KeepAlive(this);
+ GC.KeepAlive(duration_since_epoch);
+ return ret;
+ }
+
/**
* The issuer of the refund, possibly beginning with `user@domain` or `domain`. Intended to be
* displayed to the user but with the caveat that it has not been verified in any way.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ReplyChannelRange.
+ */
+ public long hash() {
+ long ret = bindings.ReplyChannelRange_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ReplyChannelRanges contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the ReplyShortChannelIdsEnd.
+ */
+ public long hash() {
+ long ret = bindings.ReplyShortChannelIdsEnd_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two ReplyShortChannelIdsEnds contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_BlindedFailureDecodeErrorZ : CommonBase {
+ Result_BlindedFailureDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_BlindedFailureDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_BlindedFailureDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_BlindedFailureDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_BlindedFailureDecodeErrorZ_is_ok(ptr)) {
+ return new Result_BlindedFailureDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_BlindedFailureDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_BlindedFailureDecodeErrorZ_OK : Result_BlindedFailureDecodeErrorZ {
+ public readonly BlindedFailure res;
+ internal Result_BlindedFailureDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ this.res = bindings.CResult_BlindedFailureDecodeErrorZ_get_ok(ptr);
+ }
+ }
+
+ public class Result_BlindedFailureDecodeErrorZ_Err : Result_BlindedFailureDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_BlindedFailureDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_BlindedFailureDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_BlindedFailureDecodeErrorZ in the success state.
+ */
+ public static Result_BlindedFailureDecodeErrorZ ok(BlindedFailure o) {
+ long ret = bindings.CResult_BlindedFailureDecodeErrorZ_ok(o);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedFailureDecodeErrorZ ret_hu_conv = Result_BlindedFailureDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_BlindedFailureDecodeErrorZ in the error state.
+ */
+ public static Result_BlindedFailureDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_BlindedFailureDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedFailureDecodeErrorZ ret_hu_conv = Result_BlindedFailureDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_BlindedFailureDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_BlindedFailureDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_BlindedFailureDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_BlindedFailureDecodeErrorZ clone() {
+ long ret = bindings.CResult_BlindedFailureDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedFailureDecodeErrorZ ret_hu_conv = Result_BlindedFailureDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_BlindedForwardDecodeErrorZ : CommonBase {
+ Result_BlindedForwardDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_BlindedForwardDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_BlindedForwardDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_BlindedForwardDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_BlindedForwardDecodeErrorZ_is_ok(ptr)) {
+ return new Result_BlindedForwardDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_BlindedForwardDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_BlindedForwardDecodeErrorZ_OK : Result_BlindedForwardDecodeErrorZ {
+ public readonly BlindedForward res;
+ internal Result_BlindedForwardDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_BlindedForwardDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.BlindedForward res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.BlindedForward(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_BlindedForwardDecodeErrorZ_Err : Result_BlindedForwardDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_BlindedForwardDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_BlindedForwardDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_BlindedForwardDecodeErrorZ in the success state.
+ */
+ public static Result_BlindedForwardDecodeErrorZ ok(org.ldk.structs.BlindedForward o) {
+ long ret = bindings.CResult_BlindedForwardDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedForwardDecodeErrorZ ret_hu_conv = Result_BlindedForwardDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_BlindedForwardDecodeErrorZ in the error state.
+ */
+ public static Result_BlindedForwardDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_BlindedForwardDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedForwardDecodeErrorZ ret_hu_conv = Result_BlindedForwardDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_BlindedForwardDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_BlindedForwardDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_BlindedForwardDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_BlindedForwardDecodeErrorZ clone() {
+ long ret = bindings.CResult_BlindedForwardDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_BlindedForwardDecodeErrorZ ret_hu_conv = Result_BlindedForwardDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_C2Tuple_CVec_u8Zu64ZNoneZ : CommonBase {
+ Result_C2Tuple_CVec_u8Zu64ZNoneZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_C2Tuple_CVec_u8Zu64ZNoneZ() {
+ if (ptr != 0) { bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_free(ptr); }
+ }
+
+ internal static Result_C2Tuple_CVec_u8Zu64ZNoneZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(ptr)) {
+ return new Result_C2Tuple_CVec_u8Zu64ZNoneZ_OK(null, ptr);
+ } else {
+ return new Result_C2Tuple_CVec_u8Zu64ZNoneZ_Err(null, ptr);
+ }
+ }
+ public class Result_C2Tuple_CVec_u8Zu64ZNoneZ_OK : Result_C2Tuple_CVec_u8Zu64ZNoneZ {
+ public readonly TwoTuple_CVec_u8Zu64Z res;
+ internal Result_C2Tuple_CVec_u8Zu64ZNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_get_ok(ptr);
+ TwoTuple_CVec_u8Zu64Z res_hu_conv = new TwoTuple_CVec_u8Zu64Z(null, res);
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_C2Tuple_CVec_u8Zu64ZNoneZ_Err : Result_C2Tuple_CVec_u8Zu64ZNoneZ {
+ internal Result_C2Tuple_CVec_u8Zu64ZNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ }
+ }
+
+ /**
+ * Creates a new CResult_C2Tuple_CVec_u8Zu64ZNoneZ in the success state.
+ */
+ public static Result_C2Tuple_CVec_u8Zu64ZNoneZ ok(org.ldk.structs.TwoTuple_CVec_u8Zu64Z o) {
+ long ret = bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_ok(o != null ? o.ptr : 0);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C2Tuple_CVec_u8Zu64ZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8Zu64ZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_C2Tuple_CVec_u8Zu64ZNoneZ in the error state.
+ */
+ public static Result_C2Tuple_CVec_u8Zu64ZNoneZ err() {
+ long ret = bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_err();
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C2Tuple_CVec_u8Zu64ZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8Zu64ZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_C2Tuple_CVec_u8Zu64ZNoneZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_C2Tuple_CVec_u8Zu64ZNoneZ clone() {
+ long ret = bindings.CResult_C2Tuple_CVec_u8Zu64ZNoneZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C2Tuple_CVec_u8Zu64ZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8Zu64ZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_C2Tuple_CVec_u8ZusizeZNoneZ : CommonBase {
- Result_C2Tuple_CVec_u8ZusizeZNoneZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_C2Tuple_CVec_u8ZusizeZNoneZ() {
- if (ptr != 0) { bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_free(ptr); }
- }
-
- internal static Result_C2Tuple_CVec_u8ZusizeZNoneZ constr_from_ptr(long ptr) {
- if (bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(ptr)) {
- return new Result_C2Tuple_CVec_u8ZusizeZNoneZ_OK(null, ptr);
- } else {
- return new Result_C2Tuple_CVec_u8ZusizeZNoneZ_Err(null, ptr);
- }
- }
- public class Result_C2Tuple_CVec_u8ZusizeZNoneZ_OK : Result_C2Tuple_CVec_u8ZusizeZNoneZ {
- public readonly TwoTuple_CVec_u8ZusizeZ res;
- internal Result_C2Tuple_CVec_u8ZusizeZNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- long res = bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_get_ok(ptr);
- TwoTuple_CVec_u8ZusizeZ res_hu_conv = new TwoTuple_CVec_u8ZusizeZ(null, res);
- if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
- this.res = res_hu_conv;
- }
- }
-
- public class Result_C2Tuple_CVec_u8ZusizeZNoneZ_Err : Result_C2Tuple_CVec_u8ZusizeZNoneZ {
- internal Result_C2Tuple_CVec_u8ZusizeZNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- }
- }
-
- /**
- * Creates a new CResult_C2Tuple_CVec_u8ZusizeZNoneZ in the success state.
- */
- public static Result_C2Tuple_CVec_u8ZusizeZNoneZ ok(org.ldk.structs.TwoTuple_CVec_u8ZusizeZ o) {
- long ret = bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_ok(o != null ? o.ptr : 0);
- GC.KeepAlive(o);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_CVec_u8ZusizeZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8ZusizeZNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_C2Tuple_CVec_u8ZusizeZNoneZ in the error state.
- */
- public static Result_C2Tuple_CVec_u8ZusizeZNoneZ err() {
- long ret = bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_err();
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_CVec_u8ZusizeZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8ZusizeZNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new CResult_C2Tuple_CVec_u8ZusizeZNoneZ which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public Result_C2Tuple_CVec_u8ZusizeZNoneZ clone() {
- long ret = bindings.CResult_C2Tuple_CVec_u8ZusizeZNoneZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_CVec_u8ZusizeZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8ZusizeZNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
-}
-} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ : CommonBase {
- Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ() {
- if (ptr != 0) { bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_free(ptr); }
- }
-
- internal static Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ constr_from_ptr(long ptr) {
- if (bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(ptr)) {
- return new Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ_OK(null, ptr);
- } else {
- return new Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ_Err(null, ptr);
- }
- }
- public class Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ_OK : Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ {
- public readonly TwoTuple_PublicKeyOnionMessageZ res;
- internal Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- long res = bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_ok(ptr);
- TwoTuple_PublicKeyOnionMessageZ res_hu_conv = new TwoTuple_PublicKeyOnionMessageZ(null, res);
- if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
- this.res = res_hu_conv;
- }
- }
-
- public class Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ_Err : Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ {
- public readonly SendError err;
- internal Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- long err = bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_get_err(ptr);
- org.ldk.structs.SendError err_hu_conv = org.ldk.structs.SendError.constr_from_ptr(err);
- if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
- this.err = err_hu_conv;
- }
- }
-
- /**
- * Creates a new CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ in the success state.
- */
- public static Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ ok(org.ldk.structs.TwoTuple_PublicKeyOnionMessageZ o) {
- long ret = bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_ok(o != null ? o.ptr : 0);
- GC.KeepAlive(o);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ ret_hu_conv = Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ in the error state.
- */
- public static Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ err(org.ldk.structs.SendError e) {
- long ret = bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_err(e.ptr);
- GC.KeepAlive(e);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ ret_hu_conv = Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_C2Tuple_PublicKeyOnionMessageZSendErrorZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ : CommonBase {
+ Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ() {
+ if (ptr != 0) { bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_free(ptr); }
+ }
+
+ internal static Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(ptr)) {
+ return new Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_OK(null, ptr);
+ } else {
+ return new Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_OK : Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ {
+ public readonly ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ res;
+ internal Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_ok(ptr);
+ ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ res_hu_conv = new ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ(null, res);
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_Err : Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ {
+ public readonly SendError err;
+ internal Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_get_err(ptr);
+ org.ldk.structs.SendError err_hu_conv = org.ldk.structs.SendError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ in the success state.
+ */
+ public static Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ ok(org.ldk.structs.ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ o) {
+ long ret = bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_ok(o != null ? o.ptr : 0);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ ret_hu_conv = Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ in the error state.
+ */
+ public static Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ err(org.ldk.structs.SendError e) {
+ long ret = bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ ret_hu_conv = Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ : CommonBase {
+ Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ() {
+ if (ptr != 0) { bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_free(ptr); }
+ }
+
+ internal static Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(ptr)) {
+ return new Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_OK(null, ptr);
+ } else {
+ return new Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_Err(null, ptr);
+ }
+ }
+ public class Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_OK : Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ {
+ public readonly ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ res;
+ internal Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_get_ok(ptr);
+ ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ res_hu_conv = new ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ(null, res);
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_Err : Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ {
+ internal Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ }
+ }
+
+ /**
+ * Creates a new CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ in the success state.
+ */
+ public static Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ ok(org.ldk.structs.ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ o) {
+ long ret = bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_ok(o != null ? o.ptr : 0);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ ret_hu_conv = Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ in the error state.
+ */
+ public static Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ err() {
+ long ret = bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_err();
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ ret_hu_conv = Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ clone() {
+ long ret = bindings.CResult_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ ret_hu_conv = Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_CVec_BlindedPathZNoneZ : CommonBase {
+ Result_CVec_BlindedPathZNoneZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_CVec_BlindedPathZNoneZ() {
+ if (ptr != 0) { bindings.CResult_CVec_BlindedPathZNoneZ_free(ptr); }
+ }
+
+ internal static Result_CVec_BlindedPathZNoneZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_CVec_BlindedPathZNoneZ_is_ok(ptr)) {
+ return new Result_CVec_BlindedPathZNoneZ_OK(null, ptr);
+ } else {
+ return new Result_CVec_BlindedPathZNoneZ_Err(null, ptr);
+ }
+ }
+ public class Result_CVec_BlindedPathZNoneZ_OK : Result_CVec_BlindedPathZNoneZ {
+ public readonly BlindedPath[] res;
+ internal Result_CVec_BlindedPathZNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_CVec_BlindedPathZNoneZ_get_ok(ptr);
+ int res_conv_13_len = InternalUtils.getArrayLength(res);
+ BlindedPath[] res_conv_13_arr = new BlindedPath[res_conv_13_len];
+ for (int n = 0; n < res_conv_13_len; n++) {
+ long res_conv_13 = InternalUtils.getU64ArrayElem(res, n);
+ org.ldk.structs.BlindedPath res_conv_13_hu_conv = null; if (res_conv_13 < 0 || res_conv_13 > 4096) { res_conv_13_hu_conv = new org.ldk.structs.BlindedPath(null, res_conv_13); }
+ if (res_conv_13_hu_conv != null) { res_conv_13_hu_conv.ptrs_to.AddLast(this); };
+ res_conv_13_arr[n] = res_conv_13_hu_conv;
+ }
+ bindings.free_buffer(res);
+ this.res = res_conv_13_arr;
+ }
+ }
+
+ public class Result_CVec_BlindedPathZNoneZ_Err : Result_CVec_BlindedPathZNoneZ {
+ internal Result_CVec_BlindedPathZNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ }
+ }
+
+ /**
+ * Creates a new CResult_CVec_BlindedPathZNoneZ in the success state.
+ */
+ public static Result_CVec_BlindedPathZNoneZ ok(BlindedPath[] o) {
+ long ret = bindings.CResult_CVec_BlindedPathZNoneZ_ok(InternalUtils.encodeUint64Array(InternalUtils.mapArray(o, o_conv_13 => o_conv_13 == null ? 0 : o_conv_13.ptr)));
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);
+ foreach (BlindedPath o_conv_13 in o) { if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o_conv_13); }; };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_CVec_BlindedPathZNoneZ in the error state.
+ */
+ public static Result_CVec_BlindedPathZNoneZ err() {
+ long ret = bindings.CResult_CVec_BlindedPathZNoneZ_err();
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_CVec_BlindedPathZNoneZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_CVec_BlindedPathZNoneZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_CVec_BlindedPathZNoneZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_CVec_BlindedPathZNoneZ clone() {
+ long ret = bindings.CResult_CVec_BlindedPathZNoneZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ : CommonBase {
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ() {
+ if (ptr != 0) { bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_free(ptr); }
+ }
+
+ internal static Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(ptr)) {
+ return new Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_OK(null, ptr);
+ } else {
+ return new Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_Err(null, ptr);
+ }
+ }
+ public class Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_OK : Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ {
+ public readonly TwoTuple_BlindedPayInfoBlindedPathZ[] res;
+ internal Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_get_ok(ptr);
+ int res_conv_37_len = InternalUtils.getArrayLength(res);
+ TwoTuple_BlindedPayInfoBlindedPathZ[] res_conv_37_arr = new TwoTuple_BlindedPayInfoBlindedPathZ[res_conv_37_len];
+ for (int l = 0; l < res_conv_37_len; l++) {
+ long res_conv_37 = InternalUtils.getU64ArrayElem(res, l);
+ TwoTuple_BlindedPayInfoBlindedPathZ res_conv_37_hu_conv = new TwoTuple_BlindedPayInfoBlindedPathZ(null, res_conv_37);
+ if (res_conv_37_hu_conv != null) { res_conv_37_hu_conv.ptrs_to.AddLast(this); };
+ res_conv_37_arr[l] = res_conv_37_hu_conv;
+ }
+ bindings.free_buffer(res);
+ this.res = res_conv_37_arr;
+ }
+ }
+
+ public class Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_Err : Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ {
+ internal Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ }
+ }
+
+ /**
+ * Creates a new CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ in the success state.
+ */
+ public static Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ok(TwoTuple_BlindedPayInfoBlindedPathZ[] o) {
+ long ret = bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_ok(InternalUtils.encodeUint64Array(InternalUtils.mapArray(o, o_conv_37 => o_conv_37 != null ? o_conv_37.ptr : 0)));
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret_hu_conv = Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ in the error state.
+ */
+ public static Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ err() {
+ long ret = bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_err();
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret_hu_conv = Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ clone() {
+ long ret = bindings.CResult_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret_hu_conv = Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ : CommonBase {
- Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ() {
- if (ptr != 0) { bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_free(ptr); }
- }
-
- internal static Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ constr_from_ptr(long ptr) {
- if (bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(ptr)) {
- return new Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_OK(null, ptr);
- } else {
- return new Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_Err(null, ptr);
- }
- }
- public class Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_OK : Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ {
- public readonly TwoTuple_ThirtyTwoBytesThirtyTwoBytesZ[] res;
- internal Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- long res = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_ok(ptr);
- int res_conv_40_len = InternalUtils.getArrayLength(res);
- TwoTuple_ThirtyTwoBytesThirtyTwoBytesZ[] res_conv_40_arr = new TwoTuple_ThirtyTwoBytesThirtyTwoBytesZ[res_conv_40_len];
- for (int o = 0; o < res_conv_40_len; o++) {
- long res_conv_40 = InternalUtils.getU64ArrayElem(res, o);
- TwoTuple_ThirtyTwoBytesThirtyTwoBytesZ res_conv_40_hu_conv = new TwoTuple_ThirtyTwoBytesThirtyTwoBytesZ(null, res_conv_40);
- if (res_conv_40_hu_conv != null) { res_conv_40_hu_conv.ptrs_to.AddLast(this); };
- res_conv_40_arr[o] = res_conv_40_hu_conv;
- }
- bindings.free_buffer(res);
- this.res = res_conv_40_arr;
- }
- }
-
- public class Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_Err : Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ {
- public readonly ProbingError err;
- internal Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- long err = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_get_err(ptr);
- org.ldk.structs.ProbingError err_hu_conv = org.ldk.structs.ProbingError.constr_from_ptr(err);
- if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
- this.err = err_hu_conv;
- }
- }
-
- /**
- * Creates a new CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ in the success state.
- */
- public static Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ ok(TwoTuple_ThirtyTwoBytesThirtyTwoBytesZ[] o) {
- long ret = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_ok(InternalUtils.encodeUint64Array(InternalUtils.mapArray(o, o_conv_40 => o_conv_40 != null ? o_conv_40.ptr : 0)));
- GC.KeepAlive(o);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ ret_hu_conv = Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ in the error state.
- */
- public static Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ err(org.ldk.structs.ProbingError e) {
- long ret = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_err(e.ptr);
- GC.KeepAlive(e);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ ret_hu_conv = Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ clone() {
- long ret = bindings.CResult_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ ret_hu_conv = Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
-}
-} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_CVec_CVec_u8ZZNoneZ : CommonBase {
- Result_CVec_CVec_u8ZZNoneZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_CVec_CVec_u8ZZNoneZ() {
- if (ptr != 0) { bindings.CResult_CVec_CVec_u8ZZNoneZ_free(ptr); }
- }
-
- internal static Result_CVec_CVec_u8ZZNoneZ constr_from_ptr(long ptr) {
- if (bindings.CResult_CVec_CVec_u8ZZNoneZ_is_ok(ptr)) {
- return new Result_CVec_CVec_u8ZZNoneZ_OK(null, ptr);
- } else {
- return new Result_CVec_CVec_u8ZZNoneZ_Err(null, ptr);
- }
- }
- public class Result_CVec_CVec_u8ZZNoneZ_OK : Result_CVec_CVec_u8ZZNoneZ {
- public readonly byte[][] res;
- internal Result_CVec_CVec_u8ZZNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- long res = bindings.CResult_CVec_CVec_u8ZZNoneZ_get_ok(ptr);
- int res_conv_8_len = InternalUtils.getArrayLength(res);
- byte[][] res_conv_8_arr = new byte[res_conv_8_len][];
- for (int i = 0; i < res_conv_8_len; i++) {
- long res_conv_8 = InternalUtils.getU64ArrayElem(res, i);
- byte[] res_conv_8_conv = InternalUtils.decodeUint8Array(res_conv_8);
- res_conv_8_arr[i] = res_conv_8_conv;
- }
- bindings.free_buffer(res);
- this.res = res_conv_8_arr;
- }
- }
-
- public class Result_CVec_CVec_u8ZZNoneZ_Err : Result_CVec_CVec_u8ZZNoneZ {
- internal Result_CVec_CVec_u8ZZNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- }
- }
-
- /**
- * Creates a new CResult_CVec_CVec_u8ZZNoneZ in the success state.
- */
- public static Result_CVec_CVec_u8ZZNoneZ ok(byte[][] o) {
- long ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_ok(InternalUtils.encodeUint64Array(InternalUtils.mapArray(o, o_conv_8 => InternalUtils.encodeUint8Array(o_conv_8))));
- GC.KeepAlive(o);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_CVec_CVec_u8ZZNoneZ in the error state.
- */
- public static Result_CVec_CVec_u8ZZNoneZ err() {
- long ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_err();
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new CResult_CVec_CVec_u8ZZNoneZ which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public Result_CVec_CVec_u8ZZNoneZ clone() {
- long ret = bindings.CResult_CVec_CVec_u8ZZNoneZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_CVec_u8ZZNoneZ ret_hu_conv = Result_CVec_CVec_u8ZZNoneZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_DelayedPaymentBasepointDecodeErrorZ : CommonBase {
+ Result_DelayedPaymentBasepointDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_DelayedPaymentBasepointDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_DelayedPaymentBasepointDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(ptr)) {
+ return new Result_DelayedPaymentBasepointDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_DelayedPaymentBasepointDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_DelayedPaymentBasepointDecodeErrorZ_OK : Result_DelayedPaymentBasepointDecodeErrorZ {
+ public readonly DelayedPaymentBasepoint res;
+ internal Result_DelayedPaymentBasepointDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.DelayedPaymentBasepoint res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.DelayedPaymentBasepoint(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_DelayedPaymentBasepointDecodeErrorZ_Err : Result_DelayedPaymentBasepointDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_DelayedPaymentBasepointDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_DelayedPaymentBasepointDecodeErrorZ in the success state.
+ */
+ public static Result_DelayedPaymentBasepointDecodeErrorZ ok(org.ldk.structs.DelayedPaymentBasepoint o) {
+ long ret = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentBasepointDecodeErrorZ ret_hu_conv = Result_DelayedPaymentBasepointDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_DelayedPaymentBasepointDecodeErrorZ in the error state.
+ */
+ public static Result_DelayedPaymentBasepointDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentBasepointDecodeErrorZ ret_hu_conv = Result_DelayedPaymentBasepointDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_DelayedPaymentBasepointDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_DelayedPaymentBasepointDecodeErrorZ clone() {
+ long ret = bindings.CResult_DelayedPaymentBasepointDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentBasepointDecodeErrorZ ret_hu_conv = Result_DelayedPaymentBasepointDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_DelayedPaymentKeyDecodeErrorZ : CommonBase {
+ Result_DelayedPaymentKeyDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_DelayedPaymentKeyDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_DelayedPaymentKeyDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_DelayedPaymentKeyDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(ptr)) {
+ return new Result_DelayedPaymentKeyDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_DelayedPaymentKeyDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_DelayedPaymentKeyDecodeErrorZ_OK : Result_DelayedPaymentKeyDecodeErrorZ {
+ public readonly DelayedPaymentKey res;
+ internal Result_DelayedPaymentKeyDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.DelayedPaymentKey res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.DelayedPaymentKey(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_DelayedPaymentKeyDecodeErrorZ_Err : Result_DelayedPaymentKeyDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_DelayedPaymentKeyDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_DelayedPaymentKeyDecodeErrorZ in the success state.
+ */
+ public static Result_DelayedPaymentKeyDecodeErrorZ ok(org.ldk.structs.DelayedPaymentKey o) {
+ long ret = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentKeyDecodeErrorZ ret_hu_conv = Result_DelayedPaymentKeyDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_DelayedPaymentKeyDecodeErrorZ in the error state.
+ */
+ public static Result_DelayedPaymentKeyDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentKeyDecodeErrorZ ret_hu_conv = Result_DelayedPaymentKeyDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_DelayedPaymentKeyDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_DelayedPaymentKeyDecodeErrorZ clone() {
+ long ret = bindings.CResult_DelayedPaymentKeyDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_DelayedPaymentKeyDecodeErrorZ ret_hu_conv = Result_DelayedPaymentKeyDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_FinalOnionHopDataDecodeErrorZ : CommonBase {
+ Result_FinalOnionHopDataDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_FinalOnionHopDataDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_FinalOnionHopDataDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_FinalOnionHopDataDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_FinalOnionHopDataDecodeErrorZ_is_ok(ptr)) {
+ return new Result_FinalOnionHopDataDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_FinalOnionHopDataDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_FinalOnionHopDataDecodeErrorZ_OK : Result_FinalOnionHopDataDecodeErrorZ {
+ public readonly FinalOnionHopData res;
+ internal Result_FinalOnionHopDataDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_FinalOnionHopDataDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.FinalOnionHopData res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.FinalOnionHopData(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_FinalOnionHopDataDecodeErrorZ_Err : Result_FinalOnionHopDataDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_FinalOnionHopDataDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_FinalOnionHopDataDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_FinalOnionHopDataDecodeErrorZ in the success state.
+ */
+ public static Result_FinalOnionHopDataDecodeErrorZ ok(org.ldk.structs.FinalOnionHopData o) {
+ long ret = bindings.CResult_FinalOnionHopDataDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_FinalOnionHopDataDecodeErrorZ ret_hu_conv = Result_FinalOnionHopDataDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_FinalOnionHopDataDecodeErrorZ in the error state.
+ */
+ public static Result_FinalOnionHopDataDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_FinalOnionHopDataDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_FinalOnionHopDataDecodeErrorZ ret_hu_conv = Result_FinalOnionHopDataDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_FinalOnionHopDataDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_FinalOnionHopDataDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_FinalOnionHopDataDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_FinalOnionHopDataDecodeErrorZ clone() {
+ long ret = bindings.CResult_FinalOnionHopDataDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_FinalOnionHopDataDecodeErrorZ ret_hu_conv = Result_FinalOnionHopDataDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_HtlcBasepointDecodeErrorZ : CommonBase {
+ Result_HtlcBasepointDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_HtlcBasepointDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_HtlcBasepointDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_HtlcBasepointDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_HtlcBasepointDecodeErrorZ_is_ok(ptr)) {
+ return new Result_HtlcBasepointDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_HtlcBasepointDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_HtlcBasepointDecodeErrorZ_OK : Result_HtlcBasepointDecodeErrorZ {
+ public readonly HtlcBasepoint res;
+ internal Result_HtlcBasepointDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_HtlcBasepointDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.HtlcBasepoint res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.HtlcBasepoint(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_HtlcBasepointDecodeErrorZ_Err : Result_HtlcBasepointDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_HtlcBasepointDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_HtlcBasepointDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_HtlcBasepointDecodeErrorZ in the success state.
+ */
+ public static Result_HtlcBasepointDecodeErrorZ ok(org.ldk.structs.HtlcBasepoint o) {
+ long ret = bindings.CResult_HtlcBasepointDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcBasepointDecodeErrorZ ret_hu_conv = Result_HtlcBasepointDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_HtlcBasepointDecodeErrorZ in the error state.
+ */
+ public static Result_HtlcBasepointDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_HtlcBasepointDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcBasepointDecodeErrorZ ret_hu_conv = Result_HtlcBasepointDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_HtlcBasepointDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_HtlcBasepointDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_HtlcBasepointDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_HtlcBasepointDecodeErrorZ clone() {
+ long ret = bindings.CResult_HtlcBasepointDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcBasepointDecodeErrorZ ret_hu_conv = Result_HtlcBasepointDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_HtlcKeyDecodeErrorZ : CommonBase {
+ Result_HtlcKeyDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_HtlcKeyDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_HtlcKeyDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_HtlcKeyDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_HtlcKeyDecodeErrorZ_is_ok(ptr)) {
+ return new Result_HtlcKeyDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_HtlcKeyDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_HtlcKeyDecodeErrorZ_OK : Result_HtlcKeyDecodeErrorZ {
+ public readonly HtlcKey res;
+ internal Result_HtlcKeyDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_HtlcKeyDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.HtlcKey res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.HtlcKey(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_HtlcKeyDecodeErrorZ_Err : Result_HtlcKeyDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_HtlcKeyDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_HtlcKeyDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_HtlcKeyDecodeErrorZ in the success state.
+ */
+ public static Result_HtlcKeyDecodeErrorZ ok(org.ldk.structs.HtlcKey o) {
+ long ret = bindings.CResult_HtlcKeyDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcKeyDecodeErrorZ ret_hu_conv = Result_HtlcKeyDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_HtlcKeyDecodeErrorZ in the error state.
+ */
+ public static Result_HtlcKeyDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_HtlcKeyDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcKeyDecodeErrorZ ret_hu_conv = Result_HtlcKeyDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_HtlcKeyDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_HtlcKeyDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_HtlcKeyDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_HtlcKeyDecodeErrorZ clone() {
+ long ret = bindings.CResult_HtlcKeyDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_HtlcKeyDecodeErrorZ ret_hu_conv = Result_HtlcKeyDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_NonePaymentErrorZ : CommonBase {
- Result_NonePaymentErrorZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_NonePaymentErrorZ() {
- if (ptr != 0) { bindings.CResult_NonePaymentErrorZ_free(ptr); }
- }
-
- internal static Result_NonePaymentErrorZ constr_from_ptr(long ptr) {
- if (bindings.CResult_NonePaymentErrorZ_is_ok(ptr)) {
- return new Result_NonePaymentErrorZ_OK(null, ptr);
- } else {
- return new Result_NonePaymentErrorZ_Err(null, ptr);
- }
- }
- public class Result_NonePaymentErrorZ_OK : Result_NonePaymentErrorZ {
- internal Result_NonePaymentErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- }
- }
-
- public class Result_NonePaymentErrorZ_Err : Result_NonePaymentErrorZ {
- public readonly PaymentError err;
- internal Result_NonePaymentErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- long err = bindings.CResult_NonePaymentErrorZ_get_err(ptr);
- org.ldk.structs.PaymentError err_hu_conv = org.ldk.structs.PaymentError.constr_from_ptr(err);
- if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
- this.err = err_hu_conv;
- }
- }
-
- /**
- * Creates a new CResult_NonePaymentErrorZ in the success state.
- */
- public static Result_NonePaymentErrorZ ok() {
- long ret = bindings.CResult_NonePaymentErrorZ_ok();
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NonePaymentErrorZ ret_hu_conv = Result_NonePaymentErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_NonePaymentErrorZ in the error state.
- */
- public static Result_NonePaymentErrorZ err(org.ldk.structs.PaymentError e) {
- long ret = bindings.CResult_NonePaymentErrorZ_err(e.ptr);
- GC.KeepAlive(e);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NonePaymentErrorZ ret_hu_conv = Result_NonePaymentErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_NonePaymentErrorZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.CResult_NonePaymentErrorZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new CResult_NonePaymentErrorZ which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public Result_NonePaymentErrorZ clone() {
- long ret = bindings.CResult_NonePaymentErrorZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NonePaymentErrorZ ret_hu_conv = Result_NonePaymentErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
-}
-} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_NoneSendErrorZ : CommonBase {
- Result_NoneSendErrorZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_NoneSendErrorZ() {
- if (ptr != 0) { bindings.CResult_NoneSendErrorZ_free(ptr); }
- }
-
- internal static Result_NoneSendErrorZ constr_from_ptr(long ptr) {
- if (bindings.CResult_NoneSendErrorZ_is_ok(ptr)) {
- return new Result_NoneSendErrorZ_OK(null, ptr);
- } else {
- return new Result_NoneSendErrorZ_Err(null, ptr);
- }
- }
- public class Result_NoneSendErrorZ_OK : Result_NoneSendErrorZ {
- internal Result_NoneSendErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- }
- }
-
- public class Result_NoneSendErrorZ_Err : Result_NoneSendErrorZ {
- public readonly SendError err;
- internal Result_NoneSendErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- long err = bindings.CResult_NoneSendErrorZ_get_err(ptr);
- org.ldk.structs.SendError err_hu_conv = org.ldk.structs.SendError.constr_from_ptr(err);
- if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
- this.err = err_hu_conv;
- }
- }
-
- /**
- * Creates a new CResult_NoneSendErrorZ in the success state.
- */
- public static Result_NoneSendErrorZ ok() {
- long ret = bindings.CResult_NoneSendErrorZ_ok();
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NoneSendErrorZ ret_hu_conv = Result_NoneSendErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_NoneSendErrorZ in the error state.
- */
- public static Result_NoneSendErrorZ err(org.ldk.structs.SendError e) {
- long ret = bindings.CResult_NoneSendErrorZ_err(e.ptr);
- GC.KeepAlive(e);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NoneSendErrorZ ret_hu_conv = Result_NoneSendErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_NoneSendErrorZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_OnionPacketDecodeErrorZ : CommonBase {
+ Result_OnionPacketDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_OnionPacketDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_OnionPacketDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_OnionPacketDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_OnionPacketDecodeErrorZ_is_ok(ptr)) {
+ return new Result_OnionPacketDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_OnionPacketDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_OnionPacketDecodeErrorZ_OK : Result_OnionPacketDecodeErrorZ {
+ public readonly OnionPacket res;
+ internal Result_OnionPacketDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_OnionPacketDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.OnionPacket res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.OnionPacket(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_OnionPacketDecodeErrorZ_Err : Result_OnionPacketDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_OnionPacketDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_OnionPacketDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_OnionPacketDecodeErrorZ in the success state.
+ */
+ public static Result_OnionPacketDecodeErrorZ ok(org.ldk.structs.OnionPacket o) {
+ long ret = bindings.CResult_OnionPacketDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_OnionPacketDecodeErrorZ ret_hu_conv = Result_OnionPacketDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_OnionPacketDecodeErrorZ in the error state.
+ */
+ public static Result_OnionPacketDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_OnionPacketDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_OnionPacketDecodeErrorZ ret_hu_conv = Result_OnionPacketDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_OnionPacketDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_OnionPacketDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_OnionPacketDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_OnionPacketDecodeErrorZ clone() {
+ long ret = bindings.CResult_OnionPacketDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_OnionPacketDecodeErrorZ ret_hu_conv = Result_OnionPacketDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_PendingHTLCInfoDecodeErrorZ : CommonBase {
+ Result_PendingHTLCInfoDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_PendingHTLCInfoDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_PendingHTLCInfoDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_PendingHTLCInfoDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_PendingHTLCInfoDecodeErrorZ_is_ok(ptr)) {
+ return new Result_PendingHTLCInfoDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_PendingHTLCInfoDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_PendingHTLCInfoDecodeErrorZ_OK : Result_PendingHTLCInfoDecodeErrorZ {
+ public readonly PendingHTLCInfo res;
+ internal Result_PendingHTLCInfoDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_PendingHTLCInfoDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.PendingHTLCInfo res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.PendingHTLCInfo(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_PendingHTLCInfoDecodeErrorZ_Err : Result_PendingHTLCInfoDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_PendingHTLCInfoDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_PendingHTLCInfoDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCInfoDecodeErrorZ in the success state.
+ */
+ public static Result_PendingHTLCInfoDecodeErrorZ ok(org.ldk.structs.PendingHTLCInfo o) {
+ long ret = bindings.CResult_PendingHTLCInfoDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoDecodeErrorZ ret_hu_conv = Result_PendingHTLCInfoDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCInfoDecodeErrorZ in the error state.
+ */
+ public static Result_PendingHTLCInfoDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_PendingHTLCInfoDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoDecodeErrorZ ret_hu_conv = Result_PendingHTLCInfoDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_PendingHTLCInfoDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_PendingHTLCInfoDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCInfoDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_PendingHTLCInfoDecodeErrorZ clone() {
+ long ret = bindings.CResult_PendingHTLCInfoDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoDecodeErrorZ ret_hu_conv = Result_PendingHTLCInfoDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_PendingHTLCInfoInboundHTLCErrZ : CommonBase {
+ Result_PendingHTLCInfoInboundHTLCErrZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_PendingHTLCInfoInboundHTLCErrZ() {
+ if (ptr != 0) { bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_free(ptr); }
+ }
+
+ internal static Result_PendingHTLCInfoInboundHTLCErrZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(ptr)) {
+ return new Result_PendingHTLCInfoInboundHTLCErrZ_OK(null, ptr);
+ } else {
+ return new Result_PendingHTLCInfoInboundHTLCErrZ_Err(null, ptr);
+ }
+ }
+ public class Result_PendingHTLCInfoInboundHTLCErrZ_OK : Result_PendingHTLCInfoInboundHTLCErrZ {
+ public readonly PendingHTLCInfo res;
+ internal Result_PendingHTLCInfoInboundHTLCErrZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_get_ok(ptr);
+ org.ldk.structs.PendingHTLCInfo res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.PendingHTLCInfo(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_PendingHTLCInfoInboundHTLCErrZ_Err : Result_PendingHTLCInfoInboundHTLCErrZ {
+ public readonly InboundHTLCErr err;
+ internal Result_PendingHTLCInfoInboundHTLCErrZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_get_err(ptr);
+ org.ldk.structs.InboundHTLCErr err_hu_conv = null; if (err < 0 || err > 4096) { err_hu_conv = new org.ldk.structs.InboundHTLCErr(null, err); }
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCInfoInboundHTLCErrZ in the success state.
+ */
+ public static Result_PendingHTLCInfoInboundHTLCErrZ ok(org.ldk.structs.PendingHTLCInfo o) {
+ long ret = bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoInboundHTLCErrZ ret_hu_conv = Result_PendingHTLCInfoInboundHTLCErrZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCInfoInboundHTLCErrZ in the error state.
+ */
+ public static Result_PendingHTLCInfoInboundHTLCErrZ err(short e_err_code_arg, byte[] e_err_data_arg, string e_msg_arg) {
+ long ret = bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_err(bindings.InboundHTLCErr_new(e_err_code_arg, InternalUtils.encodeUint8Array(e_err_data_arg), InternalUtils.encodeString(e_msg_arg)));
+ GC.KeepAlive(e_err_code_arg);
+ GC.KeepAlive(e_err_data_arg);
+ GC.KeepAlive(e_msg_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoInboundHTLCErrZ ret_hu_conv = Result_PendingHTLCInfoInboundHTLCErrZ.constr_from_ptr(ret);
+ ;
+ ;
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_PendingHTLCInfoInboundHTLCErrZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_PendingHTLCRoutingDecodeErrorZ : CommonBase {
+ Result_PendingHTLCRoutingDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_PendingHTLCRoutingDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_PendingHTLCRoutingDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_PendingHTLCRoutingDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(ptr)) {
+ return new Result_PendingHTLCRoutingDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_PendingHTLCRoutingDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_PendingHTLCRoutingDecodeErrorZ_OK : Result_PendingHTLCRoutingDecodeErrorZ {
+ public readonly PendingHTLCRouting res;
+ internal Result_PendingHTLCRoutingDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.PendingHTLCRouting res_hu_conv = org.ldk.structs.PendingHTLCRouting.constr_from_ptr(res);
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_PendingHTLCRoutingDecodeErrorZ_Err : Result_PendingHTLCRoutingDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_PendingHTLCRoutingDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCRoutingDecodeErrorZ in the success state.
+ */
+ public static Result_PendingHTLCRoutingDecodeErrorZ ok(org.ldk.structs.PendingHTLCRouting o) {
+ long ret = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_ok(o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCRoutingDecodeErrorZ ret_hu_conv = Result_PendingHTLCRoutingDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCRoutingDecodeErrorZ in the error state.
+ */
+ public static Result_PendingHTLCRoutingDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCRoutingDecodeErrorZ ret_hu_conv = Result_PendingHTLCRoutingDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_PendingHTLCRoutingDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_PendingHTLCRoutingDecodeErrorZ clone() {
+ long ret = bindings.CResult_PendingHTLCRoutingDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCRoutingDecodeErrorZ ret_hu_conv = Result_PendingHTLCRoutingDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_ReceiveTlvsDecodeErrorZ : CommonBase {
- Result_ReceiveTlvsDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_ReceiveTlvsDecodeErrorZ() {
- if (ptr != 0) { bindings.CResult_ReceiveTlvsDecodeErrorZ_free(ptr); }
- }
-
- internal static Result_ReceiveTlvsDecodeErrorZ constr_from_ptr(long ptr) {
- if (bindings.CResult_ReceiveTlvsDecodeErrorZ_is_ok(ptr)) {
- return new Result_ReceiveTlvsDecodeErrorZ_OK(null, ptr);
- } else {
- return new Result_ReceiveTlvsDecodeErrorZ_Err(null, ptr);
- }
- }
- public class Result_ReceiveTlvsDecodeErrorZ_OK : Result_ReceiveTlvsDecodeErrorZ {
- public readonly ReceiveTlvs res;
- internal Result_ReceiveTlvsDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- long res = bindings.CResult_ReceiveTlvsDecodeErrorZ_get_ok(ptr);
- org.ldk.structs.ReceiveTlvs res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.ReceiveTlvs(null, res); }
- if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
- this.res = res_hu_conv;
- }
- }
-
- public class Result_ReceiveTlvsDecodeErrorZ_Err : Result_ReceiveTlvsDecodeErrorZ {
- public readonly DecodeError err;
- internal Result_ReceiveTlvsDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- long err = bindings.CResult_ReceiveTlvsDecodeErrorZ_get_err(ptr);
- org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
- if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
- this.err = err_hu_conv;
- }
- }
-
- /**
- * Creates a new CResult_ReceiveTlvsDecodeErrorZ in the success state.
- */
- public static Result_ReceiveTlvsDecodeErrorZ ok(org.ldk.structs.ReceiveTlvs o) {
- long ret = bindings.CResult_ReceiveTlvsDecodeErrorZ_ok(o == null ? 0 : o.ptr);
- GC.KeepAlive(o);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ReceiveTlvsDecodeErrorZ ret_hu_conv = Result_ReceiveTlvsDecodeErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_ReceiveTlvsDecodeErrorZ in the error state.
- */
- public static Result_ReceiveTlvsDecodeErrorZ err(org.ldk.structs.DecodeError e) {
- long ret = bindings.CResult_ReceiveTlvsDecodeErrorZ_err(e.ptr);
- GC.KeepAlive(e);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ReceiveTlvsDecodeErrorZ ret_hu_conv = Result_ReceiveTlvsDecodeErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_ReceiveTlvsDecodeErrorZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.CResult_ReceiveTlvsDecodeErrorZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new CResult_ReceiveTlvsDecodeErrorZ which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public Result_ReceiveTlvsDecodeErrorZ clone() {
- long ret = bindings.CResult_ReceiveTlvsDecodeErrorZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ReceiveTlvsDecodeErrorZ ret_hu_conv = Result_ReceiveTlvsDecodeErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_RevocationBasepointDecodeErrorZ : CommonBase {
+ Result_RevocationBasepointDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_RevocationBasepointDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_RevocationBasepointDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_RevocationBasepointDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_RevocationBasepointDecodeErrorZ_is_ok(ptr)) {
+ return new Result_RevocationBasepointDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_RevocationBasepointDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_RevocationBasepointDecodeErrorZ_OK : Result_RevocationBasepointDecodeErrorZ {
+ public readonly RevocationBasepoint res;
+ internal Result_RevocationBasepointDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_RevocationBasepointDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.RevocationBasepoint res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.RevocationBasepoint(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_RevocationBasepointDecodeErrorZ_Err : Result_RevocationBasepointDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_RevocationBasepointDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_RevocationBasepointDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_RevocationBasepointDecodeErrorZ in the success state.
+ */
+ public static Result_RevocationBasepointDecodeErrorZ ok(org.ldk.structs.RevocationBasepoint o) {
+ long ret = bindings.CResult_RevocationBasepointDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationBasepointDecodeErrorZ ret_hu_conv = Result_RevocationBasepointDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_RevocationBasepointDecodeErrorZ in the error state.
+ */
+ public static Result_RevocationBasepointDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_RevocationBasepointDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationBasepointDecodeErrorZ ret_hu_conv = Result_RevocationBasepointDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_RevocationBasepointDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_RevocationBasepointDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_RevocationBasepointDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_RevocationBasepointDecodeErrorZ clone() {
+ long ret = bindings.CResult_RevocationBasepointDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationBasepointDecodeErrorZ ret_hu_conv = Result_RevocationBasepointDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_RevocationKeyDecodeErrorZ : CommonBase {
+ Result_RevocationKeyDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_RevocationKeyDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_RevocationKeyDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_RevocationKeyDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_RevocationKeyDecodeErrorZ_is_ok(ptr)) {
+ return new Result_RevocationKeyDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_RevocationKeyDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_RevocationKeyDecodeErrorZ_OK : Result_RevocationKeyDecodeErrorZ {
+ public readonly RevocationKey res;
+ internal Result_RevocationKeyDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_RevocationKeyDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.RevocationKey res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.RevocationKey(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_RevocationKeyDecodeErrorZ_Err : Result_RevocationKeyDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_RevocationKeyDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_RevocationKeyDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_RevocationKeyDecodeErrorZ in the success state.
+ */
+ public static Result_RevocationKeyDecodeErrorZ ok(org.ldk.structs.RevocationKey o) {
+ long ret = bindings.CResult_RevocationKeyDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationKeyDecodeErrorZ ret_hu_conv = Result_RevocationKeyDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_RevocationKeyDecodeErrorZ in the error state.
+ */
+ public static Result_RevocationKeyDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_RevocationKeyDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationKeyDecodeErrorZ ret_hu_conv = Result_RevocationKeyDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_RevocationKeyDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_RevocationKeyDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_RevocationKeyDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_RevocationKeyDecodeErrorZ clone() {
+ long ret = bindings.CResult_RevocationKeyDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationKeyDecodeErrorZ ret_hu_conv = Result_RevocationKeyDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_SendSuccessSendErrorZ : CommonBase {
+ Result_SendSuccessSendErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_SendSuccessSendErrorZ() {
+ if (ptr != 0) { bindings.CResult_SendSuccessSendErrorZ_free(ptr); }
+ }
+
+ internal static Result_SendSuccessSendErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_SendSuccessSendErrorZ_is_ok(ptr)) {
+ return new Result_SendSuccessSendErrorZ_OK(null, ptr);
+ } else {
+ return new Result_SendSuccessSendErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_SendSuccessSendErrorZ_OK : Result_SendSuccessSendErrorZ {
+ public readonly SendSuccess res;
+ internal Result_SendSuccessSendErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_SendSuccessSendErrorZ_get_ok(ptr);
+ org.ldk.structs.SendSuccess res_hu_conv = org.ldk.structs.SendSuccess.constr_from_ptr(res);
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_SendSuccessSendErrorZ_Err : Result_SendSuccessSendErrorZ {
+ public readonly SendError err;
+ internal Result_SendSuccessSendErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_SendSuccessSendErrorZ_get_err(ptr);
+ org.ldk.structs.SendError err_hu_conv = org.ldk.structs.SendError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_SendSuccessSendErrorZ in the success state.
+ */
+ public static Result_SendSuccessSendErrorZ ok(org.ldk.structs.SendSuccess o) {
+ long ret = bindings.CResult_SendSuccessSendErrorZ_ok(o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SendSuccessSendErrorZ ret_hu_conv = Result_SendSuccessSendErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_SendSuccessSendErrorZ in the error state.
+ */
+ public static Result_SendSuccessSendErrorZ err(org.ldk.structs.SendError e) {
+ long ret = bindings.CResult_SendSuccessSendErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SendSuccessSendErrorZ ret_hu_conv = Result_SendSuccessSendErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_SendSuccessSendErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_SpliceAckDecodeErrorZ : CommonBase {
+ Result_SpliceAckDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_SpliceAckDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_SpliceAckDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_SpliceAckDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_SpliceAckDecodeErrorZ_is_ok(ptr)) {
+ return new Result_SpliceAckDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_SpliceAckDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_SpliceAckDecodeErrorZ_OK : Result_SpliceAckDecodeErrorZ {
+ public readonly SpliceAck res;
+ internal Result_SpliceAckDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_SpliceAckDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.SpliceAck res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.SpliceAck(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_SpliceAckDecodeErrorZ_Err : Result_SpliceAckDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_SpliceAckDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_SpliceAckDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_SpliceAckDecodeErrorZ in the success state.
+ */
+ public static Result_SpliceAckDecodeErrorZ ok(org.ldk.structs.SpliceAck o) {
+ long ret = bindings.CResult_SpliceAckDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceAckDecodeErrorZ ret_hu_conv = Result_SpliceAckDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_SpliceAckDecodeErrorZ in the error state.
+ */
+ public static Result_SpliceAckDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_SpliceAckDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceAckDecodeErrorZ ret_hu_conv = Result_SpliceAckDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_SpliceAckDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_SpliceAckDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_SpliceAckDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_SpliceAckDecodeErrorZ clone() {
+ long ret = bindings.CResult_SpliceAckDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceAckDecodeErrorZ ret_hu_conv = Result_SpliceAckDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_SpliceDecodeErrorZ : CommonBase {
+ Result_SpliceDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_SpliceDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_SpliceDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_SpliceDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_SpliceDecodeErrorZ_is_ok(ptr)) {
+ return new Result_SpliceDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_SpliceDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_SpliceDecodeErrorZ_OK : Result_SpliceDecodeErrorZ {
+ public readonly Splice res;
+ internal Result_SpliceDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_SpliceDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.Splice res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.Splice(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_SpliceDecodeErrorZ_Err : Result_SpliceDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_SpliceDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_SpliceDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_SpliceDecodeErrorZ in the success state.
+ */
+ public static Result_SpliceDecodeErrorZ ok(org.ldk.structs.Splice o) {
+ long ret = bindings.CResult_SpliceDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceDecodeErrorZ ret_hu_conv = Result_SpliceDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_SpliceDecodeErrorZ in the error state.
+ */
+ public static Result_SpliceDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_SpliceDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceDecodeErrorZ ret_hu_conv = Result_SpliceDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_SpliceDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_SpliceDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_SpliceDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_SpliceDecodeErrorZ clone() {
+ long ret = bindings.CResult_SpliceDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceDecodeErrorZ ret_hu_conv = Result_SpliceDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_SpliceLockedDecodeErrorZ : CommonBase {
+ Result_SpliceLockedDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_SpliceLockedDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_SpliceLockedDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_SpliceLockedDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_SpliceLockedDecodeErrorZ_is_ok(ptr)) {
+ return new Result_SpliceLockedDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_SpliceLockedDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_SpliceLockedDecodeErrorZ_OK : Result_SpliceLockedDecodeErrorZ {
+ public readonly SpliceLocked res;
+ internal Result_SpliceLockedDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_SpliceLockedDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.SpliceLocked res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.SpliceLocked(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_SpliceLockedDecodeErrorZ_Err : Result_SpliceLockedDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_SpliceLockedDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_SpliceLockedDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_SpliceLockedDecodeErrorZ in the success state.
+ */
+ public static Result_SpliceLockedDecodeErrorZ ok(org.ldk.structs.SpliceLocked o) {
+ long ret = bindings.CResult_SpliceLockedDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceLockedDecodeErrorZ ret_hu_conv = Result_SpliceLockedDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_SpliceLockedDecodeErrorZ in the error state.
+ */
+ public static Result_SpliceLockedDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_SpliceLockedDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceLockedDecodeErrorZ ret_hu_conv = Result_SpliceLockedDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_SpliceLockedDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_SpliceLockedDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_SpliceLockedDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_SpliceLockedDecodeErrorZ clone() {
+ long ret = bindings.CResult_SpliceLockedDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceLockedDecodeErrorZ ret_hu_conv = Result_SpliceLockedDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_StfuDecodeErrorZ : CommonBase {
+ Result_StfuDecodeErrorZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_StfuDecodeErrorZ() {
+ if (ptr != 0) { bindings.CResult_StfuDecodeErrorZ_free(ptr); }
+ }
+
+ internal static Result_StfuDecodeErrorZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_StfuDecodeErrorZ_is_ok(ptr)) {
+ return new Result_StfuDecodeErrorZ_OK(null, ptr);
+ } else {
+ return new Result_StfuDecodeErrorZ_Err(null, ptr);
+ }
+ }
+ public class Result_StfuDecodeErrorZ_OK : Result_StfuDecodeErrorZ {
+ public readonly Stfu res;
+ internal Result_StfuDecodeErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_StfuDecodeErrorZ_get_ok(ptr);
+ org.ldk.structs.Stfu res_hu_conv = null; if (res < 0 || res > 4096) { res_hu_conv = new org.ldk.structs.Stfu(null, res); }
+ if (res_hu_conv != null) { res_hu_conv.ptrs_to.AddLast(this); };
+ this.res = res_hu_conv;
+ }
+ }
+
+ public class Result_StfuDecodeErrorZ_Err : Result_StfuDecodeErrorZ {
+ public readonly DecodeError err;
+ internal Result_StfuDecodeErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ long err = bindings.CResult_StfuDecodeErrorZ_get_err(ptr);
+ org.ldk.structs.DecodeError err_hu_conv = org.ldk.structs.DecodeError.constr_from_ptr(err);
+ if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
+ this.err = err_hu_conv;
+ }
+ }
+
+ /**
+ * Creates a new CResult_StfuDecodeErrorZ in the success state.
+ */
+ public static Result_StfuDecodeErrorZ ok(org.ldk.structs.Stfu o) {
+ long ret = bindings.CResult_StfuDecodeErrorZ_ok(o == null ? 0 : o.ptr);
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_StfuDecodeErrorZ ret_hu_conv = Result_StfuDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(o); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_StfuDecodeErrorZ in the error state.
+ */
+ public static Result_StfuDecodeErrorZ err(org.ldk.structs.DecodeError e) {
+ long ret = bindings.CResult_StfuDecodeErrorZ_err(e.ptr);
+ GC.KeepAlive(e);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_StfuDecodeErrorZ ret_hu_conv = Result_StfuDecodeErrorZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_StfuDecodeErrorZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_StfuDecodeErrorZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_StfuDecodeErrorZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_StfuDecodeErrorZ clone() {
+ long ret = bindings.CResult_StfuDecodeErrorZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_StfuDecodeErrorZ ret_hu_conv = Result_StfuDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-public class Result_ThirtyTwoBytesPaymentErrorZ : CommonBase {
- Result_ThirtyTwoBytesPaymentErrorZ(object _dummy, long ptr) : base(ptr) { }
- ~Result_ThirtyTwoBytesPaymentErrorZ() {
- if (ptr != 0) { bindings.CResult_ThirtyTwoBytesPaymentErrorZ_free(ptr); }
- }
-
- internal static Result_ThirtyTwoBytesPaymentErrorZ constr_from_ptr(long ptr) {
- if (bindings.CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(ptr)) {
- return new Result_ThirtyTwoBytesPaymentErrorZ_OK(null, ptr);
- } else {
- return new Result_ThirtyTwoBytesPaymentErrorZ_Err(null, ptr);
- }
- }
- public class Result_ThirtyTwoBytesPaymentErrorZ_OK : Result_ThirtyTwoBytesPaymentErrorZ {
- public readonly byte[] res;
- internal Result_ThirtyTwoBytesPaymentErrorZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
- long res = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_get_ok(ptr);
- byte[] res_conv = InternalUtils.decodeUint8Array(res);
- this.res = res_conv;
- }
- }
-
- public class Result_ThirtyTwoBytesPaymentErrorZ_Err : Result_ThirtyTwoBytesPaymentErrorZ {
- public readonly PaymentError err;
- internal Result_ThirtyTwoBytesPaymentErrorZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
- long err = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_get_err(ptr);
- org.ldk.structs.PaymentError err_hu_conv = org.ldk.structs.PaymentError.constr_from_ptr(err);
- if (err_hu_conv != null) { err_hu_conv.ptrs_to.AddLast(this); };
- this.err = err_hu_conv;
- }
- }
-
- /**
- * Creates a new CResult_ThirtyTwoBytesPaymentErrorZ in the success state.
- */
- public static Result_ThirtyTwoBytesPaymentErrorZ ok(byte[] o) {
- long ret = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_ok(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(o, 32)));
- GC.KeepAlive(o);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ThirtyTwoBytesPaymentErrorZ ret_hu_conv = Result_ThirtyTwoBytesPaymentErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
- /**
- * Creates a new CResult_ThirtyTwoBytesPaymentErrorZ in the error state.
- */
- public static Result_ThirtyTwoBytesPaymentErrorZ err(org.ldk.structs.PaymentError e) {
- long ret = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_err(e.ptr);
- GC.KeepAlive(e);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ThirtyTwoBytesPaymentErrorZ ret_hu_conv = Result_ThirtyTwoBytesPaymentErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(e); };
- return ret_hu_conv;
- }
-
- /**
- * Checks if the given object is currently in the success state
- */
- public bool is_ok() {
- bool ret = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_is_ok(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new CResult_ThirtyTwoBytesPaymentErrorZ which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public Result_ThirtyTwoBytesPaymentErrorZ clone() {
- long ret = bindings.CResult_ThirtyTwoBytesPaymentErrorZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ThirtyTwoBytesPaymentErrorZ ret_hu_conv = Result_ThirtyTwoBytesPaymentErrorZ.constr_from_ptr(ret);
- return ret_hu_conv;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class Result_WitnessNoneZ : CommonBase {
+ Result_WitnessNoneZ(object _dummy, long ptr) : base(ptr) { }
+ ~Result_WitnessNoneZ() {
+ if (ptr != 0) { bindings.CResult_WitnessNoneZ_free(ptr); }
+ }
+
+ internal static Result_WitnessNoneZ constr_from_ptr(long ptr) {
+ if (bindings.CResult_WitnessNoneZ_is_ok(ptr)) {
+ return new Result_WitnessNoneZ_OK(null, ptr);
+ } else {
+ return new Result_WitnessNoneZ_Err(null, ptr);
+ }
+ }
+ public class Result_WitnessNoneZ_OK : Result_WitnessNoneZ {
+ public readonly byte[] res;
+ internal Result_WitnessNoneZ_OK(object _dummy, long ptr) : base(_dummy, ptr) {
+ long res = bindings.CResult_WitnessNoneZ_get_ok(ptr);
+ byte[] res_conv = InternalUtils.decodeUint8Array(res);
+ this.res = res_conv;
+ }
+ }
+
+ public class Result_WitnessNoneZ_Err : Result_WitnessNoneZ {
+ internal Result_WitnessNoneZ_Err(object _dummy, long ptr) : base(_dummy, ptr) {
+ }
+ }
+
+ /**
+ * Creates a new CResult_WitnessNoneZ in the success state.
+ */
+ public static Result_WitnessNoneZ ok(byte[] o) {
+ long ret = bindings.CResult_WitnessNoneZ_ok(InternalUtils.encodeUint8Array(o));
+ GC.KeepAlive(o);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_WitnessNoneZ ret_hu_conv = Result_WitnessNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new CResult_WitnessNoneZ in the error state.
+ */
+ public static Result_WitnessNoneZ err() {
+ long ret = bindings.CResult_WitnessNoneZ_err();
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_WitnessNoneZ ret_hu_conv = Result_WitnessNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if the given object is currently in the success state
+ */
+ public bool is_ok() {
+ bool ret = bindings.CResult_WitnessNoneZ_is_ok(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.CResult_WitnessNoneZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new CResult_WitnessNoneZ which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public Result_WitnessNoneZ clone() {
+ long ret = bindings.CResult_WitnessNoneZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_WitnessNoneZ ret_hu_conv = Result_WitnessNoneZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * Master key used in conjunction with per_commitment_point to generate [htlcpubkey](https://github.com/lightning/bolts/blob/master/03-transactions.md#key-derivation) for the latest state of a channel.
+ * A watcher can be given a [RevocationBasepoint] to generate per commitment [RevocationKey] to create justice transactions.
+ */
+public class RevocationBasepoint : CommonBase {
+ internal RevocationBasepoint(object _dummy, long ptr) : base(ptr) { }
+ ~RevocationBasepoint() {
+ if (ptr != 0) { bindings.RevocationBasepoint_free(ptr); }
+ }
+
+ public byte[] get_a() {
+ long ret = bindings.RevocationBasepoint_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ public void set_a(byte[] val) {
+ bindings.RevocationBasepoint_set_a(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new RevocationBasepoint given each field
+ */
+ public static RevocationBasepoint of(byte[] a_arg) {
+ long ret = bindings.RevocationBasepoint_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a_arg, 33)));
+ GC.KeepAlive(a_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RevocationBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two RevocationBasepoints contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.RevocationBasepoint b) {
+ bool ret = bindings.RevocationBasepoint_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is RevocationBasepoint)) return false;
+ return this.eq((RevocationBasepoint)o);
+ }
+ internal long clone_ptr() {
+ long ret = bindings.RevocationBasepoint_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the RevocationBasepoint
+ */
+ public RevocationBasepoint clone() {
+ long ret = bindings.RevocationBasepoint_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RevocationBasepoint ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationBasepoint(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Generates a non-cryptographic 64-bit hash of the RevocationBasepoint.
+ */
+ public long hash() {
+ long ret = bindings.RevocationBasepoint_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
+ /**
+ * Get inner Public Key
+ */
+ public byte[] to_public_key() {
+ long ret = bindings.RevocationBasepoint_to_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Serialize the RevocationBasepoint object into a byte array which can be read by RevocationBasepoint_read
+ */
+ public byte[] write() {
+ long ret = bindings.RevocationBasepoint_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a RevocationBasepoint from a byte array, created by RevocationBasepoint_write
+ */
+ public static Result_RevocationBasepointDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.RevocationBasepoint_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationBasepointDecodeErrorZ ret_hu_conv = Result_RevocationBasepointDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * The revocation key is used to allow a channel party to revoke their state - giving their
+ * counterparty the required material to claim all of their funds if they broadcast that state.
+ *
+ * Each commitment transaction has a revocation key based on the basepoint and
+ * per_commitment_point which is used in both commitment and HTLC transactions.
+ *
+ * See [the BOLT spec for derivation details]
+ * (https://github.com/lightning/bolts/blob/master/03-transactions.md#revocationpubkey-derivation)
+ */
+public class RevocationKey : CommonBase {
+ internal RevocationKey(object _dummy, long ptr) : base(ptr) { }
+ ~RevocationKey() {
+ if (ptr != 0) { bindings.RevocationKey_free(ptr); }
+ }
+
+ public byte[] get_a() {
+ long ret = bindings.RevocationKey_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ public void set_a(byte[] val) {
+ bindings.RevocationKey_set_a(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new RevocationKey given each field
+ */
+ public static RevocationKey of(byte[] a_arg) {
+ long ret = bindings.RevocationKey_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a_arg, 33)));
+ GC.KeepAlive(a_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RevocationKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two RevocationKeys contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.RevocationKey b) {
+ bool ret = bindings.RevocationKey_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is RevocationKey)) return false;
+ return this.eq((RevocationKey)o);
+ }
+ internal long clone_ptr() {
+ long ret = bindings.RevocationKey_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the RevocationKey
+ */
+ public RevocationKey clone() {
+ long ret = bindings.RevocationKey_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RevocationKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Generates a non-cryptographic 64-bit hash of the RevocationKey.
+ */
+ public long hash() {
+ long ret = bindings.RevocationKey_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
+ /**
+ * Derives a per-commitment-transaction revocation public key from one party's per-commitment
+ * point and the other party's [`RevocationBasepoint`]. This is the public equivalent of
+ * [`chan_utils::derive_private_revocation_key`] - using only public keys to derive a public
+ * key instead of private keys.
+ *
+ * Note that this is infallible iff we trust that at least one of the two input keys are randomly
+ * generated (ie our own).
+ *
+ * [`chan_utils::derive_private_revocation_key`]: crate::ln::chan_utils::derive_private_revocation_key
+ */
+ public static RevocationKey from_basepoint(org.ldk.structs.RevocationBasepoint countersignatory_basepoint, byte[] per_commitment_point) {
+ long ret = bindings.RevocationKey_from_basepoint(countersignatory_basepoint == null ? 0 : countersignatory_basepoint.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)));
+ GC.KeepAlive(countersignatory_basepoint);
+ GC.KeepAlive(per_commitment_point);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RevocationKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(countersignatory_basepoint); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Get inner Public Key
+ */
+ public byte[] to_public_key() {
+ long ret = bindings.RevocationKey_to_public_key(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Serialize the RevocationKey object into a byte array which can be read by RevocationKey_read
+ */
+ public byte[] write() {
+ long ret = bindings.RevocationKey_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a RevocationKey from a byte array, created by RevocationKey_write
+ */
+ public static Result_RevocationKeyDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.RevocationKey_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_RevocationKeyDecodeErrorZ ret_hu_conv = Result_RevocationKeyDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the RevokeAndACK.
+ */
+ public long hash() {
+ long ret = bindings.RevokeAndACK_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two RevokeAndACKs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
/**
* A channel descriptor for a hop along a payment path.
+ *
+ * While this generally comes from BOLT 11's `r` field, this struct includes more fields than are
+ * available in BOLT 11. Thus, encoding and decoding this via `lightning-invoice` is lossy, as
+ * fields not supported in BOLT 11 will be stripped.
*/
public class RouteHintHop : CommonBase {
internal RouteHintHop(object _dummy, long ptr) : base(ptr) { }
* Note that first_hops (or a relevant inner pointer) may be NULL or all-0s to represent None
*/
Result_RouteLightningErrorZ find_route_with_id(byte[] payer, RouteParameters route_params, ChannelDetails[] first_hops, InFlightHtlcs inflight_htlcs, byte[] _payment_hash, byte[] _payment_id);
+ /**Creates [`BlindedPath`]s for payment to the `recipient` node. The channels in `first_hops`
+ * are assumed to be with the `recipient`'s peers. The payment secret and any constraints are
+ * given in `tlvs`.
+ */
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ create_blinded_payment_paths(byte[] recipient, ChannelDetails[] first_hops, ReceiveTlvs tlvs, long amount_msats);
}
/**
long result = ret == null ? 0 : ret.clone_ptr();
return result;
}
+ public long create_blinded_payment_paths(long _recipient, long _first_hops, long _tlvs, long _amount_msats) {
+ byte[] _recipient_conv = InternalUtils.decodeUint8Array(_recipient);
+ int _first_hops_conv_16_len = InternalUtils.getArrayLength(_first_hops);
+ ChannelDetails[] _first_hops_conv_16_arr = new ChannelDetails[_first_hops_conv_16_len];
+ for (int q = 0; q < _first_hops_conv_16_len; q++) {
+ long _first_hops_conv_16 = InternalUtils.getU64ArrayElem(_first_hops, q);
+ org.ldk.structs.ChannelDetails _first_hops_conv_16_hu_conv = null; if (_first_hops_conv_16 < 0 || _first_hops_conv_16 > 4096) { _first_hops_conv_16_hu_conv = new org.ldk.structs.ChannelDetails(null, _first_hops_conv_16); }
+ if (_first_hops_conv_16_hu_conv != null) { _first_hops_conv_16_hu_conv.ptrs_to.AddLast(this); };
+ _first_hops_conv_16_arr[q] = _first_hops_conv_16_hu_conv;
+ }
+ bindings.free_buffer(_first_hops);
+ org.ldk.structs.ReceiveTlvs _tlvs_hu_conv = null; if (_tlvs < 0 || _tlvs > 4096) { _tlvs_hu_conv = new org.ldk.structs.ReceiveTlvs(null, _tlvs); }
+ if (_tlvs_hu_conv != null) { _tlvs_hu_conv.ptrs_to.AddLast(this); };
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret = arg.create_blinded_payment_paths(_recipient_conv, _first_hops_conv_16_arr, _tlvs_hu_conv, _amount_msats);
+ GC.KeepAlive(arg);
+ long result = ret == null ? 0 : ret.clone_ptr();
+ return result;
+ }
}
/** Creates a new instance of Router from a given implementation */
- public static Router new_impl(RouterInterface arg) {
+ public static Router new_impl(RouterInterface arg, MessageRouterInterface messageRouter_impl) {
LDKRouterHolder impl_holder = new LDKRouterHolder();
LDKRouterImpl impl = new LDKRouterImpl(arg, impl_holder);
- long[] ptr_idx = bindings.LDKRouter_new(impl);
+ MessageRouter messageRouter = MessageRouter.new_impl(messageRouter_impl);
+ long[] ptr_idx = bindings.LDKRouter_new(impl, messageRouter.instance_idx);
impl_holder.held = new Router(null, ptr_idx[0]);
impl_holder.held.instance_idx = ptr_idx[1];
impl_holder.held.bindings_instance = impl;
+ impl_holder.held.ptrs_to.AddLast(messageRouter);
return impl_holder.held;
}
return ret_hu_conv;
}
+ /**
+ * Creates [`BlindedPath`]s for payment to the `recipient` node. The channels in `first_hops`
+ * are assumed to be with the `recipient`'s peers. The payment secret and any constraints are
+ * given in `tlvs`.
+ */
+ public Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ create_blinded_payment_paths(byte[] recipient, ChannelDetails[] first_hops, org.ldk.structs.ReceiveTlvs tlvs, long amount_msats) {
+ long ret = bindings.Router_create_blinded_payment_paths(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(recipient, 33)), InternalUtils.encodeUint64Array(InternalUtils.mapArray(first_hops, first_hops_conv_16 => first_hops_conv_16 == null ? 0 : first_hops_conv_16.ptr)), tlvs == null ? 0 : tlvs.ptr, amount_msats);
+ GC.KeepAlive(this);
+ GC.KeepAlive(recipient);
+ GC.KeepAlive(first_hops);
+ GC.KeepAlive(tlvs);
+ GC.KeepAlive(amount_msats);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ ret_hu_conv = Result_CVec_C2Tuple_BlindedPayInfoBlindedPathZZNoneZ.constr_from_ptr(ret);
+ foreach (ChannelDetails first_hops_conv_16 in first_hops) { if (this != null) { this.ptrs_to.AddLast(first_hops_conv_16); }; };
+ if (this != null) { this.ptrs_to.AddLast(tlvs); };
+ return ret_hu_conv;
+ }
+
}
} } }
* [`u64::max_value`] is given to indicate sufficient capacity for the invoice's full amount.
* Thus, implementations should be overflow-safe.
*/
- long channel_penalty_msat(long short_channel_id, NodeId source, NodeId target, ChannelUsage usage, ProbabilisticScoringFeeParameters score_params);
+ long channel_penalty_msat(CandidateRouteHop candidate, ChannelUsage usage, ProbabilisticScoringFeeParameters score_params);
}
/**
internal LDKScoreLookUpImpl(ScoreLookUpInterface arg, LDKScoreLookUpHolder impl_holder) { this.arg = arg; this.impl_holder = impl_holder; }
private ScoreLookUpInterface arg;
private LDKScoreLookUpHolder impl_holder;
- public long channel_penalty_msat(long _short_channel_id, long _source, long _target, long _usage, long _score_params) {
- org.ldk.structs.NodeId _source_hu_conv = null; if (_source < 0 || _source > 4096) { _source_hu_conv = new org.ldk.structs.NodeId(null, _source); }
- org.ldk.structs.NodeId _target_hu_conv = null; if (_target < 0 || _target > 4096) { _target_hu_conv = new org.ldk.structs.NodeId(null, _target); }
+ public long channel_penalty_msat(long _candidate, long _usage, long _score_params) {
+ CandidateRouteHop _candidate_hu_conv = CandidateRouteHop.constr_from_ptr(_candidate);
org.ldk.structs.ChannelUsage _usage_hu_conv = null; if (_usage < 0 || _usage > 4096) { _usage_hu_conv = new org.ldk.structs.ChannelUsage(null, _usage); }
if (_usage_hu_conv != null) { _usage_hu_conv.ptrs_to.AddLast(this); };
org.ldk.structs.ProbabilisticScoringFeeParameters _score_params_hu_conv = null; if (_score_params < 0 || _score_params > 4096) { _score_params_hu_conv = new org.ldk.structs.ProbabilisticScoringFeeParameters(null, _score_params); }
- long ret = arg.channel_penalty_msat(_short_channel_id, _source_hu_conv, _target_hu_conv, _usage_hu_conv, _score_params_hu_conv);
+ long ret = arg.channel_penalty_msat(_candidate_hu_conv, _usage_hu_conv, _score_params_hu_conv);
GC.KeepAlive(arg);
return ret;
}
* [`u64::max_value`] is given to indicate sufficient capacity for the invoice's full amount.
* Thus, implementations should be overflow-safe.
*/
- public long channel_penalty_msat(long short_channel_id, org.ldk.structs.NodeId source, org.ldk.structs.NodeId target, org.ldk.structs.ChannelUsage usage, org.ldk.structs.ProbabilisticScoringFeeParameters score_params) {
- long ret = bindings.ScoreLookUp_channel_penalty_msat(this.ptr, short_channel_id, source == null ? 0 : source.ptr, target == null ? 0 : target.ptr, usage == null ? 0 : usage.ptr, score_params == null ? 0 : score_params.ptr);
+ public long channel_penalty_msat(org.ldk.structs.CandidateRouteHop candidate, org.ldk.structs.ChannelUsage usage, org.ldk.structs.ProbabilisticScoringFeeParameters score_params) {
+ long ret = bindings.ScoreLookUp_channel_penalty_msat(this.ptr, candidate == null ? 0 : candidate.ptr, usage == null ? 0 : usage.ptr, score_params == null ? 0 : score_params.ptr);
GC.KeepAlive(this);
- GC.KeepAlive(short_channel_id);
- GC.KeepAlive(source);
- GC.KeepAlive(target);
+ GC.KeepAlive(candidate);
GC.KeepAlive(usage);
GC.KeepAlive(score_params);
- if (this != null) { this.ptrs_to.AddLast(source); };
- if (this != null) { this.ptrs_to.AddLast(target); };
if (this != null) { this.ptrs_to.AddLast(usage); };
if (this != null) { this.ptrs_to.AddLast(score_params); };
return ret;
public interface ScoreUpdateInterface {
/**Handles updating channel penalties after failing to route through a channel.
*/
- void payment_path_failed(Path path, long short_channel_id);
+ void payment_path_failed(Path path, long short_channel_id, long duration_since_epoch);
/**Handles updating channel penalties after successfully routing along a path.
*/
- void payment_path_successful(Path path);
+ void payment_path_successful(Path path, long duration_since_epoch);
/**Handles updating channel penalties after a probe over the given path failed.
*/
- void probe_failed(Path path, long short_channel_id);
+ void probe_failed(Path path, long short_channel_id, long duration_since_epoch);
/**Handles updating channel penalties after a probe over the given path succeeded.
*/
- void probe_successful(Path path);
+ void probe_successful(Path path, long duration_since_epoch);
+ /**Scorers may wish to reduce their certainty of channel liquidity information over time.
+ * Thus, this method is provided to allow scorers to observe the passage of time - the holder
+ * of this object should call this method regularly (generally via the
+ * `lightning-background-processor` crate).
+ */
+ void time_passed(long duration_since_epoch);
}
/**
internal LDKScoreUpdateImpl(ScoreUpdateInterface arg, LDKScoreUpdateHolder impl_holder) { this.arg = arg; this.impl_holder = impl_holder; }
private ScoreUpdateInterface arg;
private LDKScoreUpdateHolder impl_holder;
- public void payment_path_failed(long _path, long _short_channel_id) {
+ public void payment_path_failed(long _path, long _short_channel_id, long _duration_since_epoch) {
org.ldk.structs.Path _path_hu_conv = null; if (_path < 0 || _path > 4096) { _path_hu_conv = new org.ldk.structs.Path(null, _path); }
- arg.payment_path_failed(_path_hu_conv, _short_channel_id);
+ arg.payment_path_failed(_path_hu_conv, _short_channel_id, _duration_since_epoch);
GC.KeepAlive(arg);
}
- public void payment_path_successful(long _path) {
+ public void payment_path_successful(long _path, long _duration_since_epoch) {
org.ldk.structs.Path _path_hu_conv = null; if (_path < 0 || _path > 4096) { _path_hu_conv = new org.ldk.structs.Path(null, _path); }
- arg.payment_path_successful(_path_hu_conv);
+ arg.payment_path_successful(_path_hu_conv, _duration_since_epoch);
GC.KeepAlive(arg);
}
- public void probe_failed(long _path, long _short_channel_id) {
+ public void probe_failed(long _path, long _short_channel_id, long _duration_since_epoch) {
org.ldk.structs.Path _path_hu_conv = null; if (_path < 0 || _path > 4096) { _path_hu_conv = new org.ldk.structs.Path(null, _path); }
- arg.probe_failed(_path_hu_conv, _short_channel_id);
+ arg.probe_failed(_path_hu_conv, _short_channel_id, _duration_since_epoch);
GC.KeepAlive(arg);
}
- public void probe_successful(long _path) {
+ public void probe_successful(long _path, long _duration_since_epoch) {
org.ldk.structs.Path _path_hu_conv = null; if (_path < 0 || _path > 4096) { _path_hu_conv = new org.ldk.structs.Path(null, _path); }
- arg.probe_successful(_path_hu_conv);
+ arg.probe_successful(_path_hu_conv, _duration_since_epoch);
+ GC.KeepAlive(arg);
+ }
+ public void time_passed(long _duration_since_epoch) {
+ arg.time_passed(_duration_since_epoch);
GC.KeepAlive(arg);
}
}
/**
* Handles updating channel penalties after failing to route through a channel.
*/
- public void payment_path_failed(org.ldk.structs.Path path, long short_channel_id) {
- bindings.ScoreUpdate_payment_path_failed(this.ptr, path == null ? 0 : path.ptr, short_channel_id);
+ public void payment_path_failed(org.ldk.structs.Path path, long short_channel_id, long duration_since_epoch) {
+ bindings.ScoreUpdate_payment_path_failed(this.ptr, path == null ? 0 : path.ptr, short_channel_id, duration_since_epoch);
GC.KeepAlive(this);
GC.KeepAlive(path);
GC.KeepAlive(short_channel_id);
+ GC.KeepAlive(duration_since_epoch);
if (this != null) { this.ptrs_to.AddLast(path); };
}
/**
* Handles updating channel penalties after successfully routing along a path.
*/
- public void payment_path_successful(org.ldk.structs.Path path) {
- bindings.ScoreUpdate_payment_path_successful(this.ptr, path == null ? 0 : path.ptr);
+ public void payment_path_successful(org.ldk.structs.Path path, long duration_since_epoch) {
+ bindings.ScoreUpdate_payment_path_successful(this.ptr, path == null ? 0 : path.ptr, duration_since_epoch);
GC.KeepAlive(this);
GC.KeepAlive(path);
+ GC.KeepAlive(duration_since_epoch);
if (this != null) { this.ptrs_to.AddLast(path); };
}
/**
* Handles updating channel penalties after a probe over the given path failed.
*/
- public void probe_failed(org.ldk.structs.Path path, long short_channel_id) {
- bindings.ScoreUpdate_probe_failed(this.ptr, path == null ? 0 : path.ptr, short_channel_id);
+ public void probe_failed(org.ldk.structs.Path path, long short_channel_id, long duration_since_epoch) {
+ bindings.ScoreUpdate_probe_failed(this.ptr, path == null ? 0 : path.ptr, short_channel_id, duration_since_epoch);
GC.KeepAlive(this);
GC.KeepAlive(path);
GC.KeepAlive(short_channel_id);
+ GC.KeepAlive(duration_since_epoch);
if (this != null) { this.ptrs_to.AddLast(path); };
}
/**
* Handles updating channel penalties after a probe over the given path succeeded.
*/
- public void probe_successful(org.ldk.structs.Path path) {
- bindings.ScoreUpdate_probe_successful(this.ptr, path == null ? 0 : path.ptr);
+ public void probe_successful(org.ldk.structs.Path path, long duration_since_epoch) {
+ bindings.ScoreUpdate_probe_successful(this.ptr, path == null ? 0 : path.ptr, duration_since_epoch);
GC.KeepAlive(this);
GC.KeepAlive(path);
+ GC.KeepAlive(duration_since_epoch);
if (this != null) { this.ptrs_to.AddLast(path); };
}
+ /**
+ * Scorers may wish to reduce their certainty of channel liquidity information over time.
+ * Thus, this method is provided to allow scorers to observe the passage of time - the holder
+ * of this object should call this method regularly (generally via the
+ * `lightning-background-processor` crate).
+ */
+ public void time_passed(long duration_since_epoch) {
+ bindings.ScoreUpdate_time_passed(this.ptr, duration_since_epoch);
+ GC.KeepAlive(this);
+ GC.KeepAlive(duration_since_epoch);
+ }
+
}
} } }
case 1: return new SendError_TooBigPacket(ptr);
case 2: return new SendError_TooFewBlindedHops(ptr);
case 3: return new SendError_InvalidFirstHop(ptr);
- case 4: return new SendError_InvalidMessage(ptr);
- case 5: return new SendError_BufferFull(ptr);
- case 6: return new SendError_GetNodeIdFailed(ptr);
- case 7: return new SendError_BlindedPathAdvanceFailed(ptr);
+ case 4: return new SendError_PathNotFound(ptr);
+ case 5: return new SendError_InvalidMessage(ptr);
+ case 6: return new SendError_BufferFull(ptr);
+ case 7: return new SendError_GetNodeIdFailed(ptr);
+ case 8: return new SendError_BlindedPathAdvanceFailed(ptr);
default:
throw new ArgumentException("Impossible enum variant");
}
}
/** A SendError of type InvalidFirstHop */
public class SendError_InvalidFirstHop : SendError {
+ public byte[] invalid_first_hop;
internal SendError_InvalidFirstHop(long ptr) : base(null, ptr) {
+ long invalid_first_hop = bindings.LDKSendError_InvalidFirstHop_get_invalid_first_hop(ptr);
+ byte[] invalid_first_hop_conv = InternalUtils.decodeUint8Array(invalid_first_hop);
+ this.invalid_first_hop = invalid_first_hop_conv;
+ }
+ }
+ /** A SendError of type PathNotFound */
+ public class SendError_PathNotFound : SendError {
+ internal SendError_PathNotFound(long ptr) : base(null, ptr) {
}
}
/** A SendError of type InvalidMessage */
/**
* Utility method to constructs a new InvalidFirstHop-variant SendError
*/
- public static SendError invalid_first_hop() {
- long ret = bindings.SendError_invalid_first_hop();
+ public static SendError invalid_first_hop(byte[] a) {
+ long ret = bindings.SendError_invalid_first_hop(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 33)));
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SendError ret_hu_conv = org.ldk.structs.SendError.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new PathNotFound-variant SendError
+ */
+ public static SendError path_not_found() {
+ long ret = bindings.SendError_path_not_found();
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.SendError ret_hu_conv = org.ldk.structs.SendError.constr_from_ptr(ret);
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+/**
+ * Result of successfully [sending an onion message].
+ *
+ * [sending an onion message]: OnionMessenger::send_onion_message
+ */
+public class SendSuccess : CommonBase {
+ protected SendSuccess(object _dummy, long ptr) : base(ptr) { }
+ ~SendSuccess() {
+ if (ptr != 0) { bindings.SendSuccess_free(ptr); }
+ }
+
+ internal static SendSuccess constr_from_ptr(long ptr) {
+ long raw_ty = bindings.LDKSendSuccess_ty_from_ptr(ptr);
+ switch (raw_ty) {
+ case 0: return new SendSuccess_Buffered(ptr);
+ case 1: return new SendSuccess_BufferedAwaitingConnection(ptr);
+ default:
+ throw new ArgumentException("Impossible enum variant");
+ }
+ }
+
+ /** A SendSuccess of type Buffered */
+ public class SendSuccess_Buffered : SendSuccess {
+ internal SendSuccess_Buffered(long ptr) : base(null, ptr) {
+ }
+ }
+ /** A SendSuccess of type BufferedAwaitingConnection */
+ public class SendSuccess_BufferedAwaitingConnection : SendSuccess {
+ public byte[] buffered_awaiting_connection;
+ internal SendSuccess_BufferedAwaitingConnection(long ptr) : base(null, ptr) {
+ long buffered_awaiting_connection = bindings.LDKSendSuccess_BufferedAwaitingConnection_get_buffered_awaiting_connection(ptr);
+ byte[] buffered_awaiting_connection_conv = InternalUtils.decodeUint8Array(buffered_awaiting_connection);
+ this.buffered_awaiting_connection = buffered_awaiting_connection_conv;
+ }
+ }
+ internal long clone_ptr() {
+ long ret = bindings.SendSuccess_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the SendSuccess
+ */
+ public SendSuccess clone() {
+ long ret = bindings.SendSuccess_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SendSuccess ret_hu_conv = org.ldk.structs.SendSuccess.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new Buffered-variant SendSuccess
+ */
+ public static SendSuccess buffered() {
+ long ret = bindings.SendSuccess_buffered();
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SendSuccess ret_hu_conv = org.ldk.structs.SendSuccess.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new BufferedAwaitingConnection-variant SendSuccess
+ */
+ public static SendSuccess buffered_awaiting_connection(byte[] a) {
+ long ret = bindings.SendSuccess_buffered_awaiting_connection(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 33)));
+ GC.KeepAlive(a);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SendSuccess ret_hu_conv = org.ldk.structs.SendSuccess.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two SendSuccesss contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ */
+ public bool eq(org.ldk.structs.SendSuccess b) {
+ bool ret = bindings.SendSuccess_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is SendSuccess)) return false;
+ return this.eq((SendSuccess)o);
+ }
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the Shutdown.
+ */
+ public long hash() {
+ long ret = bindings.Shutdown_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two Shutdowns contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
*
* This function may return an error if `program` is invalid for the segwit `version`.
*/
- public static Result_ShutdownScriptInvalidShutdownScriptZ new_witness_program(org.ldk.util.WitnessVersion version, byte[] program) {
- long ret = bindings.ShutdownScript_new_witness_program(version.getVal(), InternalUtils.encodeUint8Array(program));
- GC.KeepAlive(version);
- GC.KeepAlive(program);
+ public static Result_ShutdownScriptInvalidShutdownScriptZ new_witness_program(org.ldk.structs.WitnessProgram witness_program) {
+ long ret = bindings.ShutdownScript_new_witness_program(witness_program.ptr);
+ GC.KeepAlive(witness_program);
if (ret >= 0 && ret <= 4096) { return null; }
Result_ShutdownScriptInvalidShutdownScriptZ ret_hu_conv = Result_ShutdownScriptInvalidShutdownScriptZ.constr_from_ptr(ret);
return ret_hu_conv;
}
/**
- * Converts the shutdown script into the underlying [`Script`].
+ * Converts the shutdown script into the underlying [`ScriptBuf`].
*/
public byte[] into_inner() {
long ret = bindings.ShutdownScript_into_inner(this.ptr);
/** An implementation of SignerProvider */
public interface SignerProviderInterface {
- /**Generates a unique `channel_keys_id` that can be used to obtain a [`Self::Signer`] through
+ /**Generates a unique `channel_keys_id` that can be used to obtain a [`Self::EcdsaSigner`] through
* [`SignerProvider::derive_channel_signer`]. The `user_channel_id` is provided to allow
* implementations of [`SignerProvider`] to maintain a mapping between itself and the generated
* `channel_keys_id`.
* This method is slowly being phased out -- it will only be called when reading objects
* written by LDK versions prior to 0.0.113.
*
- * [`Signer`]: Self::Signer
+ * [`Signer`]: Self::EcdsaSigner
* [`ChannelMonitor`]: crate::chain::channelmonitor::ChannelMonitor
* [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
*/
* If this function returns an error, this will result in a channel failing to open.
*
* This method should return a different value each time it is called, to avoid linking
- * on-chain funds across channels as controlled to the same user.
+ * on-chain funds across channels as controlled to the same user. `channel_keys_id` may be
+ * used to derive a unique value for each channel.
*/
- Result_CVec_u8ZNoneZ get_destination_script();
+ Result_CVec_u8ZNoneZ get_destination_script(byte[] channel_keys_id);
/**Get a script pubkey which we will send funds to when closing a channel.
*
* If this function returns an error, this will result in a channel failing to open or close.
long result = ret == null ? 0 : ret.clone_ptr();
return result;
}
- public long get_destination_script() {
- Result_CVec_u8ZNoneZ ret = arg.get_destination_script();
+ public long get_destination_script(long _channel_keys_id) {
+ byte[] _channel_keys_id_conv = InternalUtils.decodeUint8Array(_channel_keys_id);
+ Result_CVec_u8ZNoneZ ret = arg.get_destination_script(_channel_keys_id_conv);
GC.KeepAlive(arg);
long result = ret == null ? 0 : ret.clone_ptr();
return result;
}
/**
- * Generates a unique `channel_keys_id` that can be used to obtain a [`Self::Signer`] through
+ * Generates a unique `channel_keys_id` that can be used to obtain a [`Self::EcdsaSigner`] through
* [`SignerProvider::derive_channel_signer`]. The `user_channel_id` is provided to allow
* implementations of [`SignerProvider`] to maintain a mapping between itself and the generated
* `channel_keys_id`.
* This method is slowly being phased out -- it will only be called when reading objects
* written by LDK versions prior to 0.0.113.
*
- * [`Signer`]: Self::Signer
+ * [`Signer`]: Self::EcdsaSigner
* [`ChannelMonitor`]: crate::chain::channelmonitor::ChannelMonitor
* [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
*/
* If this function returns an error, this will result in a channel failing to open.
*
* This method should return a different value each time it is called, to avoid linking
- * on-chain funds across channels as controlled to the same user.
+ * on-chain funds across channels as controlled to the same user. `channel_keys_id` may be
+ * used to derive a unique value for each channel.
*/
- public Result_CVec_u8ZNoneZ get_destination_script() {
- long ret = bindings.SignerProvider_get_destination_script(this.ptr);
+ public Result_CVec_u8ZNoneZ get_destination_script(byte[] channel_keys_id) {
+ long ret = bindings.SignerProvider_get_destination_script(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_keys_id, 32)));
GC.KeepAlive(this);
+ GC.KeepAlive(channel_keys_id);
if (ret >= 0 && ret <= 4096) { return null; }
Result_CVec_u8ZNoneZ ret_hu_conv = Result_CVec_u8ZNoneZ.constr_from_ptr(ret);
return ret_hu_conv;
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the SocketAddress.
+ */
+ public long hash() {
+ long ret = bindings.SocketAddress_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two SocketAddresss contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
* The output which is referenced by the given outpoint.
*/
public TxOut output;
+ /**
+ * The `channel_keys_id` for the channel which this output came from.
+ *
+ * For channels which were generated on LDK 0.0.119 or later, this is the value which was
+ * passed to the [`SignerProvider::get_destination_script`] call which provided this
+ * output script.
+ *
+ * For channels which were generated prior to LDK 0.0.119, no such argument existed,
+ * however this field may still be filled in if such data is available.
+ *
+ * Note that this (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public byte[] channel_keys_id;
internal SpendableOutputDescriptor_StaticOutput(long ptr) : base(null, ptr) {
long outpoint = bindings.LDKSpendableOutputDescriptor_StaticOutput_get_outpoint(ptr);
org.ldk.structs.OutPoint outpoint_hu_conv = null; if (outpoint < 0 || outpoint > 4096) { outpoint_hu_conv = new org.ldk.structs.OutPoint(null, outpoint); }
long output = bindings.LDKSpendableOutputDescriptor_StaticOutput_get_output(ptr);
TxOut output_conv = new TxOut(null, output);
this.output = output_conv;
+ long channel_keys_id = bindings.LDKSpendableOutputDescriptor_StaticOutput_get_channel_keys_id(ptr);
+ byte[] channel_keys_id_conv = InternalUtils.decodeUint8Array(channel_keys_id);
+ this.channel_keys_id = channel_keys_id_conv;
}
}
/** A SpendableOutputDescriptor of type DelayedPaymentOutput */
/**
* Utility method to constructs a new StaticOutput-variant SpendableOutputDescriptor
*/
- public static SpendableOutputDescriptor static_output(org.ldk.structs.OutPoint outpoint, org.ldk.structs.TxOut output) {
- long ret = bindings.SpendableOutputDescriptor_static_output(outpoint == null ? 0 : outpoint.ptr, output.ptr);
+ public static SpendableOutputDescriptor static_output(org.ldk.structs.OutPoint outpoint, org.ldk.structs.TxOut output, byte[] channel_keys_id) {
+ long ret = bindings.SpendableOutputDescriptor_static_output(outpoint == null ? 0 : outpoint.ptr, output.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_keys_id, 32)));
GC.KeepAlive(outpoint);
GC.KeepAlive(output);
+ GC.KeepAlive(channel_keys_id);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.SpendableOutputDescriptor ret_hu_conv = org.ldk.structs.SpendableOutputDescriptor.constr_from_ptr(ret);
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A splice message to be sent by or received from the stfu initiator (splice initiator).
+ */
+public class Splice : CommonBase {
+ internal Splice(object _dummy, long ptr) : base(ptr) { }
+ ~Splice() {
+ if (ptr != 0) { bindings.Splice_free(ptr); }
+ }
+
+ /**
+ * The channel ID where splicing is intended
+ */
+ public byte[] get_channel_id() {
+ long ret = bindings.Splice_get_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The channel ID where splicing is intended
+ */
+ public void set_channel_id(byte[] val) {
+ bindings.Splice_set_channel_id(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The genesis hash of the blockchain where the channel is intended to be spliced
+ */
+ public byte[] get_chain_hash() {
+ long ret = bindings.Splice_get_chain_hash(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The genesis hash of the blockchain where the channel is intended to be spliced
+ */
+ public void set_chain_hash(byte[] val) {
+ bindings.Splice_set_chain_hash(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The intended change in channel capacity: the amount to be added (positive value)
+ * or removed (negative value) by the sender (splice initiator) by splicing into/from the channel.
+ */
+ public long get_relative_satoshis() {
+ long ret = bindings.Splice_get_relative_satoshis(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The intended change in channel capacity: the amount to be added (positive value)
+ * or removed (negative value) by the sender (splice initiator) by splicing into/from the channel.
+ */
+ public void set_relative_satoshis(long val) {
+ bindings.Splice_set_relative_satoshis(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The feerate for the new funding transaction, set by the splice initiator
+ */
+ public int get_funding_feerate_perkw() {
+ int ret = bindings.Splice_get_funding_feerate_perkw(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The feerate for the new funding transaction, set by the splice initiator
+ */
+ public void set_funding_feerate_perkw(int val) {
+ bindings.Splice_set_funding_feerate_perkw(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The locktime for the new funding transaction
+ */
+ public int get_locktime() {
+ int ret = bindings.Splice_get_locktime(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The locktime for the new funding transaction
+ */
+ public void set_locktime(int val) {
+ bindings.Splice_set_locktime(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The key of the sender (splice initiator) controlling the new funding transaction
+ */
+ public byte[] get_funding_pubkey() {
+ long ret = bindings.Splice_get_funding_pubkey(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The key of the sender (splice initiator) controlling the new funding transaction
+ */
+ public void set_funding_pubkey(byte[] val) {
+ bindings.Splice_set_funding_pubkey(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new Splice given each field
+ */
+ public static Splice of(byte[] channel_id_arg, byte[] chain_hash_arg, long relative_satoshis_arg, int funding_feerate_perkw_arg, int locktime_arg, byte[] funding_pubkey_arg) {
+ long ret = bindings.Splice_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(chain_hash_arg, 32)), relative_satoshis_arg, funding_feerate_perkw_arg, locktime_arg, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(funding_pubkey_arg, 33)));
+ GC.KeepAlive(channel_id_arg);
+ GC.KeepAlive(chain_hash_arg);
+ GC.KeepAlive(relative_satoshis_arg);
+ GC.KeepAlive(funding_feerate_perkw_arg);
+ GC.KeepAlive(locktime_arg);
+ GC.KeepAlive(funding_pubkey_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Splice ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.Splice(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.Splice_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the Splice
+ */
+ public Splice clone() {
+ long ret = bindings.Splice_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Splice ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.Splice(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two Splices contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.Splice b) {
+ bool ret = bindings.Splice_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is Splice)) return false;
+ return this.eq((Splice)o);
+ }
+ /**
+ * Serialize the Splice object into a byte array which can be read by Splice_read
+ */
+ public byte[] write() {
+ long ret = bindings.Splice_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a Splice from a byte array, created by Splice_write
+ */
+ public static Result_SpliceDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.Splice_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceDecodeErrorZ ret_hu_conv = Result_SpliceDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A splice_ack message to be received by or sent to the splice initiator.
+ */
+public class SpliceAck : CommonBase {
+ internal SpliceAck(object _dummy, long ptr) : base(ptr) { }
+ ~SpliceAck() {
+ if (ptr != 0) { bindings.SpliceAck_free(ptr); }
+ }
+
+ /**
+ * The channel ID where splicing is intended
+ */
+ public byte[] get_channel_id() {
+ long ret = bindings.SpliceAck_get_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The channel ID where splicing is intended
+ */
+ public void set_channel_id(byte[] val) {
+ bindings.SpliceAck_set_channel_id(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The genesis hash of the blockchain where the channel is intended to be spliced
+ */
+ public byte[] get_chain_hash() {
+ long ret = bindings.SpliceAck_get_chain_hash(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The genesis hash of the blockchain where the channel is intended to be spliced
+ */
+ public void set_chain_hash(byte[] val) {
+ bindings.SpliceAck_set_chain_hash(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The intended change in channel capacity: the amount to be added (positive value)
+ * or removed (negative value) by the sender (splice acceptor) by splicing into/from the channel.
+ */
+ public long get_relative_satoshis() {
+ long ret = bindings.SpliceAck_get_relative_satoshis(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * The intended change in channel capacity: the amount to be added (positive value)
+ * or removed (negative value) by the sender (splice acceptor) by splicing into/from the channel.
+ */
+ public void set_relative_satoshis(long val) {
+ bindings.SpliceAck_set_relative_satoshis(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * The key of the sender (splice acceptor) controlling the new funding transaction
+ */
+ public byte[] get_funding_pubkey() {
+ long ret = bindings.SpliceAck_get_funding_pubkey(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The key of the sender (splice acceptor) controlling the new funding transaction
+ */
+ public void set_funding_pubkey(byte[] val) {
+ bindings.SpliceAck_set_funding_pubkey(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new SpliceAck given each field
+ */
+ public static SpliceAck of(byte[] channel_id_arg, byte[] chain_hash_arg, long relative_satoshis_arg, byte[] funding_pubkey_arg) {
+ long ret = bindings.SpliceAck_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(chain_hash_arg, 32)), relative_satoshis_arg, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(funding_pubkey_arg, 33)));
+ GC.KeepAlive(channel_id_arg);
+ GC.KeepAlive(chain_hash_arg);
+ GC.KeepAlive(relative_satoshis_arg);
+ GC.KeepAlive(funding_pubkey_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SpliceAck ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.SpliceAck(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.SpliceAck_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the SpliceAck
+ */
+ public SpliceAck clone() {
+ long ret = bindings.SpliceAck_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SpliceAck ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.SpliceAck(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two SpliceAcks contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.SpliceAck b) {
+ bool ret = bindings.SpliceAck_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is SpliceAck)) return false;
+ return this.eq((SpliceAck)o);
+ }
+ /**
+ * Serialize the SpliceAck object into a byte array which can be read by SpliceAck_read
+ */
+ public byte[] write() {
+ long ret = bindings.SpliceAck_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a SpliceAck from a byte array, created by SpliceAck_write
+ */
+ public static Result_SpliceAckDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.SpliceAck_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceAckDecodeErrorZ ret_hu_conv = Result_SpliceAckDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A splice_locked message to be sent to or received from a peer.
+ */
+public class SpliceLocked : CommonBase {
+ internal SpliceLocked(object _dummy, long ptr) : base(ptr) { }
+ ~SpliceLocked() {
+ if (ptr != 0) { bindings.SpliceLocked_free(ptr); }
+ }
+
+ /**
+ * The channel ID
+ */
+ public byte[] get_channel_id() {
+ long ret = bindings.SpliceLocked_get_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The channel ID
+ */
+ public void set_channel_id(byte[] val) {
+ bindings.SpliceLocked_set_channel_id(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new SpliceLocked given each field
+ */
+ public static SpliceLocked of(byte[] channel_id_arg) {
+ long ret = bindings.SpliceLocked_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)));
+ GC.KeepAlive(channel_id_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SpliceLocked ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.SpliceLocked(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.SpliceLocked_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the SpliceLocked
+ */
+ public SpliceLocked clone() {
+ long ret = bindings.SpliceLocked_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.SpliceLocked ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.SpliceLocked(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two SpliceLockeds contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.SpliceLocked b) {
+ bool ret = bindings.SpliceLocked_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is SpliceLocked)) return false;
+ return this.eq((SpliceLocked)o);
+ }
+ /**
+ * Serialize the SpliceLocked object into a byte array which can be read by SpliceLocked_read
+ */
+ public byte[] write() {
+ long ret = bindings.SpliceLocked_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a SpliceLocked from a byte array, created by SpliceLocked_write
+ */
+ public static Result_SpliceLockedDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.SpliceLocked_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_SpliceLockedDecodeErrorZ ret_hu_conv = Result_SpliceLockedDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * An stfu (quiescence) message to be sent by or received from the stfu initiator.
+ */
+public class Stfu : CommonBase {
+ internal Stfu(object _dummy, long ptr) : base(ptr) { }
+ ~Stfu() {
+ if (ptr != 0) { bindings.Stfu_free(ptr); }
+ }
+
+ /**
+ * The channel ID where quiescence is intended
+ */
+ public byte[] get_channel_id() {
+ long ret = bindings.Stfu_get_channel_id(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * The channel ID where quiescence is intended
+ */
+ public void set_channel_id(byte[] val) {
+ bindings.Stfu_set_channel_id(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 32)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Initiator flag, 1 if initiating, 0 if replying to an stfu.
+ */
+ public byte get_initiator() {
+ byte ret = bindings.Stfu_get_initiator(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Initiator flag, 1 if initiating, 0 if replying to an stfu.
+ */
+ public void set_initiator(byte val) {
+ bindings.Stfu_set_initiator(this.ptr, val);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new Stfu given each field
+ */
+ public static Stfu of(byte[] channel_id_arg, byte initiator_arg) {
+ long ret = bindings.Stfu_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)), initiator_arg);
+ GC.KeepAlive(channel_id_arg);
+ GC.KeepAlive(initiator_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Stfu ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.Stfu(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.Stfu_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the Stfu
+ */
+ public Stfu clone() {
+ long ret = bindings.Stfu_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Stfu ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.Stfu(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Checks if two Stfus contain equal inner contents.
+ * This ignores pointers and is_owned flags and looks at the values in fields.
+ * Two objects with NULL inner values will be considered "equal" here.
+ */
+ public bool eq(org.ldk.structs.Stfu b) {
+ bool ret = bindings.Stfu_eq(this.ptr, b == null ? 0 : b.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(b);
+ if (this != null) { this.ptrs_to.AddLast(b); };
+ return ret;
+ }
+
+ public override bool Equals(object o) {
+ if (!(o is Stfu)) return false;
+ return this.eq((Stfu)o);
+ }
+ /**
+ * Serialize the Stfu object into a byte array which can be read by Stfu_read
+ */
+ public byte[] write() {
+ long ret = bindings.Stfu_write(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Read a Stfu from a byte array, created by Stfu_write
+ */
+ public static Result_StfuDecodeErrorZ read(byte[] ser) {
+ long ret = bindings.Stfu_read(InternalUtils.encodeUint8Array(ser));
+ GC.KeepAlive(ser);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_StfuDecodeErrorZ ret_hu_conv = Result_StfuDecodeErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
+}
+} } }
if (ptr != 0) { bindings.TaggedHash_free(ptr); }
}
+ internal long clone_ptr() {
+ long ret = bindings.TaggedHash_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a copy of the TaggedHash
+ */
+ public TaggedHash clone() {
+ long ret = bindings.TaggedHash_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.TaggedHash ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.TaggedHash(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Returns the digest to sign.
+ */
+ public byte[] as_digest() {
+ long ret = bindings.TaggedHash_as_digest(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Returns the tag used in the tagged hash.
+ */
+ public string tag() {
+ long ret = bindings.TaggedHash_tag(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ string ret_conv = InternalUtils.decodeString(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Returns the merkle root used in the tagged hash.
+ */
+ public byte[] merkle_root() {
+ long ret = bindings.TaggedHash_merkle_root(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
}
} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A Tuple
+ */
+public class ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ : CommonBase {
+ internal ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ(object _dummy, long ptr) : base(ptr) { }
+ ~ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ() {
+ if (ptr != 0) { bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_free(ptr); }
+ }
+
+ /**
+ *
+ */
+ public byte[] get_a() {
+ long ret = bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ *
+ */
+ public OnionMessage get_b() {
+ long ret = bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_b(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.OnionMessage ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.OnionMessage(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ *
+ */
+ public Option_CVec_SocketAddressZZ get_c() {
+ long ret = bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_get_c(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_CVec_SocketAddressZZ ret_hu_conv = org.ldk.structs.Option_CVec_SocketAddressZZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new tuple which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ clone() {
+ long ret = bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ ret_hu_conv = new ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ from the contained elements.
+ */
+ public static ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ of(byte[] a, org.ldk.structs.OnionMessage b, org.ldk.structs.Option_CVec_SocketAddressZZ c) {
+ long ret = bindings.C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 33)), b == null ? 0 : b.ptr, c.ptr);
+ GC.KeepAlive(a);
+ GC.KeepAlive(b);
+ GC.KeepAlive(c);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ ret_hu_conv = new ThreeTuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(b); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(c); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A Tuple
+ */
+public class ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ : CommonBase {
+ internal ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ(object _dummy, long ptr) : base(ptr) { }
+ ~ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ() {
+ if (ptr != 0) { bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_free(ptr); }
+ }
+
+ /**
+ *
+ */
+ public byte[] get_a() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ *
+ */
+ public RecipientOnionFields get_b() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_b(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RecipientOnionFields ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RecipientOnionFields(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ *
+ */
+ public RouteParameters get_c() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_get_c(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.RouteParameters ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RouteParameters(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new tuple which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ clone() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ ret_hu_conv = new ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ from the contained elements.
+ */
+ public static ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ of(byte[] a, org.ldk.structs.RecipientOnionFields b, org.ldk.structs.RouteParameters c) {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 32)), b == null ? 0 : b.ptr, c == null ? 0 : c.ptr);
+ GC.KeepAlive(a);
+ GC.KeepAlive(b);
+ GC.KeepAlive(c);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ ret_hu_conv = new ThreeTuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(b); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(c); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A Tuple
+ */
+public class ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ : CommonBase {
+ internal ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ(object _dummy, long ptr) : base(ptr) { }
+ ~ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ() {
+ if (ptr != 0) { bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_free(ptr); }
+ }
+
+ /**
+ *
+ */
+ public byte[] get_a() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ *
+ */
+ public int get_b() {
+ int ret = bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_b(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ *
+ */
+ public Option_ThirtyTwoBytesZ get_c() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_get_c(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.Option_ThirtyTwoBytesZ ret_hu_conv = org.ldk.structs.Option_ThirtyTwoBytesZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new tuple which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ clone() {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ ret_hu_conv = new ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ from the contained elements.
+ */
+ public static ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ of(byte[] a, int b, org.ldk.structs.Option_ThirtyTwoBytesZ c) {
+ long ret = bindings.C3Tuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 32)), b, c.ptr);
+ GC.KeepAlive(a);
+ GC.KeepAlive(b);
+ GC.KeepAlive(c);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ ret_hu_conv = new ThreeTuple_ThirtyTwoBytesu32COption_ThirtyTwoBytesZZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(c); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TransactionU16LenLimited.
+ */
+ public long hash() {
+ long ret = bindings.TransactionU16LenLimited_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TransactionU16LenLimiteds contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A Tuple
+ */
+public class TwoTuple_CVec_u8Zu64Z : CommonBase {
+ internal TwoTuple_CVec_u8Zu64Z(object _dummy, long ptr) : base(ptr) { }
+ ~TwoTuple_CVec_u8Zu64Z() {
+ if (ptr != 0) { bindings.C2Tuple_CVec_u8Zu64Z_free(ptr); }
+ }
+
+ /**
+ *
+ */
+ public byte[] get_a() {
+ long ret = bindings.C2Tuple_CVec_u8Zu64Z_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ *
+ */
+ public long get_b() {
+ long ret = bindings.C2Tuple_CVec_u8Zu64Z_get_b(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.C2Tuple_CVec_u8Zu64Z_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new tuple which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public TwoTuple_CVec_u8Zu64Z clone() {
+ long ret = bindings.C2Tuple_CVec_u8Zu64Z_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ TwoTuple_CVec_u8Zu64Z ret_hu_conv = new TwoTuple_CVec_u8Zu64Z(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new C2Tuple_CVec_u8Zu64Z from the contained elements.
+ */
+ public static TwoTuple_CVec_u8Zu64Z of(byte[] a, long b) {
+ long ret = bindings.C2Tuple_CVec_u8Zu64Z_new(InternalUtils.encodeUint8Array(a), b);
+ GC.KeepAlive(a);
+ GC.KeepAlive(b);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ TwoTuple_CVec_u8Zu64Z ret_hu_conv = new TwoTuple_CVec_u8Zu64Z(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-
-/**
- * A Tuple
- */
-public class TwoTuple_CVec_u8ZusizeZ : CommonBase {
- internal TwoTuple_CVec_u8ZusizeZ(object _dummy, long ptr) : base(ptr) { }
- ~TwoTuple_CVec_u8ZusizeZ() {
- if (ptr != 0) { bindings.C2Tuple_CVec_u8ZusizeZ_free(ptr); }
- }
-
- /**
- *
- */
- public byte[] get_a() {
- long ret = bindings.C2Tuple_CVec_u8ZusizeZ_get_a(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
- }
-
- /**
- *
- */
- public long get_b() {
- long ret = bindings.C2Tuple_CVec_u8ZusizeZ_get_b(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- internal long clone_ptr() {
- long ret = bindings.C2Tuple_CVec_u8ZusizeZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new tuple which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public TwoTuple_CVec_u8ZusizeZ clone() {
- long ret = bindings.C2Tuple_CVec_u8ZusizeZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- TwoTuple_CVec_u8ZusizeZ ret_hu_conv = new TwoTuple_CVec_u8ZusizeZ(null, ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- /**
- * Creates a new C2Tuple_CVec_u8ZusizeZ from the contained elements.
- */
- public static TwoTuple_CVec_u8ZusizeZ of(byte[] a, long b) {
- long ret = bindings.C2Tuple_CVec_u8ZusizeZ_new(InternalUtils.encodeUint8Array(a), b);
- GC.KeepAlive(a);
- GC.KeepAlive(b);
- if (ret >= 0 && ret <= 4096) { return null; }
- TwoTuple_CVec_u8ZusizeZ ret_hu_conv = new TwoTuple_CVec_u8ZusizeZ(null, ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- return ret_hu_conv;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A Tuple
+ */
+public class TwoTuple_PublicKeyCVec_SocketAddressZZ : CommonBase {
+ internal TwoTuple_PublicKeyCVec_SocketAddressZZ(object _dummy, long ptr) : base(ptr) { }
+ ~TwoTuple_PublicKeyCVec_SocketAddressZZ() {
+ if (ptr != 0) { bindings.C2Tuple_PublicKeyCVec_SocketAddressZZ_free(ptr); }
+ }
+
+ /**
+ *
+ */
+ public byte[] get_a() {
+ long ret = bindings.C2Tuple_PublicKeyCVec_SocketAddressZZ_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ *
+ */
+ public SocketAddress[] get_b() {
+ long ret = bindings.C2Tuple_PublicKeyCVec_SocketAddressZZ_get_b(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ int ret_conv_15_len = InternalUtils.getArrayLength(ret);
+ SocketAddress[] ret_conv_15_arr = new SocketAddress[ret_conv_15_len];
+ for (int p = 0; p < ret_conv_15_len; p++) {
+ long ret_conv_15 = InternalUtils.getU64ArrayElem(ret, p);
+ org.ldk.structs.SocketAddress ret_conv_15_hu_conv = org.ldk.structs.SocketAddress.constr_from_ptr(ret_conv_15);
+ if (ret_conv_15_hu_conv != null) { ret_conv_15_hu_conv.ptrs_to.AddLast(this); };
+ ret_conv_15_arr[p] = ret_conv_15_hu_conv;
+ }
+ bindings.free_buffer(ret);
+ return ret_conv_15_arr;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.C2Tuple_PublicKeyCVec_SocketAddressZZ_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new tuple which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public TwoTuple_PublicKeyCVec_SocketAddressZZ clone() {
+ long ret = bindings.C2Tuple_PublicKeyCVec_SocketAddressZZ_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ TwoTuple_PublicKeyCVec_SocketAddressZZ ret_hu_conv = new TwoTuple_PublicKeyCVec_SocketAddressZZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new C2Tuple_PublicKeyCVec_SocketAddressZZ from the contained elements.
+ */
+ public static TwoTuple_PublicKeyCVec_SocketAddressZZ of(byte[] a, SocketAddress[] b) {
+ long ret = bindings.C2Tuple_PublicKeyCVec_SocketAddressZZ_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 33)), InternalUtils.encodeUint64Array(InternalUtils.mapArray(b, b_conv_15 => b_conv_15.ptr)));
+ GC.KeepAlive(a);
+ GC.KeepAlive(b);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ TwoTuple_PublicKeyCVec_SocketAddressZZ ret_hu_conv = new TwoTuple_PublicKeyCVec_SocketAddressZZ(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ foreach (SocketAddress b_conv_15 in b) { if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(b_conv_15); }; };
+ return ret_hu_conv;
+ }
+
+}
+} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-
-/**
- * A Tuple
- */
-public class TwoTuple_PublicKeyOnionMessageZ : CommonBase {
- internal TwoTuple_PublicKeyOnionMessageZ(object _dummy, long ptr) : base(ptr) { }
- ~TwoTuple_PublicKeyOnionMessageZ() {
- if (ptr != 0) { bindings.C2Tuple_PublicKeyOnionMessageZ_free(ptr); }
- }
-
- /**
- *
- */
- public byte[] get_a() {
- long ret = bindings.C2Tuple_PublicKeyOnionMessageZ_get_a(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
- }
-
- /**
- *
- */
- public OnionMessage get_b() {
- long ret = bindings.C2Tuple_PublicKeyOnionMessageZ_get_b(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.OnionMessage ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.OnionMessage(null, ret); }
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- internal long clone_ptr() {
- long ret = bindings.C2Tuple_PublicKeyOnionMessageZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new tuple which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public TwoTuple_PublicKeyOnionMessageZ clone() {
- long ret = bindings.C2Tuple_PublicKeyOnionMessageZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- TwoTuple_PublicKeyOnionMessageZ ret_hu_conv = new TwoTuple_PublicKeyOnionMessageZ(null, ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- /**
- * Creates a new C2Tuple_PublicKeyOnionMessageZ from the contained elements.
- */
- public static TwoTuple_PublicKeyOnionMessageZ of(byte[] a, org.ldk.structs.OnionMessage b) {
- long ret = bindings.C2Tuple_PublicKeyOnionMessageZ_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 33)), b == null ? 0 : b.ptr);
- GC.KeepAlive(a);
- GC.KeepAlive(b);
- if (ret >= 0 && ret <= 4096) { return null; }
- TwoTuple_PublicKeyOnionMessageZ ret_hu_conv = new TwoTuple_PublicKeyOnionMessageZ(null, ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(b); };
- return ret_hu_conv;
- }
-
-}
-} } }
+++ /dev/null
-using org.ldk.impl;
-using org.ldk.enums;
-using org.ldk.util;
-using System;
-
-namespace org { namespace ldk { namespace structs {
-
-
-/**
- * A Tuple
- */
-public class TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ : CommonBase {
- internal TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ(object _dummy, long ptr) : base(ptr) { }
- ~TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ() {
- if (ptr != 0) { bindings.C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_free(ptr); }
- }
-
- /**
- *
- */
- public byte[] get_a() {
- long ret = bindings.C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_a(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
- }
-
- /**
- *
- */
- public Option_ThirtyTwoBytesZ get_b() {
- long ret = bindings.C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_get_b(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- org.ldk.structs.Option_ThirtyTwoBytesZ ret_hu_conv = org.ldk.structs.Option_ThirtyTwoBytesZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- internal long clone_ptr() {
- long ret = bindings.C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone_ptr(this.ptr);
- GC.KeepAlive(this);
- return ret;
- }
-
- /**
- * Creates a new tuple which has the same data as `orig`
- * but with all dynamically-allocated buffers duplicated in new buffers.
- */
- public TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ clone() {
- long ret = bindings.C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_clone(this.ptr);
- GC.KeepAlive(this);
- if (ret >= 0 && ret <= 4096) { return null; }
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ ret_hu_conv = new TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ(null, ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
- return ret_hu_conv;
- }
-
- /**
- * Creates a new C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ from the contained elements.
- */
- public static TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ of(byte[] a, org.ldk.structs.Option_ThirtyTwoBytesZ b) {
- long ret = bindings.C2Tuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 32)), b.ptr);
- GC.KeepAlive(a);
- GC.KeepAlive(b);
- if (ret >= 0 && ret <= 4096) { return null; }
- TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ ret_hu_conv = new TwoTuple_ThirtyTwoBytesCOption_ThirtyTwoBytesZZ(null, ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(b); };
- return ret_hu_conv;
- }
-
-}
-} } }
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+
+/**
+ * A Tuple
+ */
+public class TwoTuple__u832u16Z : CommonBase {
+ internal TwoTuple__u832u16Z(object _dummy, long ptr) : base(ptr) { }
+ ~TwoTuple__u832u16Z() {
+ if (ptr != 0) { bindings.C2Tuple__u832u16Z_free(ptr); }
+ }
+
+ /**
+ *
+ */
+ public byte[] get_a() {
+ long ret = bindings.C2Tuple__u832u16Z_get_a(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ *
+ */
+ public short get_b() {
+ short ret = bindings.C2Tuple__u832u16Z_get_b(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ internal long clone_ptr() {
+ long ret = bindings.C2Tuple__u832u16Z_clone_ptr(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ /**
+ * Creates a new tuple which has the same data as `orig`
+ * but with all dynamically-allocated buffers duplicated in new buffers.
+ */
+ public TwoTuple__u832u16Z clone() {
+ long ret = bindings.C2Tuple__u832u16Z_clone(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ TwoTuple__u832u16Z ret_hu_conv = new TwoTuple__u832u16Z(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * Creates a new C2Tuple__u832u16Z from the contained elements.
+ */
+ public static TwoTuple__u832u16Z of(byte[] a, short b) {
+ long ret = bindings.C2Tuple__u832u16Z_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(a, 32)), b);
+ GC.KeepAlive(a);
+ GC.KeepAlive(b);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ TwoTuple__u832u16Z ret_hu_conv = new TwoTuple__u832u16Z(null, ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ return ret_hu_conv;
+ }
+
+}
+} } }
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxAbort.
+ */
+ public long hash() {
+ long ret = bindings.TxAbort_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxAborts contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxAckRbf.
+ */
+ public long hash() {
+ long ret = bindings.TxAckRbf_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxAckRbfs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxAddInput.
+ */
+ public long hash() {
+ long ret = bindings.TxAddInput_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxAddInputs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxAddOutput.
+ */
+ public long hash() {
+ long ret = bindings.TxAddOutput_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxAddOutputs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxComplete.
+ */
+ public long hash() {
+ long ret = bindings.TxComplete_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxCompletes contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
* transaction to provide their counterparty the ability to punish them if they broadcast
* an old state.
*/
- public byte[] get_revocation_key() {
+ public RevocationKey get_revocation_key() {
long ret = bindings.TxCreationKeys_get_revocation_key(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.RevocationKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.RevocationKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* transaction to provide their counterparty the ability to punish them if they broadcast
* an old state.
*/
- public void set_revocation_key(byte[] val) {
- bindings.TxCreationKeys_set_revocation_key(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_revocation_key(org.ldk.structs.RevocationKey val) {
+ bindings.TxCreationKeys_set_revocation_key(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* Broadcaster's HTLC Key
*/
- public byte[] get_broadcaster_htlc_key() {
+ public HtlcKey get_broadcaster_htlc_key() {
long ret = bindings.TxCreationKeys_get_broadcaster_htlc_key(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.HtlcKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* Broadcaster's HTLC Key
*/
- public void set_broadcaster_htlc_key(byte[] val) {
- bindings.TxCreationKeys_set_broadcaster_htlc_key(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_broadcaster_htlc_key(org.ldk.structs.HtlcKey val) {
+ bindings.TxCreationKeys_set_broadcaster_htlc_key(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* Countersignatory's HTLC Key
*/
- public byte[] get_countersignatory_htlc_key() {
+ public HtlcKey get_countersignatory_htlc_key() {
long ret = bindings.TxCreationKeys_get_countersignatory_htlc_key(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.HtlcKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.HtlcKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* Countersignatory's HTLC Key
*/
- public void set_countersignatory_htlc_key(byte[] val) {
- bindings.TxCreationKeys_set_countersignatory_htlc_key(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_countersignatory_htlc_key(org.ldk.structs.HtlcKey val) {
+ bindings.TxCreationKeys_set_countersignatory_htlc_key(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* Broadcaster's Payment Key (which isn't allowed to be spent from for some delay)
*/
- public byte[] get_broadcaster_delayed_payment_key() {
+ public DelayedPaymentKey get_broadcaster_delayed_payment_key() {
long ret = bindings.TxCreationKeys_get_broadcaster_delayed_payment_key(this.ptr);
GC.KeepAlive(this);
if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
+ org.ldk.structs.DelayedPaymentKey ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.DelayedPaymentKey(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
}
/**
* Broadcaster's Payment Key (which isn't allowed to be spent from for some delay)
*/
- public void set_broadcaster_delayed_payment_key(byte[] val) {
- bindings.TxCreationKeys_set_broadcaster_delayed_payment_key(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ public void set_broadcaster_delayed_payment_key(org.ldk.structs.DelayedPaymentKey val) {
+ bindings.TxCreationKeys_set_broadcaster_delayed_payment_key(this.ptr, val == null ? 0 : val.ptr);
GC.KeepAlive(this);
GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
}
/**
* Constructs a new TxCreationKeys given each field
*/
- public static TxCreationKeys of(byte[] per_commitment_point_arg, byte[] revocation_key_arg, byte[] broadcaster_htlc_key_arg, byte[] countersignatory_htlc_key_arg, byte[] broadcaster_delayed_payment_key_arg) {
- long ret = bindings.TxCreationKeys_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(revocation_key_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(broadcaster_htlc_key_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(countersignatory_htlc_key_arg, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(broadcaster_delayed_payment_key_arg, 33)));
+ public static TxCreationKeys of(byte[] per_commitment_point_arg, org.ldk.structs.RevocationKey revocation_key_arg, org.ldk.structs.HtlcKey broadcaster_htlc_key_arg, org.ldk.structs.HtlcKey countersignatory_htlc_key_arg, org.ldk.structs.DelayedPaymentKey broadcaster_delayed_payment_key_arg) {
+ long ret = bindings.TxCreationKeys_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point_arg, 33)), revocation_key_arg == null ? 0 : revocation_key_arg.ptr, broadcaster_htlc_key_arg == null ? 0 : broadcaster_htlc_key_arg.ptr, countersignatory_htlc_key_arg == null ? 0 : countersignatory_htlc_key_arg.ptr, broadcaster_delayed_payment_key_arg == null ? 0 : broadcaster_delayed_payment_key_arg.ptr);
GC.KeepAlive(per_commitment_point_arg);
GC.KeepAlive(revocation_key_arg);
GC.KeepAlive(broadcaster_htlc_key_arg);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.TxCreationKeys ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.TxCreationKeys(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(revocation_key_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(broadcaster_htlc_key_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(countersignatory_htlc_key_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(broadcaster_delayed_payment_key_arg); };
return ret_hu_conv;
}
* Create per-state keys from channel base points and the per-commitment point.
* Key set is asymmetric and can't be used as part of counter-signatory set of transactions.
*/
- public static TxCreationKeys derive_new(byte[] per_commitment_point, byte[] broadcaster_delayed_payment_base, byte[] broadcaster_htlc_base, byte[] countersignatory_revocation_base, byte[] countersignatory_htlc_base) {
- long ret = bindings.TxCreationKeys_derive_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(broadcaster_delayed_payment_base, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(broadcaster_htlc_base, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(countersignatory_revocation_base, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(countersignatory_htlc_base, 33)));
+ public static TxCreationKeys derive_new(byte[] per_commitment_point, org.ldk.structs.DelayedPaymentBasepoint broadcaster_delayed_payment_base, org.ldk.structs.HtlcBasepoint broadcaster_htlc_base, org.ldk.structs.RevocationBasepoint countersignatory_revocation_base, org.ldk.structs.HtlcBasepoint countersignatory_htlc_base) {
+ long ret = bindings.TxCreationKeys_derive_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)), broadcaster_delayed_payment_base == null ? 0 : broadcaster_delayed_payment_base.ptr, broadcaster_htlc_base == null ? 0 : broadcaster_htlc_base.ptr, countersignatory_revocation_base == null ? 0 : countersignatory_revocation_base.ptr, countersignatory_htlc_base == null ? 0 : countersignatory_htlc_base.ptr);
GC.KeepAlive(per_commitment_point);
GC.KeepAlive(broadcaster_delayed_payment_base);
GC.KeepAlive(broadcaster_htlc_base);
if (ret >= 0 && ret <= 4096) { return null; }
org.ldk.structs.TxCreationKeys ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.TxCreationKeys(null, ret); }
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(broadcaster_delayed_payment_base); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(broadcaster_htlc_base); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(countersignatory_revocation_base); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(countersignatory_htlc_base); };
return ret_hu_conv;
}
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxInitRbf.
+ */
+ public long hash() {
+ long ret = bindings.TxInitRbf_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxInitRbfs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxRemoveInput.
+ */
+ public long hash() {
+ long ret = bindings.TxRemoveInput_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxRemoveInputs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxRemoveOutput.
+ */
+ public long hash() {
+ long ret = bindings.TxRemoveOutput_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxRemoveOutputs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the TxSignatures.
+ */
+ public long hash() {
+ long ret = bindings.TxSignatures_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two TxSignaturess contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UnsignedChannelAnnouncement.
+ */
+ public long hash() {
+ long ret = bindings.UnsignedChannelAnnouncement_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UnsignedChannelAnnouncements contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UnsignedChannelUpdate.
+ */
+ public long hash() {
+ long ret = bindings.UnsignedChannelUpdate_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UnsignedChannelUpdates contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UnsignedNodeAnnouncement.
+ */
+ public long hash() {
+ long ret = bindings.UnsignedNodeAnnouncement_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UnsignedNodeAnnouncements contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
if (!(o is UntrustedString)) return false;
return this.eq((UntrustedString)o);
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UntrustedString.
+ */
+ public long hash() {
+ long ret = bindings.UntrustedString_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Serialize the UntrustedString object into a byte array which can be read by UntrustedString_read
*/
if (this != null) { this.ptrs_to.AddLast(val); };
}
+ /**
+ * The onion routing packet with encrypted data for the next hop.
+ */
+ public OnionPacket get_onion_routing_packet() {
+ long ret = bindings.UpdateAddHTLC_get_onion_routing_packet(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.OnionPacket ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.OnionPacket(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(this); };
+ return ret_hu_conv;
+ }
+
+ /**
+ * The onion routing packet with encrypted data for the next hop.
+ */
+ public void set_onion_routing_packet(org.ldk.structs.OnionPacket val) {
+ bindings.UpdateAddHTLC_set_onion_routing_packet(this.ptr, val == null ? 0 : val.ptr);
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ if (this != null) { this.ptrs_to.AddLast(val); };
+ }
+
+ /**
+ * Provided if we are relaying or receiving a payment within a blinded path, to decrypt the onion
+ * routing packet and the recipient-provided encrypted payload within.
+ *
+ * Note that the return value (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public byte[] get_blinding_point() {
+ long ret = bindings.UpdateAddHTLC_get_blinding_point(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
+ return ret_conv;
+ }
+
+ /**
+ * Provided if we are relaying or receiving a payment within a blinded path, to decrypt the onion
+ * routing packet and the recipient-provided encrypted payload within.
+ *
+ * Note that val (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public void set_blinding_point(byte[] val) {
+ bindings.UpdateAddHTLC_set_blinding_point(this.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(val, 33)));
+ GC.KeepAlive(this);
+ GC.KeepAlive(val);
+ }
+
+ /**
+ * Constructs a new UpdateAddHTLC given each field
+ *
+ * Note that blinding_point_arg (or a relevant inner pointer) may be NULL or all-0s to represent None
+ */
+ public static UpdateAddHTLC of(byte[] channel_id_arg, long htlc_id_arg, long amount_msat_arg, byte[] payment_hash_arg, int cltv_expiry_arg, org.ldk.structs.Option_u64Z skimmed_fee_msat_arg, org.ldk.structs.OnionPacket onion_routing_packet_arg, byte[] blinding_point_arg) {
+ long ret = bindings.UpdateAddHTLC_new(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(channel_id_arg, 32)), htlc_id_arg, amount_msat_arg, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_hash_arg, 32)), cltv_expiry_arg, skimmed_fee_msat_arg.ptr, onion_routing_packet_arg == null ? 0 : onion_routing_packet_arg.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(blinding_point_arg, 33)));
+ GC.KeepAlive(channel_id_arg);
+ GC.KeepAlive(htlc_id_arg);
+ GC.KeepAlive(amount_msat_arg);
+ GC.KeepAlive(payment_hash_arg);
+ GC.KeepAlive(cltv_expiry_arg);
+ GC.KeepAlive(skimmed_fee_msat_arg);
+ GC.KeepAlive(onion_routing_packet_arg);
+ GC.KeepAlive(blinding_point_arg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.UpdateAddHTLC ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.UpdateAddHTLC(null, ret); }
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(skimmed_fee_msat_arg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(onion_routing_packet_arg); };
+ return ret_hu_conv;
+ }
+
internal long clone_ptr() {
long ret = bindings.UpdateAddHTLC_clone_ptr(this.ptr);
GC.KeepAlive(this);
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UpdateAddHTLC.
+ */
+ public long hash() {
+ long ret = bindings.UpdateAddHTLC_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UpdateAddHTLCs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UpdateFailHTLC.
+ */
+ public long hash() {
+ long ret = bindings.UpdateFailHTLC_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UpdateFailHTLCs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UpdateFailMalformedHTLC.
+ */
+ public long hash() {
+ long ret = bindings.UpdateFailMalformedHTLC_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UpdateFailMalformedHTLCs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UpdateFee.
+ */
+ public long hash() {
+ long ret = bindings.UpdateFee_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UpdateFees contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the UpdateFulfillHTLC.
+ */
+ public long hash() {
+ long ret = bindings.UpdateFulfillHTLC_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two UpdateFulfillHTLCs contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
return ret_hu_conv;
}
+ /**
+ * Peel one layer off an incoming onion, returning a [`PendingHTLCInfo`] that contains information
+ * about the intended next-hop for the HTLC.
+ *
+ * This does all the relevant context-free checks that LDK requires for payment relay or
+ * acceptance. If the payment is to be received, and the amount matches the expected amount for
+ * a given invoice, this indicates the [`msgs::UpdateAddHTLC`], once fully committed in the
+ * channel, will generate an [`Event::PaymentClaimable`].
+ *
+ * [`Event::PaymentClaimable`]: crate::events::Event::PaymentClaimable
+ */
+ public static Result_PendingHTLCInfoInboundHTLCErrZ peel_payment_onion(org.ldk.structs.UpdateAddHTLC msg, org.ldk.structs.NodeSigner node_signer, org.ldk.structs.Logger logger, int cur_height, bool accept_mpp_keysend, bool allow_skimmed_fees) {
+ long ret = bindings.peel_payment_onion(msg == null ? 0 : msg.ptr, node_signer.ptr, logger.ptr, cur_height, accept_mpp_keysend, allow_skimmed_fees);
+ GC.KeepAlive(msg);
+ GC.KeepAlive(node_signer);
+ GC.KeepAlive(logger);
+ GC.KeepAlive(cur_height);
+ GC.KeepAlive(accept_mpp_keysend);
+ GC.KeepAlive(allow_skimmed_fees);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_PendingHTLCInfoInboundHTLCErrZ ret_hu_conv = Result_PendingHTLCInfoInboundHTLCErrZ.constr_from_ptr(ret);
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(msg); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(node_signer); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(logger); };
+ return ret_hu_conv;
+ }
+
/**
* Fetches the set of [`InitFeatures`] flags that are provided by or required by
* [`ChannelManager`].
return ret_conv;
}
- /**
- * Derives a per-commitment-transaction public key (eg an htlc key or a delayed_payment key)
- * from the base point and the per_commitment_key. This is the public equivalent of
- * derive_private_key - using only public keys to derive a public key instead of private keys.
- */
- public static byte[] derive_public_key(byte[] per_commitment_point, byte[] base_point) {
- long ret = bindings.derive_public_key(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(base_point, 33)));
- GC.KeepAlive(per_commitment_point);
- GC.KeepAlive(base_point);
- if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
- }
-
/**
* Derives a per-commitment-transaction revocation key from its constituent parts.
*
return ret_conv;
}
- /**
- * Derives a per-commitment-transaction revocation public key from its constituent parts. This is
- * the public equivalend of derive_private_revocation_key - using only public keys to derive a
- * public key instead of private keys.
- *
- * Only the cheating participant owns a valid witness to propagate a revoked
- * commitment transaction, thus per_commitment_point always come from cheater
- * and revocation_base_point always come from punisher, which is the broadcaster
- * of the transaction spending with this key knowledge.
- *
- * Note that this is infallible iff we trust that at least one of the two input keys are randomly
- * generated (ie our own).
- */
- public static byte[] derive_public_revocation_key(byte[] per_commitment_point, byte[] countersignatory_revocation_base_point) {
- long ret = bindings.derive_public_revocation_key(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(per_commitment_point, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(countersignatory_revocation_base_point, 33)));
- GC.KeepAlive(per_commitment_point);
- GC.KeepAlive(countersignatory_revocation_base_point);
- if (ret >= 0 && ret <= 4096) { return null; }
- byte[] ret_conv = InternalUtils.decodeUint8Array(ret);
- return ret_conv;
- }
-
/**
* A script either spendable by the revocation
* key or the broadcaster_delayed_payment_key and satisfying the relative-locktime OP_CSV constrain.
* Encumbering a `to_holder` output on a commitment transaction or 2nd-stage HTLC transactions.
*/
- public static byte[] get_revokeable_redeemscript(byte[] revocation_key, short contest_delay, byte[] broadcaster_delayed_payment_key) {
- long ret = bindings.get_revokeable_redeemscript(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(revocation_key, 33)), contest_delay, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(broadcaster_delayed_payment_key, 33)));
+ public static byte[] get_revokeable_redeemscript(org.ldk.structs.RevocationKey revocation_key, short contest_delay, org.ldk.structs.DelayedPaymentKey broadcaster_delayed_payment_key) {
+ long ret = bindings.get_revokeable_redeemscript(revocation_key == null ? 0 : revocation_key.ptr, contest_delay, broadcaster_delayed_payment_key == null ? 0 : broadcaster_delayed_payment_key.ptr);
GC.KeepAlive(revocation_key);
GC.KeepAlive(contest_delay);
GC.KeepAlive(broadcaster_delayed_payment_key);
* Panics if htlc.transaction_output_index.is_none() (as such HTLCs do not appear in the
* commitment transaction).
*/
- public static byte[] build_htlc_transaction(byte[] commitment_txid, int feerate_per_kw, short contest_delay, org.ldk.structs.HTLCOutputInCommitment htlc, org.ldk.structs.ChannelTypeFeatures channel_type_features, byte[] broadcaster_delayed_payment_key, byte[] revocation_key) {
- long ret = bindings.build_htlc_transaction(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(commitment_txid, 32)), feerate_per_kw, contest_delay, htlc == null ? 0 : htlc.ptr, channel_type_features == null ? 0 : channel_type_features.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(broadcaster_delayed_payment_key, 33)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(revocation_key, 33)));
+ public static byte[] build_htlc_transaction(byte[] commitment_txid, int feerate_per_kw, short contest_delay, org.ldk.structs.HTLCOutputInCommitment htlc, org.ldk.structs.ChannelTypeFeatures channel_type_features, org.ldk.structs.DelayedPaymentKey broadcaster_delayed_payment_key, org.ldk.structs.RevocationKey revocation_key) {
+ long ret = bindings.build_htlc_transaction(InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(commitment_txid, 32)), feerate_per_kw, contest_delay, htlc == null ? 0 : htlc.ptr, channel_type_features == null ? 0 : channel_type_features.ptr, broadcaster_delayed_payment_key == null ? 0 : broadcaster_delayed_payment_key.ptr, revocation_key == null ? 0 : revocation_key.ptr);
GC.KeepAlive(commitment_txid);
GC.KeepAlive(feerate_per_kw);
GC.KeepAlive(contest_delay);
*
* We do not enforce that outputs meet the dust limit or that any output scripts are standard.
*/
- public static Result_C2Tuple_CVec_u8ZusizeZNoneZ SpendableOutputDescriptor_create_spendable_outputs_psbt(SpendableOutputDescriptor[] descriptors, TxOut[] outputs, byte[] change_destination_script, int feerate_sat_per_1000_weight, org.ldk.structs.Option_u32Z locktime) {
+ public static Result_C2Tuple_CVec_u8Zu64ZNoneZ SpendableOutputDescriptor_create_spendable_outputs_psbt(SpendableOutputDescriptor[] descriptors, TxOut[] outputs, byte[] change_destination_script, int feerate_sat_per_1000_weight, org.ldk.structs.Option_u32Z locktime) {
long ret = bindings.SpendableOutputDescriptor_create_spendable_outputs_psbt(InternalUtils.encodeUint64Array(InternalUtils.mapArray(descriptors, descriptors_conv_27 => descriptors_conv_27.ptr)), InternalUtils.encodeUint64Array(InternalUtils.mapArray(outputs, outputs_conv_7 => outputs_conv_7.ptr)), InternalUtils.encodeUint8Array(change_destination_script), feerate_sat_per_1000_weight, locktime.ptr);
GC.KeepAlive(descriptors);
GC.KeepAlive(outputs);
GC.KeepAlive(feerate_sat_per_1000_weight);
GC.KeepAlive(locktime);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_CVec_u8ZusizeZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8ZusizeZNoneZ.constr_from_ptr(ret);
+ Result_C2Tuple_CVec_u8Zu64ZNoneZ ret_hu_conv = Result_C2Tuple_CVec_u8Zu64ZNoneZ.constr_from_ptr(ret);
foreach (SpendableOutputDescriptor descriptors_conv_27 in descriptors) { if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(descriptors_conv_27); }; };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(locktime); };
return ret_hu_conv;
* Creates an [`OnionMessage`] with the given `contents` for sending to the destination of
* `path`.
*
- * Returns both the node id of the peer to send the message to and the message itself.
+ * Returns the node id of the peer to send the message to, the message itself, and any addresses
+ * need to connect to the first node.
*
* Note that reply_path (or a relevant inner pointer) may be NULL or all-0s to represent None
*/
- public static Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ create_onion_message(org.ldk.structs.EntropySource entropy_source, org.ldk.structs.NodeSigner node_signer, org.ldk.structs.OnionMessagePath path, org.ldk.structs.OnionMessageContents contents, org.ldk.structs.BlindedPath reply_path) {
+ public static Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ create_onion_message(org.ldk.structs.EntropySource entropy_source, org.ldk.structs.NodeSigner node_signer, org.ldk.structs.OnionMessagePath path, org.ldk.structs.OnionMessageContents contents, org.ldk.structs.BlindedPath reply_path) {
long ret = bindings.create_onion_message(entropy_source.ptr, node_signer.ptr, path == null ? 0 : path.ptr, contents.ptr, reply_path == null ? 0 : reply_path.ptr);
GC.KeepAlive(entropy_source);
GC.KeepAlive(node_signer);
GC.KeepAlive(contents);
GC.KeepAlive(reply_path);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ ret_hu_conv = Result_C2Tuple_PublicKeyOnionMessageZSendErrorZ.constr_from_ptr(ret);
+ Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ ret_hu_conv = Result_C3Tuple_PublicKeyOnionMessageCOption_CVec_SocketAddressZZZSendErrorZ.constr_from_ptr(ret);
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(entropy_source); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(node_signer); };
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(path); };
return ret_hu_conv;
}
+ /**
+ * Create a blinded path for a payment, to be forwarded along `intermediate_nodes`.
+ *
+ * Errors if:
+ * a provided node id is invalid
+ * [`BlindedPayInfo`] calculation results in an integer overflow
+ * any unknown features are required in the provided [`ForwardTlvs`]
+ *
+ * [`ForwardTlvs`]: crate::blinded_path::payment::ForwardTlvs
+ */
+ public static Result_C2Tuple_BlindedPayInfoBlindedPathZNoneZ BlindedPath_new_for_payment(ForwardNode[] intermediate_nodes, byte[] payee_node_id, org.ldk.structs.ReceiveTlvs payee_tlvs, long htlc_maximum_msat, org.ldk.structs.EntropySource entropy_source) {
+ long ret = bindings.BlindedPath_new_for_payment(InternalUtils.encodeUint64Array(InternalUtils.mapArray(intermediate_nodes, intermediate_nodes_conv_13 => intermediate_nodes_conv_13 == null ? 0 : intermediate_nodes_conv_13.ptr)), InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payee_node_id, 33)), payee_tlvs == null ? 0 : payee_tlvs.ptr, htlc_maximum_msat, entropy_source.ptr);
+ GC.KeepAlive(intermediate_nodes);
+ GC.KeepAlive(payee_node_id);
+ GC.KeepAlive(payee_tlvs);
+ GC.KeepAlive(htlc_maximum_msat);
+ GC.KeepAlive(entropy_source);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_C2Tuple_BlindedPayInfoBlindedPathZNoneZ ret_hu_conv = Result_C2Tuple_BlindedPayInfoBlindedPathZNoneZ.constr_from_ptr(ret);
+ foreach (ForwardNode intermediate_nodes_conv_13 in intermediate_nodes) { if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(intermediate_nodes_conv_13); }; };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(payee_tlvs); };
+ if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(entropy_source); };
+ return ret_hu_conv;
+ }
+
/**
* Read a PathFailure from a byte array, created by PathFailure_write
*/
}
/**
- * Pays the given [`Bolt11Invoice`], retrying if needed based on [`Retry`].
- *
- * [`Bolt11Invoice::payment_hash`] is used as the [`PaymentId`], which ensures idempotency as long
- * as the payment is still pending. If the payment succeeds, you must ensure that a second payment
- * with the same [`PaymentHash`] is never sent.
- *
- * If you wish to use a different payment idempotency token, see [`pay_invoice_with_id`].
- */
- public static Result_ThirtyTwoBytesPaymentErrorZ pay_invoice(org.ldk.structs.Bolt11Invoice invoice, org.ldk.structs.Retry retry_strategy, org.ldk.structs.ChannelManager channelmanager) {
- long ret = bindings.pay_invoice(invoice == null ? 0 : invoice.ptr, retry_strategy.ptr, channelmanager == null ? 0 : channelmanager.ptr);
- GC.KeepAlive(invoice);
- GC.KeepAlive(retry_strategy);
- GC.KeepAlive(channelmanager);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_ThirtyTwoBytesPaymentErrorZ ret_hu_conv = Result_ThirtyTwoBytesPaymentErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(invoice); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(retry_strategy); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channelmanager); };
- return ret_hu_conv;
- }
-
- /**
- * Pays the given [`Bolt11Invoice`] with a custom idempotency key, retrying if needed based on
- * [`Retry`].
+ * Builds the necessary parameters to pay or pre-flight probe the given zero-amount
+ * [`Bolt11Invoice`] using [`ChannelManager::send_payment`] or
+ * [`ChannelManager::send_preflight_probes`].
*
- * Note that idempotency is only guaranteed as long as the payment is still pending. Once the
- * payment completes or fails, no idempotency guarantees are made.
+ * Prior to paying, you must ensure that the [`Bolt11Invoice::payment_hash`] is unique and the
+ * same [`PaymentHash`] has never been paid before.
*
- * You should ensure that the [`Bolt11Invoice::payment_hash`] is unique and the same
- * [`PaymentHash`] has never been paid before.
+ * Will always succeed unless the invoice has an amount specified, in which case
+ * [`payment_parameters_from_invoice`] should be used.
*
- * See [`pay_invoice`] for a variant which uses the [`PaymentHash`] for the idempotency token.
+ * [`ChannelManager::send_payment`]: lightning::ln::channelmanager::ChannelManager::send_payment
+ * [`ChannelManager::send_preflight_probes`]: lightning::ln::channelmanager::ChannelManager::send_preflight_probes
*/
- public static Result_NonePaymentErrorZ pay_invoice_with_id(org.ldk.structs.Bolt11Invoice invoice, byte[] payment_id, org.ldk.structs.Retry retry_strategy, org.ldk.structs.ChannelManager channelmanager) {
- long ret = bindings.pay_invoice_with_id(invoice == null ? 0 : invoice.ptr, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_id, 32)), retry_strategy.ptr, channelmanager == null ? 0 : channelmanager.ptr);
+ public static Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ payment_parameters_from_zero_amount_invoice(org.ldk.structs.Bolt11Invoice invoice, long amount_msat) {
+ long ret = bindings.payment_parameters_from_zero_amount_invoice(invoice == null ? 0 : invoice.ptr, amount_msat);
GC.KeepAlive(invoice);
- GC.KeepAlive(payment_id);
- GC.KeepAlive(retry_strategy);
- GC.KeepAlive(channelmanager);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_NonePaymentErrorZ ret_hu_conv = Result_NonePaymentErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(invoice); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(retry_strategy); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channelmanager); };
- return ret_hu_conv;
- }
-
- /**
- * Pays the given zero-value [`Bolt11Invoice`] using the given amount, retrying if needed based on
- * [`Retry`].
- *
- * [`Bolt11Invoice::payment_hash`] is used as the [`PaymentId`], which ensures idempotency as long
- * as the payment is still pending. If the payment succeeds, you must ensure that a second payment
- * with the same [`PaymentHash`] is never sent.
- *
- * If you wish to use a different payment idempotency token, see
- * [`pay_zero_value_invoice_with_id`].
- */
- public static Result_ThirtyTwoBytesPaymentErrorZ pay_zero_value_invoice(org.ldk.structs.Bolt11Invoice invoice, long amount_msats, org.ldk.structs.Retry retry_strategy, org.ldk.structs.ChannelManager channelmanager) {
- long ret = bindings.pay_zero_value_invoice(invoice == null ? 0 : invoice.ptr, amount_msats, retry_strategy.ptr, channelmanager == null ? 0 : channelmanager.ptr);
- GC.KeepAlive(invoice);
- GC.KeepAlive(amount_msats);
- GC.KeepAlive(retry_strategy);
- GC.KeepAlive(channelmanager);
+ GC.KeepAlive(amount_msat);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_ThirtyTwoBytesPaymentErrorZ ret_hu_conv = Result_ThirtyTwoBytesPaymentErrorZ.constr_from_ptr(ret);
+ Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ ret_hu_conv = Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ.constr_from_ptr(ret);
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(invoice); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(retry_strategy); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channelmanager); };
return ret_hu_conv;
}
/**
- * Pays the given zero-value [`Bolt11Invoice`] using the given amount and custom idempotency key,
- * retrying if needed based on [`Retry`].
+ * Builds the necessary parameters to pay or pre-flight probe the given [`Bolt11Invoice`] using
+ * [`ChannelManager::send_payment`] or [`ChannelManager::send_preflight_probes`].
*
- * Note that idempotency is only guaranteed as long as the payment is still pending. Once the
- * payment completes or fails, no idempotency guarantees are made.
+ * Prior to paying, you must ensure that the [`Bolt11Invoice::payment_hash`] is unique and the
+ * same [`PaymentHash`] has never been paid before.
*
- * You should ensure that the [`Bolt11Invoice::payment_hash`] is unique and the same
- * [`PaymentHash`] has never been paid before.
+ * Will always succeed unless the invoice has no amount specified, in which case
+ * [`payment_parameters_from_zero_amount_invoice`] should be used.
*
- * See [`pay_zero_value_invoice`] for a variant which uses the [`PaymentHash`] for the
- * idempotency token.
+ * [`ChannelManager::send_payment`]: lightning::ln::channelmanager::ChannelManager::send_payment
+ * [`ChannelManager::send_preflight_probes`]: lightning::ln::channelmanager::ChannelManager::send_preflight_probes
*/
- public static Result_NonePaymentErrorZ pay_zero_value_invoice_with_id(org.ldk.structs.Bolt11Invoice invoice, long amount_msats, byte[] payment_id, org.ldk.structs.Retry retry_strategy, org.ldk.structs.ChannelManager channelmanager) {
- long ret = bindings.pay_zero_value_invoice_with_id(invoice == null ? 0 : invoice.ptr, amount_msats, InternalUtils.encodeUint8Array(InternalUtils.check_arr_len(payment_id, 32)), retry_strategy.ptr, channelmanager == null ? 0 : channelmanager.ptr);
+ public static Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ payment_parameters_from_invoice(org.ldk.structs.Bolt11Invoice invoice) {
+ long ret = bindings.payment_parameters_from_invoice(invoice == null ? 0 : invoice.ptr);
GC.KeepAlive(invoice);
- GC.KeepAlive(amount_msats);
- GC.KeepAlive(payment_id);
- GC.KeepAlive(retry_strategy);
- GC.KeepAlive(channelmanager);
if (ret >= 0 && ret <= 4096) { return null; }
- Result_NonePaymentErrorZ ret_hu_conv = Result_NonePaymentErrorZ.constr_from_ptr(ret);
+ Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ ret_hu_conv = Result_C3Tuple_ThirtyTwoBytesRecipientOnionFieldsRouteParametersZNoneZ.constr_from_ptr(ret);
if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(invoice); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(retry_strategy); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channelmanager); };
- return ret_hu_conv;
- }
-
- /**
- * Sends payment probes over all paths of a route that would be used to pay the given invoice.
- *
- * See [`ChannelManager::send_preflight_probes`] for more information.
- */
- public static Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ preflight_probe_invoice(org.ldk.structs.Bolt11Invoice invoice, org.ldk.structs.ChannelManager channelmanager, org.ldk.structs.Option_u64Z liquidity_limit_multiplier) {
- long ret = bindings.preflight_probe_invoice(invoice == null ? 0 : invoice.ptr, channelmanager == null ? 0 : channelmanager.ptr, liquidity_limit_multiplier.ptr);
- GC.KeepAlive(invoice);
- GC.KeepAlive(channelmanager);
- GC.KeepAlive(liquidity_limit_multiplier);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ ret_hu_conv = Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(invoice); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channelmanager); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(liquidity_limit_multiplier); };
- return ret_hu_conv;
- }
-
- /**
- * Sends payment probes over all paths of a route that would be used to pay the given zero-value
- * invoice using the given amount.
- *
- * See [`ChannelManager::send_preflight_probes`] for more information.
- */
- public static Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ preflight_probe_zero_value_invoice(org.ldk.structs.Bolt11Invoice invoice, long amount_msat, org.ldk.structs.ChannelManager channelmanager, org.ldk.structs.Option_u64Z liquidity_limit_multiplier) {
- long ret = bindings.preflight_probe_zero_value_invoice(invoice == null ? 0 : invoice.ptr, amount_msat, channelmanager == null ? 0 : channelmanager.ptr, liquidity_limit_multiplier.ptr);
- GC.KeepAlive(invoice);
- GC.KeepAlive(amount_msat);
- GC.KeepAlive(channelmanager);
- GC.KeepAlive(liquidity_limit_multiplier);
- if (ret >= 0 && ret <= 4096) { return null; }
- Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ ret_hu_conv = Result_CVec_C2Tuple_ThirtyTwoBytesThirtyTwoBytesZZProbingErrorZ.constr_from_ptr(ret);
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(invoice); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(channelmanager); };
- if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(liquidity_limit_multiplier); };
return ret_hu_conv;
}
/**Signs and provides the full [`TxIn::script_sig`] and [`TxIn::witness`] for all inputs within
* the transaction known to the wallet (i.e., any provided via
* [`WalletSource::list_confirmed_utxos`]).
+ *
+ * If your wallet does not support signing PSBTs you can call `psbt.extract_tx()` to get the
+ * unsigned transaction and then sign it with your wallet.
*/
- Result_TransactionNoneZ sign_tx(byte[] tx);
+ Result_TransactionNoneZ sign_psbt(byte[] psbt);
}
/**
long result = ret == null ? 0 : ret.clone_ptr();
return result;
}
- public long sign_tx(long _tx) {
- byte[] _tx_conv = InternalUtils.decodeUint8Array(_tx);
- Result_TransactionNoneZ ret = arg.sign_tx(_tx_conv);
+ public long sign_psbt(long _psbt) {
+ byte[] _psbt_conv = InternalUtils.decodeUint8Array(_psbt);
+ Result_TransactionNoneZ ret = arg.sign_psbt(_psbt_conv);
GC.KeepAlive(arg);
long result = ret == null ? 0 : ret.clone_ptr();
return result;
* Signs and provides the full [`TxIn::script_sig`] and [`TxIn::witness`] for all inputs within
* the transaction known to the wallet (i.e., any provided via
* [`WalletSource::list_confirmed_utxos`]).
+ *
+ * If your wallet does not support signing PSBTs you can call `psbt.extract_tx()` to get the
+ * unsigned transaction and then sign it with your wallet.
*/
- public Result_TransactionNoneZ sign_tx(byte[] tx) {
- long ret = bindings.WalletSource_sign_tx(this.ptr, InternalUtils.encodeUint8Array(tx));
+ public Result_TransactionNoneZ sign_psbt(byte[] psbt) {
+ long ret = bindings.WalletSource_sign_psbt(this.ptr, InternalUtils.encodeUint8Array(psbt));
GC.KeepAlive(this);
- GC.KeepAlive(tx);
+ GC.KeepAlive(psbt);
if (ret >= 0 && ret <= 4096) { return null; }
Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret);
return ret_hu_conv;
return ret_hu_conv;
}
+ /**
+ * Generates a non-cryptographic 64-bit hash of the WarningMessage.
+ */
+ public long hash() {
+ long ret = bindings.WarningMessage_hash(this.ptr);
+ GC.KeepAlive(this);
+ return ret;
+ }
+
+ public override int GetHashCode() {
+ return (int)this.hash();
+ }
/**
* Checks if two WarningMessages contain equal inner contents.
* This ignores pointers and is_owned flags and looks at the values in fields.
--- /dev/null
+using org.ldk.impl;
+using org.ldk.enums;
+using org.ldk.util;
+using System;
+
+namespace org { namespace ldk { namespace structs {
+
+public class WitnessProgram : CommonBase {
+ /** The witness program bytes themselves */
+ public readonly byte[] program;
+ /** The witness version */
+ public readonly WitnessVersion version;
+
+ internal WitnessProgram(object _dummy, long ptr) : base(ptr) {
+ this.program = InternalUtils.decodeUint8Array(bindings.WitnessProgram_get_program(ptr));
+ this.version = new WitnessVersion(bindings.WitnessProgram_get_version(ptr));
+ }
+ static private long check_args(byte[] program, WitnessVersion version) {
+ if (program.Length < 2 || program.Length > 40) throw new ArgumentException();
+ if (version.getVal() == 0 && program.Length != 20 && program.Length != 32) throw new ArgumentException();
+ return InternalUtils.encodeUint8Array(program);
+ }
+ public WitnessProgram(byte[] program, WitnessVersion version) :
+ this(null, bindings.WitnessProgram_new(version.getVal(), check_args(program, version))) {}
+
+ ~WitnessProgram() {
+ if (ptr != 0) { bindings.WitnessProgram_free(ptr); }
+ }
+}} } }