@@ -595,6 +595,78 @@ typedef struct LDKCResult_boolPeerHandleErrorZ {
595595
596596
597597
598+ /**
599+ * Features used within an `init` message.
600+ */
601+ typedef struct MUST_USE_STRUCT LDKInitFeatures {
602+ /**
603+ * Nearly everywhere, inner must be non-null, however in places where
604+ * the Rust equivalent takes an Option, it may be set to null to indicate None.
605+ */
606+ LDKnativeInitFeatures * inner ;
607+ bool is_owned ;
608+ } LDKInitFeatures ;
609+
610+ typedef union LDKCResult_InitFeaturesDecodeErrorZPtr {
611+ struct LDKInitFeatures * result ;
612+ struct LDKDecodeError * err ;
613+ } LDKCResult_InitFeaturesDecodeErrorZPtr ;
614+
615+ typedef struct LDKCResult_InitFeaturesDecodeErrorZ {
616+ union LDKCResult_InitFeaturesDecodeErrorZPtr contents ;
617+ bool result_ok ;
618+ } LDKCResult_InitFeaturesDecodeErrorZ ;
619+
620+
621+
622+ /**
623+ * Features used within a `node_announcement` message.
624+ */
625+ typedef struct MUST_USE_STRUCT LDKNodeFeatures {
626+ /**
627+ * Nearly everywhere, inner must be non-null, however in places where
628+ * the Rust equivalent takes an Option, it may be set to null to indicate None.
629+ */
630+ LDKnativeNodeFeatures * inner ;
631+ bool is_owned ;
632+ } LDKNodeFeatures ;
633+
634+ typedef union LDKCResult_NodeFeaturesDecodeErrorZPtr {
635+ struct LDKNodeFeatures * result ;
636+ struct LDKDecodeError * err ;
637+ } LDKCResult_NodeFeaturesDecodeErrorZPtr ;
638+
639+ typedef struct LDKCResult_NodeFeaturesDecodeErrorZ {
640+ union LDKCResult_NodeFeaturesDecodeErrorZPtr contents ;
641+ bool result_ok ;
642+ } LDKCResult_NodeFeaturesDecodeErrorZ ;
643+
644+
645+
646+ /**
647+ * Features used within a `channel_announcement` message.
648+ */
649+ typedef struct MUST_USE_STRUCT LDKChannelFeatures {
650+ /**
651+ * Nearly everywhere, inner must be non-null, however in places where
652+ * the Rust equivalent takes an Option, it may be set to null to indicate None.
653+ */
654+ LDKnativeChannelFeatures * inner ;
655+ bool is_owned ;
656+ } LDKChannelFeatures ;
657+
658+ typedef union LDKCResult_ChannelFeaturesDecodeErrorZPtr {
659+ struct LDKChannelFeatures * result ;
660+ struct LDKDecodeError * err ;
661+ } LDKCResult_ChannelFeaturesDecodeErrorZPtr ;
662+
663+ typedef struct LDKCResult_ChannelFeaturesDecodeErrorZ {
664+ union LDKCResult_ChannelFeaturesDecodeErrorZPtr contents ;
665+ bool result_ok ;
666+ } LDKCResult_ChannelFeaturesDecodeErrorZ ;
667+
668+
669+
598670/**
599671 * Options which apply on a per-channel basis and may change at runtime or based on negotiation
600672 * with our counterparty.
@@ -3388,20 +3460,6 @@ typedef struct MUST_USE_STRUCT LDKKeysManager {
33883460 bool is_owned ;
33893461} LDKKeysManager ;
33903462
3391-
3392-
3393- /**
3394- * Features used within an `init` message.
3395- */
3396- typedef struct MUST_USE_STRUCT LDKInitFeatures {
3397- /**
3398- * Nearly everywhere, inner must be non-null, however in places where
3399- * the Rust equivalent takes an Option, it may be set to null to indicate None.
3400- */
3401- LDKnativeInitFeatures * inner ;
3402- bool is_owned ;
3403- } LDKInitFeatures ;
3404-
34053463typedef struct LDKThreeBytes {
34063464 uint8_t data [3 ];
34073465} LDKThreeBytes ;
@@ -3541,34 +3599,6 @@ typedef struct MUST_USE_STRUCT LDKDataLossProtect {
35413599 bool is_owned ;
35423600} LDKDataLossProtect ;
35433601
3544-
3545-
3546- /**
3547- * Features used within a `node_announcement` message.
3548- */
3549- typedef struct MUST_USE_STRUCT LDKNodeFeatures {
3550- /**
3551- * Nearly everywhere, inner must be non-null, however in places where
3552- * the Rust equivalent takes an Option, it may be set to null to indicate None.
3553- */
3554- LDKnativeNodeFeatures * inner ;
3555- bool is_owned ;
3556- } LDKNodeFeatures ;
3557-
3558-
3559-
3560- /**
3561- * Features used within a `channel_announcement` message.
3562- */
3563- typedef struct MUST_USE_STRUCT LDKChannelFeatures {
3564- /**
3565- * Nearly everywhere, inner must be non-null, however in places where
3566- * the Rust equivalent takes an Option, it may be set to null to indicate None.
3567- */
3568- LDKnativeChannelFeatures * inner ;
3569- bool is_owned ;
3570- } LDKChannelFeatures ;
3571-
35723602/**
35733603 * A trait to describe an object which can receive routing messages.
35743604 *
@@ -3916,6 +3946,24 @@ void CResult_boolPeerHandleErrorZ_free(struct LDKCResult_boolPeerHandleErrorZ _r
39163946
39173947struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_clone (const struct LDKCResult_boolPeerHandleErrorZ * NONNULL_PTR orig );
39183948
3949+ struct LDKCResult_InitFeaturesDecodeErrorZ CResult_InitFeaturesDecodeErrorZ_ok (struct LDKInitFeatures o );
3950+
3951+ struct LDKCResult_InitFeaturesDecodeErrorZ CResult_InitFeaturesDecodeErrorZ_err (struct LDKDecodeError e );
3952+
3953+ void CResult_InitFeaturesDecodeErrorZ_free (struct LDKCResult_InitFeaturesDecodeErrorZ _res );
3954+
3955+ struct LDKCResult_NodeFeaturesDecodeErrorZ CResult_NodeFeaturesDecodeErrorZ_ok (struct LDKNodeFeatures o );
3956+
3957+ struct LDKCResult_NodeFeaturesDecodeErrorZ CResult_NodeFeaturesDecodeErrorZ_err (struct LDKDecodeError e );
3958+
3959+ void CResult_NodeFeaturesDecodeErrorZ_free (struct LDKCResult_NodeFeaturesDecodeErrorZ _res );
3960+
3961+ struct LDKCResult_ChannelFeaturesDecodeErrorZ CResult_ChannelFeaturesDecodeErrorZ_ok (struct LDKChannelFeatures o );
3962+
3963+ struct LDKCResult_ChannelFeaturesDecodeErrorZ CResult_ChannelFeaturesDecodeErrorZ_err (struct LDKDecodeError e );
3964+
3965+ void CResult_ChannelFeaturesDecodeErrorZ_free (struct LDKCResult_ChannelFeaturesDecodeErrorZ _res );
3966+
39193967struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_ok (struct LDKChannelConfig o );
39203968
39213969struct LDKCResult_ChannelConfigDecodeErrorZ CResult_ChannelConfigDecodeErrorZ_err (struct LDKDecodeError e );
@@ -8184,6 +8232,54 @@ void NodeFeatures_free(struct LDKNodeFeatures this_ptr);
81848232
81858233void ChannelFeatures_free (struct LDKChannelFeatures this_ptr );
81868234
8235+ /**
8236+ * Create a blank Features with no features set
8237+ */
8238+ MUST_USE_RES struct LDKInitFeatures InitFeatures_empty (void );
8239+
8240+ /**
8241+ * Creates features known by the implementation as defined by [`T::KNOWN_FEATURE_FLAGS`].
8242+ *
8243+ * [`T::KNOWN_FEATURE_FLAGS`]: sealed/trait.Context.html#associatedconstant.KNOWN_FEATURE_FLAGS
8244+ */
8245+ MUST_USE_RES struct LDKInitFeatures InitFeatures_known (void );
8246+
8247+ /**
8248+ * Create a blank Features with no features set
8249+ */
8250+ MUST_USE_RES struct LDKNodeFeatures NodeFeatures_empty (void );
8251+
8252+ /**
8253+ * Creates features known by the implementation as defined by [`T::KNOWN_FEATURE_FLAGS`].
8254+ *
8255+ * [`T::KNOWN_FEATURE_FLAGS`]: sealed/trait.Context.html#associatedconstant.KNOWN_FEATURE_FLAGS
8256+ */
8257+ MUST_USE_RES struct LDKNodeFeatures NodeFeatures_known (void );
8258+
8259+ /**
8260+ * Create a blank Features with no features set
8261+ */
8262+ MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_empty (void );
8263+
8264+ /**
8265+ * Creates features known by the implementation as defined by [`T::KNOWN_FEATURE_FLAGS`].
8266+ *
8267+ * [`T::KNOWN_FEATURE_FLAGS`]: sealed/trait.Context.html#associatedconstant.KNOWN_FEATURE_FLAGS
8268+ */
8269+ MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_known (void );
8270+
8271+ struct LDKCVec_u8Z InitFeatures_write (const struct LDKInitFeatures * NONNULL_PTR obj );
8272+
8273+ struct LDKCVec_u8Z NodeFeatures_write (const struct LDKNodeFeatures * NONNULL_PTR obj );
8274+
8275+ struct LDKCVec_u8Z ChannelFeatures_write (const struct LDKChannelFeatures * NONNULL_PTR obj );
8276+
8277+ struct LDKCResult_InitFeaturesDecodeErrorZ InitFeatures_read (struct LDKu8slice ser );
8278+
8279+ struct LDKCResult_NodeFeaturesDecodeErrorZ NodeFeatures_read (struct LDKu8slice ser );
8280+
8281+ struct LDKCResult_ChannelFeaturesDecodeErrorZ ChannelFeatures_read (struct LDKu8slice ser );
8282+
81878283void RouteHop_free (struct LDKRouteHop this_ptr );
81888284
81898285/**
0 commit comments