3 // Forward declarations
6 class ChannelPublicKeys;
7 class HTLCOutputInCommitment;
8 class ChannelTransactionParameters;
9 class CounterpartyChannelTransactionParameters;
10 class DirectedChannelTransactionParameters;
11 class HolderCommitmentTransaction;
12 class BuiltCommitmentTransaction;
13 class ClosingTransaction;
14 class TrustedClosingTransaction;
15 class CommitmentTransaction;
16 class TrustedCommitmentTransaction;
18 class InvalidShutdownScript;
19 class BackgroundProcessor;
20 class ChannelManagerPersister;
25 class BroadcasterInterface;
26 class ConfirmationTarget;
39 class MessageSendEvent;
40 class MessageSendEventsProvider;
45 class ChannelFeatures;
46 class InvoiceFeatures;
47 class DelayedPaymentOutputDescriptor;
48 class StaticPaymentOutputDescriptor;
49 class SpendableOutputDescriptor;
55 class FilesystemPersister;
57 class ChainParameters;
58 class CounterpartyForwardingInfo;
59 class ChannelCounterparty;
61 class PaymentSendFailure;
62 class ChannelManagerReadArgs;
63 class ChannelHandshakeConfig;
64 class ChannelHandshakeLimits;
69 class CustomMessageReader;
72 class SignedRawInvoice;
75 class PositiveTimestamp;
82 class MinFinalCltvExpiry;
84 class InvoiceSignature;
88 class SignOrCreationError;
89 class ChannelMonitorUpdate;
90 class ChannelMonitorUpdateErr;
91 class MonitorUpdateError;
97 class CustomMessageHandler;
98 class IgnoringMessageHandler;
99 class ErroringMessageHandler;
100 class MessageHandler;
101 class SocketDescriptor;
102 class PeerHandleError;
105 class ReadOnlyNetworkGraph;
107 class NetGraphMsgHandler;
108 class DirectionalChannelInfo;
111 class NodeAnnouncementInfo;
120 class FundingCreated;
124 class ClosingSignedFeeRange;
127 class UpdateFulfillHTLC;
128 class UpdateFailHTLC;
129 class UpdateFailMalformedHTLC;
130 class CommitmentSigned;
133 class DataLossProtect;
134 class ChannelReestablish;
135 class AnnouncementSignatures;
137 class UnsignedNodeAnnouncement;
138 class NodeAnnouncement;
139 class UnsignedChannelAnnouncement;
140 class ChannelAnnouncement;
141 class UnsignedChannelUpdate;
143 class QueryChannelRange;
144 class ReplyChannelRange;
145 class QueryShortChannelIds;
146 class ReplyShortChannelIdsEnd;
147 class GossipTimestampFilter;
149 class LightningError;
150 class CommitmentUpdate;
151 class ChannelMessageHandler;
152 class RoutingMessageHandler;
156 class CVec_SpendableOutputDescriptorZ;
157 class CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ;
158 class CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ;
159 class CResult_HTLCUpdateDecodeErrorZ;
160 class C2Tuple_SignatureCVec_SignatureZZ;
161 class CVec_C2Tuple_u32TxOutZZ;
162 class CResult_ChannelInfoDecodeErrorZ;
163 class CResult_FundingCreatedDecodeErrorZ;
164 class CResult_ChannelAnnouncementDecodeErrorZ;
165 class CResult_PositiveTimestampCreationErrorZ;
166 class CResult_CVec_u8ZPeerHandleErrorZ;
167 class CResult_InvoiceFeaturesDecodeErrorZ;
168 class COption_NetworkUpdateZ;
170 class CResult_TxOutAccessErrorZ;
171 class CResult_TrustedClosingTransactionNoneZ;
172 class CResult_ChannelMonitorUpdateDecodeErrorZ;
173 class C2Tuple_PublicKeyTypeZ;
174 class CResult_NetAddressDecodeErrorZ;
175 class CResult_ChannelReestablishDecodeErrorZ;
176 class CResult_UnsignedNodeAnnouncementDecodeErrorZ;
177 class CResult_ReplyChannelRangeDecodeErrorZ;
178 class CResult_CommitmentSignedDecodeErrorZ;
179 class CVec_UpdateAddHTLCZ;
180 class CResult_GossipTimestampFilterDecodeErrorZ;
182 class CResult_InitFeaturesDecodeErrorZ;
183 class CResult_StaticPaymentOutputDescriptorDecodeErrorZ;
184 class CResult_InvoiceSignOrCreationErrorZ;
185 class COption_FilterZ;
186 class CResult_CommitmentTransactionDecodeErrorZ;
187 class COption_C2Tuple_usizeTransactionZZ;
188 class CResult_TransactionNoneZ;
189 class CResult_SignedRawInvoiceNoneZ;
190 class CResult_ExpiryTimeCreationErrorZ;
191 class CResult_ClosingSignedFeeRangeDecodeErrorZ;
192 class CResult_PingDecodeErrorZ;
193 class CVec_TransactionOutputsZ;
194 class CResult_ErrorMessageDecodeErrorZ;
195 class CResult_OpenChannelDecodeErrorZ;
196 class CVec_CVec_u8ZZ;
197 class CResult_SecretKeyErrorZ;
198 class CResult_ShutdownScriptDecodeErrorZ;
199 class CResult_InvoiceNoneZ;
200 class CResult_QueryChannelRangeDecodeErrorZ;
201 class CResult_TxCreationKeysDecodeErrorZ;
202 class C2Tuple_usizeTransactionZ;
203 class CResult_ChannelFeaturesDecodeErrorZ;
204 class CVec_ChannelMonitorZ;
205 class CVec_TransactionZ;
206 class CResult_UpdateFeeDecodeErrorZ;
207 class CResult_RouteHopDecodeErrorZ;
208 class CResult_NodeAnnouncementDecodeErrorZ;
210 class CResult_HTLCOutputInCommitmentDecodeErrorZ;
211 class CResult_boolLightningErrorZ;
212 class CResult_TxCreationKeysErrorZ;
213 class C2Tuple_BlockHashChannelMonitorZ;
214 class CResult_FundingSignedDecodeErrorZ;
215 class CResult_ShutdownScriptInvalidShutdownScriptZ;
216 class CResult_RecoverableSignatureNoneZ;
217 class CResult_NodeAnnouncementInfoDecodeErrorZ;
218 class CResult_NetAddressu8Z;
219 class C3Tuple_RawInvoice_u832InvoiceSignatureZ;
220 class CVec_UpdateFailMalformedHTLCZ;
221 class CResult_NetworkGraphDecodeErrorZ;
222 class CVec_RouteHopZ;
223 class CVec_C2Tuple_BlockHashChannelMonitorZZ;
224 class CResult_NonePaymentSendFailureZ;
225 class CResult_RouteLightningErrorZ;
226 class CResult_ChannelPublicKeysDecodeErrorZ;
228 class CResult_NodeInfoDecodeErrorZ;
229 class CResult_ClosingSignedDecodeErrorZ;
230 class CResult_HolderCommitmentTransactionDecodeErrorZ;
231 class CVec_CResult_NoneAPIErrorZZ;
232 class CResult_SignatureNoneZ;
233 class C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ;
234 class CResult_InitDecodeErrorZ;
235 class CResult_OutPointDecodeErrorZ;
236 class CVec_ChannelDetailsZ;
237 class CResult_SignDecodeErrorZ;
238 class CVec_MessageSendEventZ;
239 class C2Tuple_OutPointScriptZ;
240 class CResult_UpdateFailMalformedHTLCDecodeErrorZ;
241 class CVec_NodeAnnouncementZ;
242 class CResult_UnsignedChannelAnnouncementDecodeErrorZ;
244 class CResult_NoneMonitorUpdateErrorZ;
245 class CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ;
246 class CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ;
247 class CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ;
248 class CResult_CVec_CVec_u8ZZNoneZ;
249 class C2Tuple_PaymentHashPaymentSecretZ;
250 class COption_AccessZ;
251 class C2Tuple_BlockHashChannelManagerZ;
252 class CResult_ChannelTransactionParametersDecodeErrorZ;
253 class CResult_AcceptChannelDecodeErrorZ;
254 class CVec_SignatureZ;
256 class CResult_PongDecodeErrorZ;
257 class CResult_DelayedPaymentOutputDescriptorDecodeErrorZ;
258 class CResult_StringErrorZ;
259 class CResult_NoneErrorZ;
260 class C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ;
261 class CVec_RouteHintZ;
263 class CVec_CVec_RouteHopZZ;
264 class CResult_TrustedCommitmentTransactionNoneZ;
265 class CResult_NoneLightningErrorZ;
266 class CResult_NonePeerHandleErrorZ;
267 class CResult_CVec_SignatureZNoneZ;
268 class CResult_DescriptionCreationErrorZ;
269 class CVec_C2Tuple_PublicKeyTypeZZ;
270 class CResult_RoutingFeesDecodeErrorZ;
271 class CResult_PayeePubKeyErrorZ;
272 class CResult_QueryShortChannelIdsDecodeErrorZ;
273 class CResult_InvoiceSemanticErrorZ;
274 class CResult_UpdateAddHTLCDecodeErrorZ;
275 class CResult_CounterpartyChannelTransactionParametersDecodeErrorZ;
276 class CResult_NoneAPIErrorZ;
277 class CVec_NetAddressZ;
278 class CVec_C2Tuple_usizeTransactionZZ;
279 class CVec_PublicKeyZ;
281 class CResult_COption_TypeZDecodeErrorZ;
282 class CResult_DirectionalChannelInfoDecodeErrorZ;
283 class C2Tuple_u32TxOutZ;
284 class CResult_UpdateFailHTLCDecodeErrorZ;
285 class CResult_ChannelConfigDecodeErrorZ;
286 class CVec_PrivateRouteZ;
287 class CResult_SpendableOutputDescriptorDecodeErrorZ;
288 class CResult_RevokeAndACKDecodeErrorZ;
289 class CResult_UnsignedChannelUpdateDecodeErrorZ;
290 class CResult_ShutdownDecodeErrorZ;
292 class CResult_NoneSemanticErrorZ;
293 class CVec_MonitorEventZ;
294 class CVec_C2Tuple_u32ScriptZZ;
295 class CResult_NoneChannelMonitorUpdateErrZ;
296 class CResult_PaymentHashPaymentSendFailureZ;
297 class CResult_SiPrefixNoneZ;
298 class CResult_PublicKeyErrorZ;
299 class C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ;
300 class CResult_NoneNoneZ;
301 class CResult_PrivateRouteCreationErrorZ;
302 class CResult_boolPeerHandleErrorZ;
303 class CVec_APIErrorZ;
304 class CResult_ChannelUpdateDecodeErrorZ;
305 class CVec_UpdateFulfillHTLCZ;
306 class CResult_AnnouncementSignaturesDecodeErrorZ;
307 class CResult_UpdateFulfillHTLCDecodeErrorZ;
308 class CResult_NodeFeaturesDecodeErrorZ;
309 class CResult_InMemorySignerDecodeErrorZ;
310 class CResult_PaymentSecretAPIErrorZ;
311 class C2Tuple_u32ScriptZ;
312 class CResult_CResult_NetAddressu8ZDecodeErrorZ;
313 class CResult_ReplyShortChannelIdsEndDecodeErrorZ;
314 class CResult_RouteDecodeErrorZ;
315 class CResult_BuiltCommitmentTransactionDecodeErrorZ;
316 class CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ;
318 class CVec_UpdateFailHTLCZ;
319 class CResult_FundingLockedDecodeErrorZ;
325 Str(const Str&) = delete;
326 Str(Str&& o) : self(o.self) { memset(&o, 0, sizeof(Str)); }
327 Str(LDKStr&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKStr)); }
328 operator LDKStr() && { LDKStr res = self; memset(&self, 0, sizeof(LDKStr)); return res; }
329 ~Str() { Str_free(self); }
330 Str& operator=(Str&& o) { Str_free(self); self = o.self; memset(&o, 0, sizeof(Str)); return *this; }
331 LDKStr* operator &() { return &self; }
332 LDKStr* operator ->() { return &self; }
333 const LDKStr* operator &() const { return &self; }
334 const LDKStr* operator ->() const { return &self; }
336 class TxCreationKeys {
338 LDKTxCreationKeys self;
340 TxCreationKeys(const TxCreationKeys&) = delete;
341 TxCreationKeys(TxCreationKeys&& o) : self(o.self) { memset(&o, 0, sizeof(TxCreationKeys)); }
342 TxCreationKeys(LDKTxCreationKeys&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKTxCreationKeys)); }
343 operator LDKTxCreationKeys() && { LDKTxCreationKeys res = self; memset(&self, 0, sizeof(LDKTxCreationKeys)); return res; }
344 ~TxCreationKeys() { TxCreationKeys_free(self); }
345 TxCreationKeys& operator=(TxCreationKeys&& o) { TxCreationKeys_free(self); self = o.self; memset(&o, 0, sizeof(TxCreationKeys)); return *this; }
346 LDKTxCreationKeys* operator &() { return &self; }
347 LDKTxCreationKeys* operator ->() { return &self; }
348 const LDKTxCreationKeys* operator &() const { return &self; }
349 const LDKTxCreationKeys* operator ->() const { return &self; }
351 class ChannelPublicKeys {
353 LDKChannelPublicKeys self;
355 ChannelPublicKeys(const ChannelPublicKeys&) = delete;
356 ChannelPublicKeys(ChannelPublicKeys&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelPublicKeys)); }
357 ChannelPublicKeys(LDKChannelPublicKeys&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelPublicKeys)); }
358 operator LDKChannelPublicKeys() && { LDKChannelPublicKeys res = self; memset(&self, 0, sizeof(LDKChannelPublicKeys)); return res; }
359 ~ChannelPublicKeys() { ChannelPublicKeys_free(self); }
360 ChannelPublicKeys& operator=(ChannelPublicKeys&& o) { ChannelPublicKeys_free(self); self = o.self; memset(&o, 0, sizeof(ChannelPublicKeys)); return *this; }
361 LDKChannelPublicKeys* operator &() { return &self; }
362 LDKChannelPublicKeys* operator ->() { return &self; }
363 const LDKChannelPublicKeys* operator &() const { return &self; }
364 const LDKChannelPublicKeys* operator ->() const { return &self; }
366 class HTLCOutputInCommitment {
368 LDKHTLCOutputInCommitment self;
370 HTLCOutputInCommitment(const HTLCOutputInCommitment&) = delete;
371 HTLCOutputInCommitment(HTLCOutputInCommitment&& o) : self(o.self) { memset(&o, 0, sizeof(HTLCOutputInCommitment)); }
372 HTLCOutputInCommitment(LDKHTLCOutputInCommitment&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKHTLCOutputInCommitment)); }
373 operator LDKHTLCOutputInCommitment() && { LDKHTLCOutputInCommitment res = self; memset(&self, 0, sizeof(LDKHTLCOutputInCommitment)); return res; }
374 ~HTLCOutputInCommitment() { HTLCOutputInCommitment_free(self); }
375 HTLCOutputInCommitment& operator=(HTLCOutputInCommitment&& o) { HTLCOutputInCommitment_free(self); self = o.self; memset(&o, 0, sizeof(HTLCOutputInCommitment)); return *this; }
376 LDKHTLCOutputInCommitment* operator &() { return &self; }
377 LDKHTLCOutputInCommitment* operator ->() { return &self; }
378 const LDKHTLCOutputInCommitment* operator &() const { return &self; }
379 const LDKHTLCOutputInCommitment* operator ->() const { return &self; }
381 class ChannelTransactionParameters {
383 LDKChannelTransactionParameters self;
385 ChannelTransactionParameters(const ChannelTransactionParameters&) = delete;
386 ChannelTransactionParameters(ChannelTransactionParameters&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelTransactionParameters)); }
387 ChannelTransactionParameters(LDKChannelTransactionParameters&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelTransactionParameters)); }
388 operator LDKChannelTransactionParameters() && { LDKChannelTransactionParameters res = self; memset(&self, 0, sizeof(LDKChannelTransactionParameters)); return res; }
389 ~ChannelTransactionParameters() { ChannelTransactionParameters_free(self); }
390 ChannelTransactionParameters& operator=(ChannelTransactionParameters&& o) { ChannelTransactionParameters_free(self); self = o.self; memset(&o, 0, sizeof(ChannelTransactionParameters)); return *this; }
391 LDKChannelTransactionParameters* operator &() { return &self; }
392 LDKChannelTransactionParameters* operator ->() { return &self; }
393 const LDKChannelTransactionParameters* operator &() const { return &self; }
394 const LDKChannelTransactionParameters* operator ->() const { return &self; }
396 class CounterpartyChannelTransactionParameters {
398 LDKCounterpartyChannelTransactionParameters self;
400 CounterpartyChannelTransactionParameters(const CounterpartyChannelTransactionParameters&) = delete;
401 CounterpartyChannelTransactionParameters(CounterpartyChannelTransactionParameters&& o) : self(o.self) { memset(&o, 0, sizeof(CounterpartyChannelTransactionParameters)); }
402 CounterpartyChannelTransactionParameters(LDKCounterpartyChannelTransactionParameters&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCounterpartyChannelTransactionParameters)); }
403 operator LDKCounterpartyChannelTransactionParameters() && { LDKCounterpartyChannelTransactionParameters res = self; memset(&self, 0, sizeof(LDKCounterpartyChannelTransactionParameters)); return res; }
404 ~CounterpartyChannelTransactionParameters() { CounterpartyChannelTransactionParameters_free(self); }
405 CounterpartyChannelTransactionParameters& operator=(CounterpartyChannelTransactionParameters&& o) { CounterpartyChannelTransactionParameters_free(self); self = o.self; memset(&o, 0, sizeof(CounterpartyChannelTransactionParameters)); return *this; }
406 LDKCounterpartyChannelTransactionParameters* operator &() { return &self; }
407 LDKCounterpartyChannelTransactionParameters* operator ->() { return &self; }
408 const LDKCounterpartyChannelTransactionParameters* operator &() const { return &self; }
409 const LDKCounterpartyChannelTransactionParameters* operator ->() const { return &self; }
411 class DirectedChannelTransactionParameters {
413 LDKDirectedChannelTransactionParameters self;
415 DirectedChannelTransactionParameters(const DirectedChannelTransactionParameters&) = delete;
416 DirectedChannelTransactionParameters(DirectedChannelTransactionParameters&& o) : self(o.self) { memset(&o, 0, sizeof(DirectedChannelTransactionParameters)); }
417 DirectedChannelTransactionParameters(LDKDirectedChannelTransactionParameters&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKDirectedChannelTransactionParameters)); }
418 operator LDKDirectedChannelTransactionParameters() && { LDKDirectedChannelTransactionParameters res = self; memset(&self, 0, sizeof(LDKDirectedChannelTransactionParameters)); return res; }
419 ~DirectedChannelTransactionParameters() { DirectedChannelTransactionParameters_free(self); }
420 DirectedChannelTransactionParameters& operator=(DirectedChannelTransactionParameters&& o) { DirectedChannelTransactionParameters_free(self); self = o.self; memset(&o, 0, sizeof(DirectedChannelTransactionParameters)); return *this; }
421 LDKDirectedChannelTransactionParameters* operator &() { return &self; }
422 LDKDirectedChannelTransactionParameters* operator ->() { return &self; }
423 const LDKDirectedChannelTransactionParameters* operator &() const { return &self; }
424 const LDKDirectedChannelTransactionParameters* operator ->() const { return &self; }
426 class HolderCommitmentTransaction {
428 LDKHolderCommitmentTransaction self;
430 HolderCommitmentTransaction(const HolderCommitmentTransaction&) = delete;
431 HolderCommitmentTransaction(HolderCommitmentTransaction&& o) : self(o.self) { memset(&o, 0, sizeof(HolderCommitmentTransaction)); }
432 HolderCommitmentTransaction(LDKHolderCommitmentTransaction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKHolderCommitmentTransaction)); }
433 operator LDKHolderCommitmentTransaction() && { LDKHolderCommitmentTransaction res = self; memset(&self, 0, sizeof(LDKHolderCommitmentTransaction)); return res; }
434 ~HolderCommitmentTransaction() { HolderCommitmentTransaction_free(self); }
435 HolderCommitmentTransaction& operator=(HolderCommitmentTransaction&& o) { HolderCommitmentTransaction_free(self); self = o.self; memset(&o, 0, sizeof(HolderCommitmentTransaction)); return *this; }
436 LDKHolderCommitmentTransaction* operator &() { return &self; }
437 LDKHolderCommitmentTransaction* operator ->() { return &self; }
438 const LDKHolderCommitmentTransaction* operator &() const { return &self; }
439 const LDKHolderCommitmentTransaction* operator ->() const { return &self; }
441 class BuiltCommitmentTransaction {
443 LDKBuiltCommitmentTransaction self;
445 BuiltCommitmentTransaction(const BuiltCommitmentTransaction&) = delete;
446 BuiltCommitmentTransaction(BuiltCommitmentTransaction&& o) : self(o.self) { memset(&o, 0, sizeof(BuiltCommitmentTransaction)); }
447 BuiltCommitmentTransaction(LDKBuiltCommitmentTransaction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKBuiltCommitmentTransaction)); }
448 operator LDKBuiltCommitmentTransaction() && { LDKBuiltCommitmentTransaction res = self; memset(&self, 0, sizeof(LDKBuiltCommitmentTransaction)); return res; }
449 ~BuiltCommitmentTransaction() { BuiltCommitmentTransaction_free(self); }
450 BuiltCommitmentTransaction& operator=(BuiltCommitmentTransaction&& o) { BuiltCommitmentTransaction_free(self); self = o.self; memset(&o, 0, sizeof(BuiltCommitmentTransaction)); return *this; }
451 LDKBuiltCommitmentTransaction* operator &() { return &self; }
452 LDKBuiltCommitmentTransaction* operator ->() { return &self; }
453 const LDKBuiltCommitmentTransaction* operator &() const { return &self; }
454 const LDKBuiltCommitmentTransaction* operator ->() const { return &self; }
456 class ClosingTransaction {
458 LDKClosingTransaction self;
460 ClosingTransaction(const ClosingTransaction&) = delete;
461 ClosingTransaction(ClosingTransaction&& o) : self(o.self) { memset(&o, 0, sizeof(ClosingTransaction)); }
462 ClosingTransaction(LDKClosingTransaction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKClosingTransaction)); }
463 operator LDKClosingTransaction() && { LDKClosingTransaction res = self; memset(&self, 0, sizeof(LDKClosingTransaction)); return res; }
464 ~ClosingTransaction() { ClosingTransaction_free(self); }
465 ClosingTransaction& operator=(ClosingTransaction&& o) { ClosingTransaction_free(self); self = o.self; memset(&o, 0, sizeof(ClosingTransaction)); return *this; }
466 LDKClosingTransaction* operator &() { return &self; }
467 LDKClosingTransaction* operator ->() { return &self; }
468 const LDKClosingTransaction* operator &() const { return &self; }
469 const LDKClosingTransaction* operator ->() const { return &self; }
471 class TrustedClosingTransaction {
473 LDKTrustedClosingTransaction self;
475 TrustedClosingTransaction(const TrustedClosingTransaction&) = delete;
476 TrustedClosingTransaction(TrustedClosingTransaction&& o) : self(o.self) { memset(&o, 0, sizeof(TrustedClosingTransaction)); }
477 TrustedClosingTransaction(LDKTrustedClosingTransaction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKTrustedClosingTransaction)); }
478 operator LDKTrustedClosingTransaction() && { LDKTrustedClosingTransaction res = self; memset(&self, 0, sizeof(LDKTrustedClosingTransaction)); return res; }
479 ~TrustedClosingTransaction() { TrustedClosingTransaction_free(self); }
480 TrustedClosingTransaction& operator=(TrustedClosingTransaction&& o) { TrustedClosingTransaction_free(self); self = o.self; memset(&o, 0, sizeof(TrustedClosingTransaction)); return *this; }
481 LDKTrustedClosingTransaction* operator &() { return &self; }
482 LDKTrustedClosingTransaction* operator ->() { return &self; }
483 const LDKTrustedClosingTransaction* operator &() const { return &self; }
484 const LDKTrustedClosingTransaction* operator ->() const { return &self; }
486 class CommitmentTransaction {
488 LDKCommitmentTransaction self;
490 CommitmentTransaction(const CommitmentTransaction&) = delete;
491 CommitmentTransaction(CommitmentTransaction&& o) : self(o.self) { memset(&o, 0, sizeof(CommitmentTransaction)); }
492 CommitmentTransaction(LDKCommitmentTransaction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCommitmentTransaction)); }
493 operator LDKCommitmentTransaction() && { LDKCommitmentTransaction res = self; memset(&self, 0, sizeof(LDKCommitmentTransaction)); return res; }
494 ~CommitmentTransaction() { CommitmentTransaction_free(self); }
495 CommitmentTransaction& operator=(CommitmentTransaction&& o) { CommitmentTransaction_free(self); self = o.self; memset(&o, 0, sizeof(CommitmentTransaction)); return *this; }
496 LDKCommitmentTransaction* operator &() { return &self; }
497 LDKCommitmentTransaction* operator ->() { return &self; }
498 const LDKCommitmentTransaction* operator &() const { return &self; }
499 const LDKCommitmentTransaction* operator ->() const { return &self; }
501 class TrustedCommitmentTransaction {
503 LDKTrustedCommitmentTransaction self;
505 TrustedCommitmentTransaction(const TrustedCommitmentTransaction&) = delete;
506 TrustedCommitmentTransaction(TrustedCommitmentTransaction&& o) : self(o.self) { memset(&o, 0, sizeof(TrustedCommitmentTransaction)); }
507 TrustedCommitmentTransaction(LDKTrustedCommitmentTransaction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKTrustedCommitmentTransaction)); }
508 operator LDKTrustedCommitmentTransaction() && { LDKTrustedCommitmentTransaction res = self; memset(&self, 0, sizeof(LDKTrustedCommitmentTransaction)); return res; }
509 ~TrustedCommitmentTransaction() { TrustedCommitmentTransaction_free(self); }
510 TrustedCommitmentTransaction& operator=(TrustedCommitmentTransaction&& o) { TrustedCommitmentTransaction_free(self); self = o.self; memset(&o, 0, sizeof(TrustedCommitmentTransaction)); return *this; }
511 LDKTrustedCommitmentTransaction* operator &() { return &self; }
512 LDKTrustedCommitmentTransaction* operator ->() { return &self; }
513 const LDKTrustedCommitmentTransaction* operator &() const { return &self; }
514 const LDKTrustedCommitmentTransaction* operator ->() const { return &self; }
516 class ShutdownScript {
518 LDKShutdownScript self;
520 ShutdownScript(const ShutdownScript&) = delete;
521 ShutdownScript(ShutdownScript&& o) : self(o.self) { memset(&o, 0, sizeof(ShutdownScript)); }
522 ShutdownScript(LDKShutdownScript&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKShutdownScript)); }
523 operator LDKShutdownScript() && { LDKShutdownScript res = self; memset(&self, 0, sizeof(LDKShutdownScript)); return res; }
524 ~ShutdownScript() { ShutdownScript_free(self); }
525 ShutdownScript& operator=(ShutdownScript&& o) { ShutdownScript_free(self); self = o.self; memset(&o, 0, sizeof(ShutdownScript)); return *this; }
526 LDKShutdownScript* operator &() { return &self; }
527 LDKShutdownScript* operator ->() { return &self; }
528 const LDKShutdownScript* operator &() const { return &self; }
529 const LDKShutdownScript* operator ->() const { return &self; }
531 class InvalidShutdownScript {
533 LDKInvalidShutdownScript self;
535 InvalidShutdownScript(const InvalidShutdownScript&) = delete;
536 InvalidShutdownScript(InvalidShutdownScript&& o) : self(o.self) { memset(&o, 0, sizeof(InvalidShutdownScript)); }
537 InvalidShutdownScript(LDKInvalidShutdownScript&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInvalidShutdownScript)); }
538 operator LDKInvalidShutdownScript() && { LDKInvalidShutdownScript res = self; memset(&self, 0, sizeof(LDKInvalidShutdownScript)); return res; }
539 ~InvalidShutdownScript() { InvalidShutdownScript_free(self); }
540 InvalidShutdownScript& operator=(InvalidShutdownScript&& o) { InvalidShutdownScript_free(self); self = o.self; memset(&o, 0, sizeof(InvalidShutdownScript)); return *this; }
541 LDKInvalidShutdownScript* operator &() { return &self; }
542 LDKInvalidShutdownScript* operator ->() { return &self; }
543 const LDKInvalidShutdownScript* operator &() const { return &self; }
544 const LDKInvalidShutdownScript* operator ->() const { return &self; }
546 class BackgroundProcessor {
548 LDKBackgroundProcessor self;
550 BackgroundProcessor(const BackgroundProcessor&) = delete;
551 BackgroundProcessor(BackgroundProcessor&& o) : self(o.self) { memset(&o, 0, sizeof(BackgroundProcessor)); }
552 BackgroundProcessor(LDKBackgroundProcessor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKBackgroundProcessor)); }
553 operator LDKBackgroundProcessor() && { LDKBackgroundProcessor res = self; memset(&self, 0, sizeof(LDKBackgroundProcessor)); return res; }
554 ~BackgroundProcessor() { BackgroundProcessor_free(self); }
555 BackgroundProcessor& operator=(BackgroundProcessor&& o) { BackgroundProcessor_free(self); self = o.self; memset(&o, 0, sizeof(BackgroundProcessor)); return *this; }
556 LDKBackgroundProcessor* operator &() { return &self; }
557 LDKBackgroundProcessor* operator ->() { return &self; }
558 const LDKBackgroundProcessor* operator &() const { return &self; }
559 const LDKBackgroundProcessor* operator ->() const { return &self; }
561 class ChannelManagerPersister {
563 LDKChannelManagerPersister self;
565 ChannelManagerPersister(const ChannelManagerPersister&) = delete;
566 ChannelManagerPersister(ChannelManagerPersister&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelManagerPersister)); }
567 ChannelManagerPersister(LDKChannelManagerPersister&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelManagerPersister)); }
568 operator LDKChannelManagerPersister() && { LDKChannelManagerPersister res = self; memset(&self, 0, sizeof(LDKChannelManagerPersister)); return res; }
569 ~ChannelManagerPersister() { ChannelManagerPersister_free(self); }
570 ChannelManagerPersister& operator=(ChannelManagerPersister&& o) { ChannelManagerPersister_free(self); self = o.self; memset(&o, 0, sizeof(ChannelManagerPersister)); return *this; }
571 LDKChannelManagerPersister* operator &() { return &self; }
572 LDKChannelManagerPersister* operator ->() { return &self; }
573 const LDKChannelManagerPersister* operator &() const { return &self; }
574 const LDKChannelManagerPersister* operator ->() const { return &self; }
576 * Persist the given [`ChannelManager`] to disk, returning an error if persistence failed
577 * (which will cause the [`BackgroundProcessor`] which called this method to exit.
579 * [`ChannelManager`]: lightning::ln::channelmanager::ChannelManager
581 inline LDK::CResult_NoneErrorZ persist_manager(const struct LDKChannelManager *NONNULL_PTR channel_manager);
587 RouteHop(const RouteHop&) = delete;
588 RouteHop(RouteHop&& o) : self(o.self) { memset(&o, 0, sizeof(RouteHop)); }
589 RouteHop(LDKRouteHop&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRouteHop)); }
590 operator LDKRouteHop() && { LDKRouteHop res = self; memset(&self, 0, sizeof(LDKRouteHop)); return res; }
591 ~RouteHop() { RouteHop_free(self); }
592 RouteHop& operator=(RouteHop&& o) { RouteHop_free(self); self = o.self; memset(&o, 0, sizeof(RouteHop)); return *this; }
593 LDKRouteHop* operator &() { return &self; }
594 LDKRouteHop* operator ->() { return &self; }
595 const LDKRouteHop* operator &() const { return &self; }
596 const LDKRouteHop* operator ->() const { return &self; }
602 Route(const Route&) = delete;
603 Route(Route&& o) : self(o.self) { memset(&o, 0, sizeof(Route)); }
604 Route(LDKRoute&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRoute)); }
605 operator LDKRoute() && { LDKRoute res = self; memset(&self, 0, sizeof(LDKRoute)); return res; }
606 ~Route() { Route_free(self); }
607 Route& operator=(Route&& o) { Route_free(self); self = o.self; memset(&o, 0, sizeof(Route)); return *this; }
608 LDKRoute* operator &() { return &self; }
609 LDKRoute* operator ->() { return &self; }
610 const LDKRoute* operator &() const { return &self; }
611 const LDKRoute* operator ->() const { return &self; }
617 RouteHint(const RouteHint&) = delete;
618 RouteHint(RouteHint&& o) : self(o.self) { memset(&o, 0, sizeof(RouteHint)); }
619 RouteHint(LDKRouteHint&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRouteHint)); }
620 operator LDKRouteHint() && { LDKRouteHint res = self; memset(&self, 0, sizeof(LDKRouteHint)); return res; }
621 ~RouteHint() { RouteHint_free(self); }
622 RouteHint& operator=(RouteHint&& o) { RouteHint_free(self); self = o.self; memset(&o, 0, sizeof(RouteHint)); return *this; }
623 LDKRouteHint* operator &() { return &self; }
624 LDKRouteHint* operator ->() { return &self; }
625 const LDKRouteHint* operator &() const { return &self; }
626 const LDKRouteHint* operator ->() const { return &self; }
630 LDKRouteHintHop self;
632 RouteHintHop(const RouteHintHop&) = delete;
633 RouteHintHop(RouteHintHop&& o) : self(o.self) { memset(&o, 0, sizeof(RouteHintHop)); }
634 RouteHintHop(LDKRouteHintHop&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRouteHintHop)); }
635 operator LDKRouteHintHop() && { LDKRouteHintHop res = self; memset(&self, 0, sizeof(LDKRouteHintHop)); return res; }
636 ~RouteHintHop() { RouteHintHop_free(self); }
637 RouteHintHop& operator=(RouteHintHop&& o) { RouteHintHop_free(self); self = o.self; memset(&o, 0, sizeof(RouteHintHop)); return *this; }
638 LDKRouteHintHop* operator &() { return &self; }
639 LDKRouteHintHop* operator ->() { return &self; }
640 const LDKRouteHintHop* operator &() const { return &self; }
641 const LDKRouteHintHop* operator ->() const { return &self; }
643 class BroadcasterInterface {
645 LDKBroadcasterInterface self;
647 BroadcasterInterface(const BroadcasterInterface&) = delete;
648 BroadcasterInterface(BroadcasterInterface&& o) : self(o.self) { memset(&o, 0, sizeof(BroadcasterInterface)); }
649 BroadcasterInterface(LDKBroadcasterInterface&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKBroadcasterInterface)); }
650 operator LDKBroadcasterInterface() && { LDKBroadcasterInterface res = self; memset(&self, 0, sizeof(LDKBroadcasterInterface)); return res; }
651 ~BroadcasterInterface() { BroadcasterInterface_free(self); }
652 BroadcasterInterface& operator=(BroadcasterInterface&& o) { BroadcasterInterface_free(self); self = o.self; memset(&o, 0, sizeof(BroadcasterInterface)); return *this; }
653 LDKBroadcasterInterface* operator &() { return &self; }
654 LDKBroadcasterInterface* operator ->() { return &self; }
655 const LDKBroadcasterInterface* operator &() const { return &self; }
656 const LDKBroadcasterInterface* operator ->() const { return &self; }
658 * Sends a transaction out to (hopefully) be mined.
660 inline void broadcast_transaction(struct LDKTransaction tx);
662 class ConfirmationTarget {
664 LDKConfirmationTarget self;
666 ConfirmationTarget(const ConfirmationTarget&) = delete;
667 ConfirmationTarget(ConfirmationTarget&& o) : self(o.self) { memset(&o, 0, sizeof(ConfirmationTarget)); }
668 ConfirmationTarget(LDKConfirmationTarget&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKConfirmationTarget)); }
669 operator LDKConfirmationTarget() && { LDKConfirmationTarget res = self; memset(&self, 0, sizeof(LDKConfirmationTarget)); return res; }
670 ConfirmationTarget& operator=(ConfirmationTarget&& o) { self = o.self; memset(&o, 0, sizeof(ConfirmationTarget)); return *this; }
671 LDKConfirmationTarget* operator &() { return &self; }
672 LDKConfirmationTarget* operator ->() { return &self; }
673 const LDKConfirmationTarget* operator &() const { return &self; }
674 const LDKConfirmationTarget* operator ->() const { return &self; }
678 LDKFeeEstimator self;
680 FeeEstimator(const FeeEstimator&) = delete;
681 FeeEstimator(FeeEstimator&& o) : self(o.self) { memset(&o, 0, sizeof(FeeEstimator)); }
682 FeeEstimator(LDKFeeEstimator&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFeeEstimator)); }
683 operator LDKFeeEstimator() && { LDKFeeEstimator res = self; memset(&self, 0, sizeof(LDKFeeEstimator)); return res; }
684 ~FeeEstimator() { FeeEstimator_free(self); }
685 FeeEstimator& operator=(FeeEstimator&& o) { FeeEstimator_free(self); self = o.self; memset(&o, 0, sizeof(FeeEstimator)); return *this; }
686 LDKFeeEstimator* operator &() { return &self; }
687 LDKFeeEstimator* operator ->() { return &self; }
688 const LDKFeeEstimator* operator &() const { return &self; }
689 const LDKFeeEstimator* operator ->() const { return &self; }
691 * Gets estimated satoshis of fee required per 1000 Weight-Units.
693 * Must be no smaller than 253 (ie 1 satoshi-per-byte rounded up to ensure later round-downs
694 * don't put us below 1 satoshi-per-byte).
696 * This translates to:
697 * * satoshis-per-byte * 250
698 * * ceil(satoshis-per-kbyte / 4)
700 inline uint32_t get_est_sat_per_1000_weight(enum LDKConfirmationTarget confirmation_target);
706 BestBlock(const BestBlock&) = delete;
707 BestBlock(BestBlock&& o) : self(o.self) { memset(&o, 0, sizeof(BestBlock)); }
708 BestBlock(LDKBestBlock&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKBestBlock)); }
709 operator LDKBestBlock() && { LDKBestBlock res = self; memset(&self, 0, sizeof(LDKBestBlock)); return res; }
710 ~BestBlock() { BestBlock_free(self); }
711 BestBlock& operator=(BestBlock&& o) { BestBlock_free(self); self = o.self; memset(&o, 0, sizeof(BestBlock)); return *this; }
712 LDKBestBlock* operator &() { return &self; }
713 LDKBestBlock* operator ->() { return &self; }
714 const LDKBestBlock* operator &() const { return &self; }
715 const LDKBestBlock* operator ->() const { return &self; }
721 AccessError(const AccessError&) = delete;
722 AccessError(AccessError&& o) : self(o.self) { memset(&o, 0, sizeof(AccessError)); }
723 AccessError(LDKAccessError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKAccessError)); }
724 operator LDKAccessError() && { LDKAccessError res = self; memset(&self, 0, sizeof(LDKAccessError)); return res; }
725 AccessError& operator=(AccessError&& o) { self = o.self; memset(&o, 0, sizeof(AccessError)); return *this; }
726 LDKAccessError* operator &() { return &self; }
727 LDKAccessError* operator ->() { return &self; }
728 const LDKAccessError* operator &() const { return &self; }
729 const LDKAccessError* operator ->() const { return &self; }
735 Access(const Access&) = delete;
736 Access(Access&& o) : self(o.self) { memset(&o, 0, sizeof(Access)); }
737 Access(LDKAccess&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKAccess)); }
738 operator LDKAccess() && { LDKAccess res = self; memset(&self, 0, sizeof(LDKAccess)); return res; }
739 ~Access() { Access_free(self); }
740 Access& operator=(Access&& o) { Access_free(self); self = o.self; memset(&o, 0, sizeof(Access)); return *this; }
741 LDKAccess* operator &() { return &self; }
742 LDKAccess* operator ->() { return &self; }
743 const LDKAccess* operator &() const { return &self; }
744 const LDKAccess* operator ->() const { return &self; }
746 * Returns the transaction output of a funding transaction encoded by [`short_channel_id`].
747 * Returns an error if `genesis_hash` is for a different chain or if such a transaction output
750 * [`short_channel_id`]: https://github.com/lightningnetwork/lightning-rfc/blob/master/07-routing-gossip.md#definition-of-short_channel_id
752 inline LDK::CResult_TxOutAccessErrorZ get_utxo(const uint8_t (*genesis_hash)[32], uint64_t short_channel_id);
758 Listen(const Listen&) = delete;
759 Listen(Listen&& o) : self(o.self) { memset(&o, 0, sizeof(Listen)); }
760 Listen(LDKListen&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKListen)); }
761 operator LDKListen() && { LDKListen res = self; memset(&self, 0, sizeof(LDKListen)); return res; }
762 ~Listen() { Listen_free(self); }
763 Listen& operator=(Listen&& o) { Listen_free(self); self = o.self; memset(&o, 0, sizeof(Listen)); return *this; }
764 LDKListen* operator &() { return &self; }
765 LDKListen* operator ->() { return &self; }
766 const LDKListen* operator &() const { return &self; }
767 const LDKListen* operator ->() const { return &self; }
769 * Notifies the listener that a block was added at the given height.
771 inline void block_connected(struct LDKu8slice block, uint32_t height);
773 * Notifies the listener that a block was removed at the given height.
775 inline void block_disconnected(const uint8_t (*header)[80], uint32_t height);
781 Confirm(const Confirm&) = delete;
782 Confirm(Confirm&& o) : self(o.self) { memset(&o, 0, sizeof(Confirm)); }
783 Confirm(LDKConfirm&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKConfirm)); }
784 operator LDKConfirm() && { LDKConfirm res = self; memset(&self, 0, sizeof(LDKConfirm)); return res; }
785 ~Confirm() { Confirm_free(self); }
786 Confirm& operator=(Confirm&& o) { Confirm_free(self); self = o.self; memset(&o, 0, sizeof(Confirm)); return *this; }
787 LDKConfirm* operator &() { return &self; }
788 LDKConfirm* operator ->() { return &self; }
789 const LDKConfirm* operator &() const { return &self; }
790 const LDKConfirm* operator ->() const { return &self; }
792 * Processes transactions confirmed in a block with a given header and height.
794 * Should be called for any transactions registered by [`Filter::register_tx`] or any
795 * transactions spending an output registered by [`Filter::register_output`]. Such transactions
796 * appearing in the same block do not need to be included in the same call; instead, multiple
797 * calls with additional transactions may be made so long as they are made in [chain order].
799 * May be called before or after [`best_block_updated`] for the corresponding block. However,
800 * in the event of a chain reorganization, it must not be called with a `header` that is no
801 * longer in the chain as of the last call to [`best_block_updated`].
803 * [chain order]: Confirm#Order
804 * [`best_block_updated`]: Self::best_block_updated
806 inline void transactions_confirmed(const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height);
808 * Processes a transaction that is no longer confirmed as result of a chain reorganization.
810 * Should be called for any transaction returned by [`get_relevant_txids`] if it has been
811 * reorganized out of the best chain. Once called, the given transaction should not be returned
812 * by [`get_relevant_txids`] unless it has been reconfirmed via [`transactions_confirmed`].
814 * [`get_relevant_txids`]: Self::get_relevant_txids
815 * [`transactions_confirmed`]: Self::transactions_confirmed
817 inline void transaction_unconfirmed(const uint8_t (*txid)[32]);
819 * Processes an update to the best header connected at the given height.
821 * Should be called when a new header is available but may be skipped for intermediary blocks
822 * if they become available at the same time.
824 inline void best_block_updated(const uint8_t (*header)[80], uint32_t height);
826 * Returns transactions that should be monitored for reorganization out of the chain.
828 * Should include any transactions passed to [`transactions_confirmed`] that have insufficient
829 * confirmations to be safe from a chain reorganization. Should not include any transactions
830 * passed to [`transaction_unconfirmed`] unless later reconfirmed.
832 * May be called to determine the subset of transactions that must still be monitored for
833 * reorganization. Will be idempotent between calls but may change as a result of calls to the
834 * other interface methods. Thus, this is useful to determine which transactions may need to be
835 * given to [`transaction_unconfirmed`].
837 * [`transactions_confirmed`]: Self::transactions_confirmed
838 * [`transaction_unconfirmed`]: Self::transaction_unconfirmed
840 inline LDK::CVec_TxidZ get_relevant_txids();
846 Watch(const Watch&) = delete;
847 Watch(Watch&& o) : self(o.self) { memset(&o, 0, sizeof(Watch)); }
848 Watch(LDKWatch&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKWatch)); }
849 operator LDKWatch() && { LDKWatch res = self; memset(&self, 0, sizeof(LDKWatch)); return res; }
850 ~Watch() { Watch_free(self); }
851 Watch& operator=(Watch&& o) { Watch_free(self); self = o.self; memset(&o, 0, sizeof(Watch)); return *this; }
852 LDKWatch* operator &() { return &self; }
853 LDKWatch* operator ->() { return &self; }
854 const LDKWatch* operator &() const { return &self; }
855 const LDKWatch* operator ->() const { return &self; }
857 * Watches a channel identified by `funding_txo` using `monitor`.
859 * Implementations are responsible for watching the chain for the funding transaction along
860 * with any spends of outputs returned by [`get_outputs_to_watch`]. In practice, this means
861 * calling [`block_connected`] and [`block_disconnected`] on the monitor.
863 * [`get_outputs_to_watch`]: channelmonitor::ChannelMonitor::get_outputs_to_watch
864 * [`block_connected`]: channelmonitor::ChannelMonitor::block_connected
865 * [`block_disconnected`]: channelmonitor::ChannelMonitor::block_disconnected
867 inline LDK::CResult_NoneChannelMonitorUpdateErrZ watch_channel(struct LDKOutPoint funding_txo, struct LDKChannelMonitor monitor);
869 * Updates a channel identified by `funding_txo` by applying `update` to its monitor.
871 * Implementations must call [`update_monitor`] with the given update. See
872 * [`ChannelMonitorUpdateErr`] for invariants around returning an error.
874 * [`update_monitor`]: channelmonitor::ChannelMonitor::update_monitor
875 * [`ChannelMonitorUpdateErr`]: channelmonitor::ChannelMonitorUpdateErr
877 inline LDK::CResult_NoneChannelMonitorUpdateErrZ update_channel(struct LDKOutPoint funding_txo, struct LDKChannelMonitorUpdate update);
879 * Returns any monitor events since the last call. Subsequent calls must only return new
882 inline LDK::CVec_MonitorEventZ release_pending_monitor_events();
888 Filter(const Filter&) = delete;
889 Filter(Filter&& o) : self(o.self) { memset(&o, 0, sizeof(Filter)); }
890 Filter(LDKFilter&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFilter)); }
891 operator LDKFilter() && { LDKFilter res = self; memset(&self, 0, sizeof(LDKFilter)); return res; }
892 ~Filter() { Filter_free(self); }
893 Filter& operator=(Filter&& o) { Filter_free(self); self = o.self; memset(&o, 0, sizeof(Filter)); return *this; }
894 LDKFilter* operator &() { return &self; }
895 LDKFilter* operator ->() { return &self; }
896 const LDKFilter* operator &() const { return &self; }
897 const LDKFilter* operator ->() const { return &self; }
899 * Registers interest in a transaction with `txid` and having an output with `script_pubkey` as
900 * a spending condition.
902 inline void register_tx(const uint8_t (*txid)[32], struct LDKu8slice script_pubkey);
904 * Registers interest in spends of a transaction output.
906 * Optionally, when `output.block_hash` is set, should return any transaction spending the
907 * output that is found in the corresponding block along with its index.
909 * This return value is useful for Electrum clients in order to supply in-block descendant
910 * transactions which otherwise were not included. This is not necessary for other clients if
911 * such descendant transactions were already included (e.g., when a BIP 157 client provides the
914 inline LDK::COption_C2Tuple_usizeTransactionZZ register_output(struct LDKWatchedOutput output);
916 class WatchedOutput {
918 LDKWatchedOutput self;
920 WatchedOutput(const WatchedOutput&) = delete;
921 WatchedOutput(WatchedOutput&& o) : self(o.self) { memset(&o, 0, sizeof(WatchedOutput)); }
922 WatchedOutput(LDKWatchedOutput&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKWatchedOutput)); }
923 operator LDKWatchedOutput() && { LDKWatchedOutput res = self; memset(&self, 0, sizeof(LDKWatchedOutput)); return res; }
924 ~WatchedOutput() { WatchedOutput_free(self); }
925 WatchedOutput& operator=(WatchedOutput&& o) { WatchedOutput_free(self); self = o.self; memset(&o, 0, sizeof(WatchedOutput)); return *this; }
926 LDKWatchedOutput* operator &() { return &self; }
927 LDKWatchedOutput* operator ->() { return &self; }
928 const LDKWatchedOutput* operator &() const { return &self; }
929 const LDKWatchedOutput* operator ->() const { return &self; }
931 class PaymentPurpose {
933 LDKPaymentPurpose self;
935 PaymentPurpose(const PaymentPurpose&) = delete;
936 PaymentPurpose(PaymentPurpose&& o) : self(o.self) { memset(&o, 0, sizeof(PaymentPurpose)); }
937 PaymentPurpose(LDKPaymentPurpose&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPaymentPurpose)); }
938 operator LDKPaymentPurpose() && { LDKPaymentPurpose res = self; memset(&self, 0, sizeof(LDKPaymentPurpose)); return res; }
939 ~PaymentPurpose() { PaymentPurpose_free(self); }
940 PaymentPurpose& operator=(PaymentPurpose&& o) { PaymentPurpose_free(self); self = o.self; memset(&o, 0, sizeof(PaymentPurpose)); return *this; }
941 LDKPaymentPurpose* operator &() { return &self; }
942 LDKPaymentPurpose* operator ->() { return &self; }
943 const LDKPaymentPurpose* operator &() const { return &self; }
944 const LDKPaymentPurpose* operator ->() const { return &self; }
946 class ClosureReason {
948 LDKClosureReason self;
950 ClosureReason(const ClosureReason&) = delete;
951 ClosureReason(ClosureReason&& o) : self(o.self) { memset(&o, 0, sizeof(ClosureReason)); }
952 ClosureReason(LDKClosureReason&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKClosureReason)); }
953 operator LDKClosureReason() && { LDKClosureReason res = self; memset(&self, 0, sizeof(LDKClosureReason)); return res; }
954 ~ClosureReason() { ClosureReason_free(self); }
955 ClosureReason& operator=(ClosureReason&& o) { ClosureReason_free(self); self = o.self; memset(&o, 0, sizeof(ClosureReason)); return *this; }
956 LDKClosureReason* operator &() { return &self; }
957 LDKClosureReason* operator ->() { return &self; }
958 const LDKClosureReason* operator &() const { return &self; }
959 const LDKClosureReason* operator ->() const { return &self; }
965 Event(const Event&) = delete;
966 Event(Event&& o) : self(o.self) { memset(&o, 0, sizeof(Event)); }
967 Event(LDKEvent&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKEvent)); }
968 operator LDKEvent() && { LDKEvent res = self; memset(&self, 0, sizeof(LDKEvent)); return res; }
969 ~Event() { Event_free(self); }
970 Event& operator=(Event&& o) { Event_free(self); self = o.self; memset(&o, 0, sizeof(Event)); return *this; }
971 LDKEvent* operator &() { return &self; }
972 LDKEvent* operator ->() { return &self; }
973 const LDKEvent* operator &() const { return &self; }
974 const LDKEvent* operator ->() const { return &self; }
976 class MessageSendEvent {
978 LDKMessageSendEvent self;
980 MessageSendEvent(const MessageSendEvent&) = delete;
981 MessageSendEvent(MessageSendEvent&& o) : self(o.self) { memset(&o, 0, sizeof(MessageSendEvent)); }
982 MessageSendEvent(LDKMessageSendEvent&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKMessageSendEvent)); }
983 operator LDKMessageSendEvent() && { LDKMessageSendEvent res = self; memset(&self, 0, sizeof(LDKMessageSendEvent)); return res; }
984 ~MessageSendEvent() { MessageSendEvent_free(self); }
985 MessageSendEvent& operator=(MessageSendEvent&& o) { MessageSendEvent_free(self); self = o.self; memset(&o, 0, sizeof(MessageSendEvent)); return *this; }
986 LDKMessageSendEvent* operator &() { return &self; }
987 LDKMessageSendEvent* operator ->() { return &self; }
988 const LDKMessageSendEvent* operator &() const { return &self; }
989 const LDKMessageSendEvent* operator ->() const { return &self; }
991 class MessageSendEventsProvider {
993 LDKMessageSendEventsProvider self;
995 MessageSendEventsProvider(const MessageSendEventsProvider&) = delete;
996 MessageSendEventsProvider(MessageSendEventsProvider&& o) : self(o.self) { memset(&o, 0, sizeof(MessageSendEventsProvider)); }
997 MessageSendEventsProvider(LDKMessageSendEventsProvider&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKMessageSendEventsProvider)); }
998 operator LDKMessageSendEventsProvider() && { LDKMessageSendEventsProvider res = self; memset(&self, 0, sizeof(LDKMessageSendEventsProvider)); return res; }
999 ~MessageSendEventsProvider() { MessageSendEventsProvider_free(self); }
1000 MessageSendEventsProvider& operator=(MessageSendEventsProvider&& o) { MessageSendEventsProvider_free(self); self = o.self; memset(&o, 0, sizeof(MessageSendEventsProvider)); return *this; }
1001 LDKMessageSendEventsProvider* operator &() { return &self; }
1002 LDKMessageSendEventsProvider* operator ->() { return &self; }
1003 const LDKMessageSendEventsProvider* operator &() const { return &self; }
1004 const LDKMessageSendEventsProvider* operator ->() const { return &self; }
1006 * Gets the list of pending events which were generated by previous actions, clearing the list
1009 inline LDK::CVec_MessageSendEventZ get_and_clear_pending_msg_events();
1011 class EventsProvider {
1013 LDKEventsProvider self;
1015 EventsProvider(const EventsProvider&) = delete;
1016 EventsProvider(EventsProvider&& o) : self(o.self) { memset(&o, 0, sizeof(EventsProvider)); }
1017 EventsProvider(LDKEventsProvider&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKEventsProvider)); }
1018 operator LDKEventsProvider() && { LDKEventsProvider res = self; memset(&self, 0, sizeof(LDKEventsProvider)); return res; }
1019 ~EventsProvider() { EventsProvider_free(self); }
1020 EventsProvider& operator=(EventsProvider&& o) { EventsProvider_free(self); self = o.self; memset(&o, 0, sizeof(EventsProvider)); return *this; }
1021 LDKEventsProvider* operator &() { return &self; }
1022 LDKEventsProvider* operator ->() { return &self; }
1023 const LDKEventsProvider* operator &() const { return &self; }
1024 const LDKEventsProvider* operator ->() const { return &self; }
1026 * Processes any events generated since the last call using the given event handler.
1028 * Subsequent calls must only process new events. However, handlers must be capable of handling
1029 * duplicate events across process restarts. This may occur if the provider was recovered from
1030 * an old state (i.e., it hadn't been successfully persisted after processing pending events).
1032 inline void process_pending_events(struct LDKEventHandler handler);
1034 class EventHandler {
1036 LDKEventHandler self;
1038 EventHandler(const EventHandler&) = delete;
1039 EventHandler(EventHandler&& o) : self(o.self) { memset(&o, 0, sizeof(EventHandler)); }
1040 EventHandler(LDKEventHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKEventHandler)); }
1041 operator LDKEventHandler() && { LDKEventHandler res = self; memset(&self, 0, sizeof(LDKEventHandler)); return res; }
1042 ~EventHandler() { EventHandler_free(self); }
1043 EventHandler& operator=(EventHandler&& o) { EventHandler_free(self); self = o.self; memset(&o, 0, sizeof(EventHandler)); return *this; }
1044 LDKEventHandler* operator &() { return &self; }
1045 LDKEventHandler* operator ->() { return &self; }
1046 const LDKEventHandler* operator &() const { return &self; }
1047 const LDKEventHandler* operator ->() const { return &self; }
1049 * Handles the given [`Event`].
1051 * See [`EventsProvider`] for details that must be considered when implementing this method.
1053 inline void handle_event(const struct LDKEvent *NONNULL_PTR event);
1055 class InitFeatures {
1057 LDKInitFeatures self;
1059 InitFeatures(const InitFeatures&) = delete;
1060 InitFeatures(InitFeatures&& o) : self(o.self) { memset(&o, 0, sizeof(InitFeatures)); }
1061 InitFeatures(LDKInitFeatures&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInitFeatures)); }
1062 operator LDKInitFeatures() && { LDKInitFeatures res = self; memset(&self, 0, sizeof(LDKInitFeatures)); return res; }
1063 ~InitFeatures() { InitFeatures_free(self); }
1064 InitFeatures& operator=(InitFeatures&& o) { InitFeatures_free(self); self = o.self; memset(&o, 0, sizeof(InitFeatures)); return *this; }
1065 LDKInitFeatures* operator &() { return &self; }
1066 LDKInitFeatures* operator ->() { return &self; }
1067 const LDKInitFeatures* operator &() const { return &self; }
1068 const LDKInitFeatures* operator ->() const { return &self; }
1070 class NodeFeatures {
1072 LDKNodeFeatures self;
1074 NodeFeatures(const NodeFeatures&) = delete;
1075 NodeFeatures(NodeFeatures&& o) : self(o.self) { memset(&o, 0, sizeof(NodeFeatures)); }
1076 NodeFeatures(LDKNodeFeatures&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNodeFeatures)); }
1077 operator LDKNodeFeatures() && { LDKNodeFeatures res = self; memset(&self, 0, sizeof(LDKNodeFeatures)); return res; }
1078 ~NodeFeatures() { NodeFeatures_free(self); }
1079 NodeFeatures& operator=(NodeFeatures&& o) { NodeFeatures_free(self); self = o.self; memset(&o, 0, sizeof(NodeFeatures)); return *this; }
1080 LDKNodeFeatures* operator &() { return &self; }
1081 LDKNodeFeatures* operator ->() { return &self; }
1082 const LDKNodeFeatures* operator &() const { return &self; }
1083 const LDKNodeFeatures* operator ->() const { return &self; }
1085 class ChannelFeatures {
1087 LDKChannelFeatures self;
1089 ChannelFeatures(const ChannelFeatures&) = delete;
1090 ChannelFeatures(ChannelFeatures&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelFeatures)); }
1091 ChannelFeatures(LDKChannelFeatures&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelFeatures)); }
1092 operator LDKChannelFeatures() && { LDKChannelFeatures res = self; memset(&self, 0, sizeof(LDKChannelFeatures)); return res; }
1093 ~ChannelFeatures() { ChannelFeatures_free(self); }
1094 ChannelFeatures& operator=(ChannelFeatures&& o) { ChannelFeatures_free(self); self = o.self; memset(&o, 0, sizeof(ChannelFeatures)); return *this; }
1095 LDKChannelFeatures* operator &() { return &self; }
1096 LDKChannelFeatures* operator ->() { return &self; }
1097 const LDKChannelFeatures* operator &() const { return &self; }
1098 const LDKChannelFeatures* operator ->() const { return &self; }
1100 class InvoiceFeatures {
1102 LDKInvoiceFeatures self;
1104 InvoiceFeatures(const InvoiceFeatures&) = delete;
1105 InvoiceFeatures(InvoiceFeatures&& o) : self(o.self) { memset(&o, 0, sizeof(InvoiceFeatures)); }
1106 InvoiceFeatures(LDKInvoiceFeatures&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInvoiceFeatures)); }
1107 operator LDKInvoiceFeatures() && { LDKInvoiceFeatures res = self; memset(&self, 0, sizeof(LDKInvoiceFeatures)); return res; }
1108 ~InvoiceFeatures() { InvoiceFeatures_free(self); }
1109 InvoiceFeatures& operator=(InvoiceFeatures&& o) { InvoiceFeatures_free(self); self = o.self; memset(&o, 0, sizeof(InvoiceFeatures)); return *this; }
1110 LDKInvoiceFeatures* operator &() { return &self; }
1111 LDKInvoiceFeatures* operator ->() { return &self; }
1112 const LDKInvoiceFeatures* operator &() const { return &self; }
1113 const LDKInvoiceFeatures* operator ->() const { return &self; }
1115 class DelayedPaymentOutputDescriptor {
1117 LDKDelayedPaymentOutputDescriptor self;
1119 DelayedPaymentOutputDescriptor(const DelayedPaymentOutputDescriptor&) = delete;
1120 DelayedPaymentOutputDescriptor(DelayedPaymentOutputDescriptor&& o) : self(o.self) { memset(&o, 0, sizeof(DelayedPaymentOutputDescriptor)); }
1121 DelayedPaymentOutputDescriptor(LDKDelayedPaymentOutputDescriptor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKDelayedPaymentOutputDescriptor)); }
1122 operator LDKDelayedPaymentOutputDescriptor() && { LDKDelayedPaymentOutputDescriptor res = self; memset(&self, 0, sizeof(LDKDelayedPaymentOutputDescriptor)); return res; }
1123 ~DelayedPaymentOutputDescriptor() { DelayedPaymentOutputDescriptor_free(self); }
1124 DelayedPaymentOutputDescriptor& operator=(DelayedPaymentOutputDescriptor&& o) { DelayedPaymentOutputDescriptor_free(self); self = o.self; memset(&o, 0, sizeof(DelayedPaymentOutputDescriptor)); return *this; }
1125 LDKDelayedPaymentOutputDescriptor* operator &() { return &self; }
1126 LDKDelayedPaymentOutputDescriptor* operator ->() { return &self; }
1127 const LDKDelayedPaymentOutputDescriptor* operator &() const { return &self; }
1128 const LDKDelayedPaymentOutputDescriptor* operator ->() const { return &self; }
1130 class StaticPaymentOutputDescriptor {
1132 LDKStaticPaymentOutputDescriptor self;
1134 StaticPaymentOutputDescriptor(const StaticPaymentOutputDescriptor&) = delete;
1135 StaticPaymentOutputDescriptor(StaticPaymentOutputDescriptor&& o) : self(o.self) { memset(&o, 0, sizeof(StaticPaymentOutputDescriptor)); }
1136 StaticPaymentOutputDescriptor(LDKStaticPaymentOutputDescriptor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKStaticPaymentOutputDescriptor)); }
1137 operator LDKStaticPaymentOutputDescriptor() && { LDKStaticPaymentOutputDescriptor res = self; memset(&self, 0, sizeof(LDKStaticPaymentOutputDescriptor)); return res; }
1138 ~StaticPaymentOutputDescriptor() { StaticPaymentOutputDescriptor_free(self); }
1139 StaticPaymentOutputDescriptor& operator=(StaticPaymentOutputDescriptor&& o) { StaticPaymentOutputDescriptor_free(self); self = o.self; memset(&o, 0, sizeof(StaticPaymentOutputDescriptor)); return *this; }
1140 LDKStaticPaymentOutputDescriptor* operator &() { return &self; }
1141 LDKStaticPaymentOutputDescriptor* operator ->() { return &self; }
1142 const LDKStaticPaymentOutputDescriptor* operator &() const { return &self; }
1143 const LDKStaticPaymentOutputDescriptor* operator ->() const { return &self; }
1145 class SpendableOutputDescriptor {
1147 LDKSpendableOutputDescriptor self;
1149 SpendableOutputDescriptor(const SpendableOutputDescriptor&) = delete;
1150 SpendableOutputDescriptor(SpendableOutputDescriptor&& o) : self(o.self) { memset(&o, 0, sizeof(SpendableOutputDescriptor)); }
1151 SpendableOutputDescriptor(LDKSpendableOutputDescriptor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSpendableOutputDescriptor)); }
1152 operator LDKSpendableOutputDescriptor() && { LDKSpendableOutputDescriptor res = self; memset(&self, 0, sizeof(LDKSpendableOutputDescriptor)); return res; }
1153 ~SpendableOutputDescriptor() { SpendableOutputDescriptor_free(self); }
1154 SpendableOutputDescriptor& operator=(SpendableOutputDescriptor&& o) { SpendableOutputDescriptor_free(self); self = o.self; memset(&o, 0, sizeof(SpendableOutputDescriptor)); return *this; }
1155 LDKSpendableOutputDescriptor* operator &() { return &self; }
1156 LDKSpendableOutputDescriptor* operator ->() { return &self; }
1157 const LDKSpendableOutputDescriptor* operator &() const { return &self; }
1158 const LDKSpendableOutputDescriptor* operator ->() const { return &self; }
1164 BaseSign(const BaseSign&) = delete;
1165 BaseSign(BaseSign&& o) : self(o.self) { memset(&o, 0, sizeof(BaseSign)); }
1166 BaseSign(LDKBaseSign&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKBaseSign)); }
1167 operator LDKBaseSign() && { LDKBaseSign res = self; memset(&self, 0, sizeof(LDKBaseSign)); return res; }
1168 ~BaseSign() { BaseSign_free(self); }
1169 BaseSign& operator=(BaseSign&& o) { BaseSign_free(self); self = o.self; memset(&o, 0, sizeof(BaseSign)); return *this; }
1170 LDKBaseSign* operator &() { return &self; }
1171 LDKBaseSign* operator ->() { return &self; }
1172 const LDKBaseSign* operator &() const { return &self; }
1173 const LDKBaseSign* operator ->() const { return &self; }
1175 * Gets the per-commitment point for a specific commitment number
1177 * Note that the commitment number starts at (1 << 48) - 1 and counts backwards.
1179 inline LDKPublicKey get_per_commitment_point(uint64_t idx);
1181 * Gets the commitment secret for a specific commitment number as part of the revocation process
1183 * An external signer implementation should error here if the commitment was already signed
1184 * and should refuse to sign it in the future.
1186 * May be called more than once for the same index.
1188 * Note that the commitment number starts at (1 << 48) - 1 and counts backwards.
1190 inline LDKThirtyTwoBytes release_commitment_secret(uint64_t idx);
1192 * Validate the counterparty's signatures on the holder commitment transaction and HTLCs.
1194 * This is required in order for the signer to make sure that releasing a commitment
1195 * secret won't leave us without a broadcastable holder transaction.
1196 * Policy checks should be implemented in this function, including checking the amount
1197 * sent to us and checking the HTLCs.
1199 inline LDK::CResult_NoneNoneZ validate_holder_commitment(const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx);
1201 * Gets an arbitrary identifier describing the set of keys which are provided back to you in
1202 * some SpendableOutputDescriptor types. This should be sufficient to identify this
1203 * Sign object uniquely and lookup or re-derive its keys.
1205 inline LDKThirtyTwoBytes channel_keys_id();
1207 * Create a signature for a counterparty's commitment transaction and associated HTLC transactions.
1209 * Note that if signing fails or is rejected, the channel will be force-closed.
1211 * Policy checks should be implemented in this function, including checking the amount
1212 * sent to us and checking the HTLCs.
1214 inline LDK::CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_counterparty_commitment(const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx);
1216 * Validate the counterparty's revocation.
1218 * This is required in order for the signer to make sure that the state has moved
1219 * forward and it is safe to sign the next counterparty commitment.
1221 inline LDK::CResult_NoneNoneZ validate_counterparty_revocation(uint64_t idx, const uint8_t (*secret)[32]);
1223 * Create a signatures for a holder's commitment transaction and its claiming HTLC transactions.
1224 * This will only ever be called with a non-revoked commitment_tx. This will be called with the
1225 * latest commitment_tx when we initiate a force-close.
1226 * This will be called with the previous latest, just to get claiming HTLC signatures, if we are
1227 * reacting to a ChannelMonitor replica that decided to broadcast before it had been updated to
1229 * This may be called multiple times for the same transaction.
1231 * An external signer implementation should check that the commitment has not been revoked.
1233 * May return Err if key derivation fails. Callers, such as ChannelMonitor, will panic in such a case.
1235 inline LDK::CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ sign_holder_commitment_and_htlcs(const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx);
1237 * Create a signature for the given input in a transaction spending an HTLC transaction output
1238 * or a commitment transaction `to_local` output when our counterparty broadcasts an old state.
1240 * A justice transaction may claim multiple outputs at the same time if timelocks are
1241 * similar, but only a signature for the input at index `input` should be signed for here.
1242 * It may be called multiple times for same output(s) if a fee-bump is needed with regards
1243 * to an upcoming timelock expiration.
1245 * Amount is value of the output spent by this input, committed to in the BIP 143 signature.
1247 * per_commitment_key is revocation secret which was provided by our counterparty when they
1248 * revoked the state which they eventually broadcast. It's not a _holder_ secret key and does
1249 * not allow the spending of any funds by itself (you need our holder revocation_secret to do
1252 inline LDK::CResult_SignatureNoneZ sign_justice_revoked_output(struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32]);
1254 * Create a signature for the given input in a transaction spending a commitment transaction
1255 * HTLC output when our counterparty broadcasts an old state.
1257 * A justice transaction may claim multiple outputs at the same time if timelocks are
1258 * similar, but only a signature for the input at index `input` should be signed for here.
1259 * It may be called multiple times for same output(s) if a fee-bump is needed with regards
1260 * to an upcoming timelock expiration.
1262 * Amount is value of the output spent by this input, committed to in the BIP 143 signature.
1264 * per_commitment_key is revocation secret which was provided by our counterparty when they
1265 * revoked the state which they eventually broadcast. It's not a _holder_ secret key and does
1266 * not allow the spending of any funds by itself (you need our holder revocation_secret to do
1269 * htlc holds HTLC elements (hash, timelock), thus changing the format of the witness script
1270 * (which is committed to in the BIP 143 signatures).
1272 inline LDK::CResult_SignatureNoneZ sign_justice_revoked_htlc(struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32], const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc);
1274 * Create a signature for a claiming transaction for a HTLC output on a counterparty's commitment
1275 * transaction, either offered or received.
1277 * Such a transaction may claim multiples offered outputs at same time if we know the
1278 * preimage for each when we create it, but only the input at index `input` should be
1279 * signed for here. It may be called multiple times for same output(s) if a fee-bump is
1280 * needed with regards to an upcoming timelock expiration.
1282 * Witness_script is either a offered or received script as defined in BOLT3 for HTLC
1285 * Amount is value of the output spent by this input, committed to in the BIP 143 signature.
1287 * Per_commitment_point is the dynamic point corresponding to the channel state
1288 * detected onchain. It has been generated by our counterparty and is used to derive
1289 * channel state keys, which are then included in the witness script and committed to in the
1290 * BIP 143 signature.
1292 inline LDK::CResult_SignatureNoneZ sign_counterparty_htlc_transaction(struct LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, struct LDKPublicKey per_commitment_point, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc);
1294 * Create a signature for a (proposed) closing transaction.
1296 * Note that, due to rounding, there may be one "missing" satoshi, and either party may have
1297 * chosen to forgo their output as dust.
1299 inline LDK::CResult_SignatureNoneZ sign_closing_transaction(const struct LDKClosingTransaction *NONNULL_PTR closing_tx);
1301 * Signs a channel announcement message with our funding key, proving it comes from one
1302 * of the channel participants.
1304 * Note that if this fails or is rejected, the channel will not be publicly announced and
1305 * our counterparty may (though likely will not) close the channel on us for violating the
1308 inline LDK::CResult_SignatureNoneZ sign_channel_announcement(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg);
1310 * Set the counterparty static channel data, including basepoints,
1311 * counterparty_selected/holder_selected_contest_delay and funding outpoint.
1312 * This is done as soon as the funding outpoint is known. Since these are static channel data,
1313 * they MUST NOT be allowed to change to different values once set.
1315 * channel_parameters.is_populated() MUST be true.
1317 * We bind holder_selected_contest_delay late here for API convenience.
1319 * Will be called before any signatures are applied.
1321 inline void ready_channel(const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters);
1327 Sign(const Sign&) = delete;
1328 Sign(Sign&& o) : self(o.self) { memset(&o, 0, sizeof(Sign)); }
1329 Sign(LDKSign&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSign)); }
1330 operator LDKSign() && { LDKSign res = self; memset(&self, 0, sizeof(LDKSign)); return res; }
1331 ~Sign() { Sign_free(self); }
1332 Sign& operator=(Sign&& o) { Sign_free(self); self = o.self; memset(&o, 0, sizeof(Sign)); return *this; }
1333 LDKSign* operator &() { return &self; }
1334 LDKSign* operator ->() { return &self; }
1335 const LDKSign* operator &() const { return &self; }
1336 const LDKSign* operator ->() const { return &self; }
1338 class KeysInterface {
1340 LDKKeysInterface self;
1342 KeysInterface(const KeysInterface&) = delete;
1343 KeysInterface(KeysInterface&& o) : self(o.self) { memset(&o, 0, sizeof(KeysInterface)); }
1344 KeysInterface(LDKKeysInterface&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKKeysInterface)); }
1345 operator LDKKeysInterface() && { LDKKeysInterface res = self; memset(&self, 0, sizeof(LDKKeysInterface)); return res; }
1346 ~KeysInterface() { KeysInterface_free(self); }
1347 KeysInterface& operator=(KeysInterface&& o) { KeysInterface_free(self); self = o.self; memset(&o, 0, sizeof(KeysInterface)); return *this; }
1348 LDKKeysInterface* operator &() { return &self; }
1349 LDKKeysInterface* operator ->() { return &self; }
1350 const LDKKeysInterface* operator &() const { return &self; }
1351 const LDKKeysInterface* operator ->() const { return &self; }
1353 * Get node secret key (aka node_id or network_key).
1355 * This method must return the same value each time it is called.
1357 inline LDKSecretKey get_node_secret();
1359 * Get a script pubkey which we send funds to when claiming on-chain contestable outputs.
1361 * This method should return a different value each time it is called, to avoid linking
1362 * on-chain funds across channels as controlled to the same user.
1364 inline LDK::CVec_u8Z get_destination_script();
1366 * Get a script pubkey which we will send funds to when closing a channel.
1368 * This method should return a different value each time it is called, to avoid linking
1369 * on-chain funds across channels as controlled to the same user.
1371 inline LDK::ShutdownScript get_shutdown_scriptpubkey();
1373 * Get a new set of Sign for per-channel secrets. These MUST be unique even if you
1374 * restarted with some stale data!
1376 * This method must return a different value each time it is called.
1378 inline LDK::Sign get_channel_signer(bool inbound, uint64_t channel_value_satoshis);
1380 * Gets a unique, cryptographically-secure, random 32 byte value. This is used for encrypting
1381 * onion packets and for temporary channel IDs. There is no requirement that these be
1382 * persisted anywhere, though they must be unique across restarts.
1384 * This method must return a different value each time it is called.
1386 inline LDKThirtyTwoBytes get_secure_random_bytes();
1388 * Reads a `Signer` for this `KeysInterface` from the given input stream.
1389 * This is only called during deserialization of other objects which contain
1390 * `Sign`-implementing objects (ie `ChannelMonitor`s and `ChannelManager`s).
1391 * The bytes are exactly those which `<Self::Signer as Writeable>::write()` writes, and
1392 * contain no versioning scheme. You may wish to include your own version prefix and ensure
1393 * you've read all of the provided bytes to ensure no corruption occurred.
1395 inline LDK::CResult_SignDecodeErrorZ read_chan_signer(struct LDKu8slice reader);
1397 * Sign an invoice's preimage (note that this is the preimage of the invoice, not the HTLC's
1398 * preimage). By parameterizing by the preimage instead of the hash, we allow implementors of
1399 * this trait to parse the invoice and make sure they're signing what they expect, rather than
1400 * blindly signing the hash.
1402 inline LDK::CResult_RecoverableSignatureNoneZ sign_invoice(struct LDKCVec_u8Z invoice_preimage);
1404 class InMemorySigner {
1406 LDKInMemorySigner self;
1408 InMemorySigner(const InMemorySigner&) = delete;
1409 InMemorySigner(InMemorySigner&& o) : self(o.self) { memset(&o, 0, sizeof(InMemorySigner)); }
1410 InMemorySigner(LDKInMemorySigner&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInMemorySigner)); }
1411 operator LDKInMemorySigner() && { LDKInMemorySigner res = self; memset(&self, 0, sizeof(LDKInMemorySigner)); return res; }
1412 ~InMemorySigner() { InMemorySigner_free(self); }
1413 InMemorySigner& operator=(InMemorySigner&& o) { InMemorySigner_free(self); self = o.self; memset(&o, 0, sizeof(InMemorySigner)); return *this; }
1414 LDKInMemorySigner* operator &() { return &self; }
1415 LDKInMemorySigner* operator ->() { return &self; }
1416 const LDKInMemorySigner* operator &() const { return &self; }
1417 const LDKInMemorySigner* operator ->() const { return &self; }
1421 LDKKeysManager self;
1423 KeysManager(const KeysManager&) = delete;
1424 KeysManager(KeysManager&& o) : self(o.self) { memset(&o, 0, sizeof(KeysManager)); }
1425 KeysManager(LDKKeysManager&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKKeysManager)); }
1426 operator LDKKeysManager() && { LDKKeysManager res = self; memset(&self, 0, sizeof(LDKKeysManager)); return res; }
1427 ~KeysManager() { KeysManager_free(self); }
1428 KeysManager& operator=(KeysManager&& o) { KeysManager_free(self); self = o.self; memset(&o, 0, sizeof(KeysManager)); return *this; }
1429 LDKKeysManager* operator &() { return &self; }
1430 LDKKeysManager* operator ->() { return &self; }
1431 const LDKKeysManager* operator &() const { return &self; }
1432 const LDKKeysManager* operator ->() const { return &self; }
1434 class FilesystemPersister {
1436 LDKFilesystemPersister self;
1438 FilesystemPersister(const FilesystemPersister&) = delete;
1439 FilesystemPersister(FilesystemPersister&& o) : self(o.self) { memset(&o, 0, sizeof(FilesystemPersister)); }
1440 FilesystemPersister(LDKFilesystemPersister&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFilesystemPersister)); }
1441 operator LDKFilesystemPersister() && { LDKFilesystemPersister res = self; memset(&self, 0, sizeof(LDKFilesystemPersister)); return res; }
1442 ~FilesystemPersister() { FilesystemPersister_free(self); }
1443 FilesystemPersister& operator=(FilesystemPersister&& o) { FilesystemPersister_free(self); self = o.self; memset(&o, 0, sizeof(FilesystemPersister)); return *this; }
1444 LDKFilesystemPersister* operator &() { return &self; }
1445 LDKFilesystemPersister* operator ->() { return &self; }
1446 const LDKFilesystemPersister* operator &() const { return &self; }
1447 const LDKFilesystemPersister* operator ->() const { return &self; }
1449 class ChannelManager {
1451 LDKChannelManager self;
1453 ChannelManager(const ChannelManager&) = delete;
1454 ChannelManager(ChannelManager&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelManager)); }
1455 ChannelManager(LDKChannelManager&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelManager)); }
1456 operator LDKChannelManager() && { LDKChannelManager res = self; memset(&self, 0, sizeof(LDKChannelManager)); return res; }
1457 ~ChannelManager() { ChannelManager_free(self); }
1458 ChannelManager& operator=(ChannelManager&& o) { ChannelManager_free(self); self = o.self; memset(&o, 0, sizeof(ChannelManager)); return *this; }
1459 LDKChannelManager* operator &() { return &self; }
1460 LDKChannelManager* operator ->() { return &self; }
1461 const LDKChannelManager* operator &() const { return &self; }
1462 const LDKChannelManager* operator ->() const { return &self; }
1464 class ChainParameters {
1466 LDKChainParameters self;
1468 ChainParameters(const ChainParameters&) = delete;
1469 ChainParameters(ChainParameters&& o) : self(o.self) { memset(&o, 0, sizeof(ChainParameters)); }
1470 ChainParameters(LDKChainParameters&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChainParameters)); }
1471 operator LDKChainParameters() && { LDKChainParameters res = self; memset(&self, 0, sizeof(LDKChainParameters)); return res; }
1472 ~ChainParameters() { ChainParameters_free(self); }
1473 ChainParameters& operator=(ChainParameters&& o) { ChainParameters_free(self); self = o.self; memset(&o, 0, sizeof(ChainParameters)); return *this; }
1474 LDKChainParameters* operator &() { return &self; }
1475 LDKChainParameters* operator ->() { return &self; }
1476 const LDKChainParameters* operator &() const { return &self; }
1477 const LDKChainParameters* operator ->() const { return &self; }
1479 class CounterpartyForwardingInfo {
1481 LDKCounterpartyForwardingInfo self;
1483 CounterpartyForwardingInfo(const CounterpartyForwardingInfo&) = delete;
1484 CounterpartyForwardingInfo(CounterpartyForwardingInfo&& o) : self(o.self) { memset(&o, 0, sizeof(CounterpartyForwardingInfo)); }
1485 CounterpartyForwardingInfo(LDKCounterpartyForwardingInfo&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCounterpartyForwardingInfo)); }
1486 operator LDKCounterpartyForwardingInfo() && { LDKCounterpartyForwardingInfo res = self; memset(&self, 0, sizeof(LDKCounterpartyForwardingInfo)); return res; }
1487 ~CounterpartyForwardingInfo() { CounterpartyForwardingInfo_free(self); }
1488 CounterpartyForwardingInfo& operator=(CounterpartyForwardingInfo&& o) { CounterpartyForwardingInfo_free(self); self = o.self; memset(&o, 0, sizeof(CounterpartyForwardingInfo)); return *this; }
1489 LDKCounterpartyForwardingInfo* operator &() { return &self; }
1490 LDKCounterpartyForwardingInfo* operator ->() { return &self; }
1491 const LDKCounterpartyForwardingInfo* operator &() const { return &self; }
1492 const LDKCounterpartyForwardingInfo* operator ->() const { return &self; }
1494 class ChannelCounterparty {
1496 LDKChannelCounterparty self;
1498 ChannelCounterparty(const ChannelCounterparty&) = delete;
1499 ChannelCounterparty(ChannelCounterparty&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelCounterparty)); }
1500 ChannelCounterparty(LDKChannelCounterparty&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelCounterparty)); }
1501 operator LDKChannelCounterparty() && { LDKChannelCounterparty res = self; memset(&self, 0, sizeof(LDKChannelCounterparty)); return res; }
1502 ~ChannelCounterparty() { ChannelCounterparty_free(self); }
1503 ChannelCounterparty& operator=(ChannelCounterparty&& o) { ChannelCounterparty_free(self); self = o.self; memset(&o, 0, sizeof(ChannelCounterparty)); return *this; }
1504 LDKChannelCounterparty* operator &() { return &self; }
1505 LDKChannelCounterparty* operator ->() { return &self; }
1506 const LDKChannelCounterparty* operator &() const { return &self; }
1507 const LDKChannelCounterparty* operator ->() const { return &self; }
1509 class ChannelDetails {
1511 LDKChannelDetails self;
1513 ChannelDetails(const ChannelDetails&) = delete;
1514 ChannelDetails(ChannelDetails&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelDetails)); }
1515 ChannelDetails(LDKChannelDetails&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelDetails)); }
1516 operator LDKChannelDetails() && { LDKChannelDetails res = self; memset(&self, 0, sizeof(LDKChannelDetails)); return res; }
1517 ~ChannelDetails() { ChannelDetails_free(self); }
1518 ChannelDetails& operator=(ChannelDetails&& o) { ChannelDetails_free(self); self = o.self; memset(&o, 0, sizeof(ChannelDetails)); return *this; }
1519 LDKChannelDetails* operator &() { return &self; }
1520 LDKChannelDetails* operator ->() { return &self; }
1521 const LDKChannelDetails* operator &() const { return &self; }
1522 const LDKChannelDetails* operator ->() const { return &self; }
1524 class PaymentSendFailure {
1526 LDKPaymentSendFailure self;
1528 PaymentSendFailure(const PaymentSendFailure&) = delete;
1529 PaymentSendFailure(PaymentSendFailure&& o) : self(o.self) { memset(&o, 0, sizeof(PaymentSendFailure)); }
1530 PaymentSendFailure(LDKPaymentSendFailure&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPaymentSendFailure)); }
1531 operator LDKPaymentSendFailure() && { LDKPaymentSendFailure res = self; memset(&self, 0, sizeof(LDKPaymentSendFailure)); return res; }
1532 ~PaymentSendFailure() { PaymentSendFailure_free(self); }
1533 PaymentSendFailure& operator=(PaymentSendFailure&& o) { PaymentSendFailure_free(self); self = o.self; memset(&o, 0, sizeof(PaymentSendFailure)); return *this; }
1534 LDKPaymentSendFailure* operator &() { return &self; }
1535 LDKPaymentSendFailure* operator ->() { return &self; }
1536 const LDKPaymentSendFailure* operator &() const { return &self; }
1537 const LDKPaymentSendFailure* operator ->() const { return &self; }
1539 class ChannelManagerReadArgs {
1541 LDKChannelManagerReadArgs self;
1543 ChannelManagerReadArgs(const ChannelManagerReadArgs&) = delete;
1544 ChannelManagerReadArgs(ChannelManagerReadArgs&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelManagerReadArgs)); }
1545 ChannelManagerReadArgs(LDKChannelManagerReadArgs&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelManagerReadArgs)); }
1546 operator LDKChannelManagerReadArgs() && { LDKChannelManagerReadArgs res = self; memset(&self, 0, sizeof(LDKChannelManagerReadArgs)); return res; }
1547 ~ChannelManagerReadArgs() { ChannelManagerReadArgs_free(self); }
1548 ChannelManagerReadArgs& operator=(ChannelManagerReadArgs&& o) { ChannelManagerReadArgs_free(self); self = o.self; memset(&o, 0, sizeof(ChannelManagerReadArgs)); return *this; }
1549 LDKChannelManagerReadArgs* operator &() { return &self; }
1550 LDKChannelManagerReadArgs* operator ->() { return &self; }
1551 const LDKChannelManagerReadArgs* operator &() const { return &self; }
1552 const LDKChannelManagerReadArgs* operator ->() const { return &self; }
1554 class ChannelHandshakeConfig {
1556 LDKChannelHandshakeConfig self;
1558 ChannelHandshakeConfig(const ChannelHandshakeConfig&) = delete;
1559 ChannelHandshakeConfig(ChannelHandshakeConfig&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelHandshakeConfig)); }
1560 ChannelHandshakeConfig(LDKChannelHandshakeConfig&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelHandshakeConfig)); }
1561 operator LDKChannelHandshakeConfig() && { LDKChannelHandshakeConfig res = self; memset(&self, 0, sizeof(LDKChannelHandshakeConfig)); return res; }
1562 ~ChannelHandshakeConfig() { ChannelHandshakeConfig_free(self); }
1563 ChannelHandshakeConfig& operator=(ChannelHandshakeConfig&& o) { ChannelHandshakeConfig_free(self); self = o.self; memset(&o, 0, sizeof(ChannelHandshakeConfig)); return *this; }
1564 LDKChannelHandshakeConfig* operator &() { return &self; }
1565 LDKChannelHandshakeConfig* operator ->() { return &self; }
1566 const LDKChannelHandshakeConfig* operator &() const { return &self; }
1567 const LDKChannelHandshakeConfig* operator ->() const { return &self; }
1569 class ChannelHandshakeLimits {
1571 LDKChannelHandshakeLimits self;
1573 ChannelHandshakeLimits(const ChannelHandshakeLimits&) = delete;
1574 ChannelHandshakeLimits(ChannelHandshakeLimits&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelHandshakeLimits)); }
1575 ChannelHandshakeLimits(LDKChannelHandshakeLimits&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelHandshakeLimits)); }
1576 operator LDKChannelHandshakeLimits() && { LDKChannelHandshakeLimits res = self; memset(&self, 0, sizeof(LDKChannelHandshakeLimits)); return res; }
1577 ~ChannelHandshakeLimits() { ChannelHandshakeLimits_free(self); }
1578 ChannelHandshakeLimits& operator=(ChannelHandshakeLimits&& o) { ChannelHandshakeLimits_free(self); self = o.self; memset(&o, 0, sizeof(ChannelHandshakeLimits)); return *this; }
1579 LDKChannelHandshakeLimits* operator &() { return &self; }
1580 LDKChannelHandshakeLimits* operator ->() { return &self; }
1581 const LDKChannelHandshakeLimits* operator &() const { return &self; }
1582 const LDKChannelHandshakeLimits* operator ->() const { return &self; }
1584 class ChannelConfig {
1586 LDKChannelConfig self;
1588 ChannelConfig(const ChannelConfig&) = delete;
1589 ChannelConfig(ChannelConfig&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelConfig)); }
1590 ChannelConfig(LDKChannelConfig&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelConfig)); }
1591 operator LDKChannelConfig() && { LDKChannelConfig res = self; memset(&self, 0, sizeof(LDKChannelConfig)); return res; }
1592 ~ChannelConfig() { ChannelConfig_free(self); }
1593 ChannelConfig& operator=(ChannelConfig&& o) { ChannelConfig_free(self); self = o.self; memset(&o, 0, sizeof(ChannelConfig)); return *this; }
1594 LDKChannelConfig* operator &() { return &self; }
1595 LDKChannelConfig* operator ->() { return &self; }
1596 const LDKChannelConfig* operator &() const { return &self; }
1597 const LDKChannelConfig* operator ->() const { return &self; }
1603 UserConfig(const UserConfig&) = delete;
1604 UserConfig(UserConfig&& o) : self(o.self) { memset(&o, 0, sizeof(UserConfig)); }
1605 UserConfig(LDKUserConfig&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUserConfig)); }
1606 operator LDKUserConfig() && { LDKUserConfig res = self; memset(&self, 0, sizeof(LDKUserConfig)); return res; }
1607 ~UserConfig() { UserConfig_free(self); }
1608 UserConfig& operator=(UserConfig&& o) { UserConfig_free(self); self = o.self; memset(&o, 0, sizeof(UserConfig)); return *this; }
1609 LDKUserConfig* operator &() { return &self; }
1610 LDKUserConfig* operator ->() { return &self; }
1611 const LDKUserConfig* operator &() const { return &self; }
1612 const LDKUserConfig* operator ->() const { return &self; }
1618 APIError(const APIError&) = delete;
1619 APIError(APIError&& o) : self(o.self) { memset(&o, 0, sizeof(APIError)); }
1620 APIError(LDKAPIError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKAPIError)); }
1621 operator LDKAPIError() && { LDKAPIError res = self; memset(&self, 0, sizeof(LDKAPIError)); return res; }
1622 ~APIError() { APIError_free(self); }
1623 APIError& operator=(APIError&& o) { APIError_free(self); self = o.self; memset(&o, 0, sizeof(APIError)); return *this; }
1624 LDKAPIError* operator &() { return &self; }
1625 LDKAPIError* operator ->() { return &self; }
1626 const LDKAPIError* operator &() const { return &self; }
1627 const LDKAPIError* operator ->() const { return &self; }
1633 OutPoint(const OutPoint&) = delete;
1634 OutPoint(OutPoint&& o) : self(o.self) { memset(&o, 0, sizeof(OutPoint)); }
1635 OutPoint(LDKOutPoint&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKOutPoint)); }
1636 operator LDKOutPoint() && { LDKOutPoint res = self; memset(&self, 0, sizeof(LDKOutPoint)); return res; }
1637 ~OutPoint() { OutPoint_free(self); }
1638 OutPoint& operator=(OutPoint&& o) { OutPoint_free(self); self = o.self; memset(&o, 0, sizeof(OutPoint)); return *this; }
1639 LDKOutPoint* operator &() { return &self; }
1640 LDKOutPoint* operator ->() { return &self; }
1641 const LDKOutPoint* operator &() const { return &self; }
1642 const LDKOutPoint* operator ->() const { return &self; }
1644 class CustomMessageReader {
1646 LDKCustomMessageReader self;
1648 CustomMessageReader(const CustomMessageReader&) = delete;
1649 CustomMessageReader(CustomMessageReader&& o) : self(o.self) { memset(&o, 0, sizeof(CustomMessageReader)); }
1650 CustomMessageReader(LDKCustomMessageReader&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCustomMessageReader)); }
1651 operator LDKCustomMessageReader() && { LDKCustomMessageReader res = self; memset(&self, 0, sizeof(LDKCustomMessageReader)); return res; }
1652 ~CustomMessageReader() { CustomMessageReader_free(self); }
1653 CustomMessageReader& operator=(CustomMessageReader&& o) { CustomMessageReader_free(self); self = o.self; memset(&o, 0, sizeof(CustomMessageReader)); return *this; }
1654 LDKCustomMessageReader* operator &() { return &self; }
1655 LDKCustomMessageReader* operator ->() { return &self; }
1656 const LDKCustomMessageReader* operator &() const { return &self; }
1657 const LDKCustomMessageReader* operator ->() const { return &self; }
1659 * Decodes a custom message to `CustomMessageType`. If the given message type is known to the
1660 * implementation and the message could be decoded, must return `Ok(Some(message))`. If the
1661 * message type is unknown to the implementation, must return `Ok(None)`. If a decoding error
1662 * occur, must return `Err(DecodeError::X)` where `X` details the encountered error.
1664 inline LDK::CResult_COption_TypeZDecodeErrorZ read(uint16_t message_type, struct LDKu8slice buffer);
1670 Type(const Type&) = delete;
1671 Type(Type&& o) : self(o.self) { memset(&o, 0, sizeof(Type)); }
1672 Type(LDKType&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKType)); }
1673 operator LDKType() && { LDKType res = self; memset(&self, 0, sizeof(LDKType)); return res; }
1674 ~Type() { Type_free(self); }
1675 Type& operator=(Type&& o) { Type_free(self); self = o.self; memset(&o, 0, sizeof(Type)); return *this; }
1676 LDKType* operator &() { return &self; }
1677 LDKType* operator ->() { return &self; }
1678 const LDKType* operator &() const { return &self; }
1679 const LDKType* operator ->() const { return &self; }
1681 * Returns the type identifying the message payload.
1683 inline uint16_t type_id();
1685 * Return a human-readable "debug" string describing this object
1687 inline LDK::Str debug_str();
1693 Invoice(const Invoice&) = delete;
1694 Invoice(Invoice&& o) : self(o.self) { memset(&o, 0, sizeof(Invoice)); }
1695 Invoice(LDKInvoice&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInvoice)); }
1696 operator LDKInvoice() && { LDKInvoice res = self; memset(&self, 0, sizeof(LDKInvoice)); return res; }
1697 ~Invoice() { Invoice_free(self); }
1698 Invoice& operator=(Invoice&& o) { Invoice_free(self); self = o.self; memset(&o, 0, sizeof(Invoice)); return *this; }
1699 LDKInvoice* operator &() { return &self; }
1700 LDKInvoice* operator ->() { return &self; }
1701 const LDKInvoice* operator &() const { return &self; }
1702 const LDKInvoice* operator ->() const { return &self; }
1704 class SignedRawInvoice {
1706 LDKSignedRawInvoice self;
1708 SignedRawInvoice(const SignedRawInvoice&) = delete;
1709 SignedRawInvoice(SignedRawInvoice&& o) : self(o.self) { memset(&o, 0, sizeof(SignedRawInvoice)); }
1710 SignedRawInvoice(LDKSignedRawInvoice&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSignedRawInvoice)); }
1711 operator LDKSignedRawInvoice() && { LDKSignedRawInvoice res = self; memset(&self, 0, sizeof(LDKSignedRawInvoice)); return res; }
1712 ~SignedRawInvoice() { SignedRawInvoice_free(self); }
1713 SignedRawInvoice& operator=(SignedRawInvoice&& o) { SignedRawInvoice_free(self); self = o.self; memset(&o, 0, sizeof(SignedRawInvoice)); return *this; }
1714 LDKSignedRawInvoice* operator &() { return &self; }
1715 LDKSignedRawInvoice* operator ->() { return &self; }
1716 const LDKSignedRawInvoice* operator &() const { return &self; }
1717 const LDKSignedRawInvoice* operator ->() const { return &self; }
1723 RawInvoice(const RawInvoice&) = delete;
1724 RawInvoice(RawInvoice&& o) : self(o.self) { memset(&o, 0, sizeof(RawInvoice)); }
1725 RawInvoice(LDKRawInvoice&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRawInvoice)); }
1726 operator LDKRawInvoice() && { LDKRawInvoice res = self; memset(&self, 0, sizeof(LDKRawInvoice)); return res; }
1727 ~RawInvoice() { RawInvoice_free(self); }
1728 RawInvoice& operator=(RawInvoice&& o) { RawInvoice_free(self); self = o.self; memset(&o, 0, sizeof(RawInvoice)); return *this; }
1729 LDKRawInvoice* operator &() { return &self; }
1730 LDKRawInvoice* operator ->() { return &self; }
1731 const LDKRawInvoice* operator &() const { return &self; }
1732 const LDKRawInvoice* operator ->() const { return &self; }
1736 LDKRawDataPart self;
1738 RawDataPart(const RawDataPart&) = delete;
1739 RawDataPart(RawDataPart&& o) : self(o.self) { memset(&o, 0, sizeof(RawDataPart)); }
1740 RawDataPart(LDKRawDataPart&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRawDataPart)); }
1741 operator LDKRawDataPart() && { LDKRawDataPart res = self; memset(&self, 0, sizeof(LDKRawDataPart)); return res; }
1742 ~RawDataPart() { RawDataPart_free(self); }
1743 RawDataPart& operator=(RawDataPart&& o) { RawDataPart_free(self); self = o.self; memset(&o, 0, sizeof(RawDataPart)); return *this; }
1744 LDKRawDataPart* operator &() { return &self; }
1745 LDKRawDataPart* operator ->() { return &self; }
1746 const LDKRawDataPart* operator &() const { return &self; }
1747 const LDKRawDataPart* operator ->() const { return &self; }
1749 class PositiveTimestamp {
1751 LDKPositiveTimestamp self;
1753 PositiveTimestamp(const PositiveTimestamp&) = delete;
1754 PositiveTimestamp(PositiveTimestamp&& o) : self(o.self) { memset(&o, 0, sizeof(PositiveTimestamp)); }
1755 PositiveTimestamp(LDKPositiveTimestamp&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPositiveTimestamp)); }
1756 operator LDKPositiveTimestamp() && { LDKPositiveTimestamp res = self; memset(&self, 0, sizeof(LDKPositiveTimestamp)); return res; }
1757 ~PositiveTimestamp() { PositiveTimestamp_free(self); }
1758 PositiveTimestamp& operator=(PositiveTimestamp&& o) { PositiveTimestamp_free(self); self = o.self; memset(&o, 0, sizeof(PositiveTimestamp)); return *this; }
1759 LDKPositiveTimestamp* operator &() { return &self; }
1760 LDKPositiveTimestamp* operator ->() { return &self; }
1761 const LDKPositiveTimestamp* operator &() const { return &self; }
1762 const LDKPositiveTimestamp* operator ->() const { return &self; }
1768 SiPrefix(const SiPrefix&) = delete;
1769 SiPrefix(SiPrefix&& o) : self(o.self) { memset(&o, 0, sizeof(SiPrefix)); }
1770 SiPrefix(LDKSiPrefix&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSiPrefix)); }
1771 operator LDKSiPrefix() && { LDKSiPrefix res = self; memset(&self, 0, sizeof(LDKSiPrefix)); return res; }
1772 SiPrefix& operator=(SiPrefix&& o) { self = o.self; memset(&o, 0, sizeof(SiPrefix)); return *this; }
1773 LDKSiPrefix* operator &() { return &self; }
1774 LDKSiPrefix* operator ->() { return &self; }
1775 const LDKSiPrefix* operator &() const { return &self; }
1776 const LDKSiPrefix* operator ->() const { return &self; }
1782 Currency(const Currency&) = delete;
1783 Currency(Currency&& o) : self(o.self) { memset(&o, 0, sizeof(Currency)); }
1784 Currency(LDKCurrency&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCurrency)); }
1785 operator LDKCurrency() && { LDKCurrency res = self; memset(&self, 0, sizeof(LDKCurrency)); return res; }
1786 Currency& operator=(Currency&& o) { self = o.self; memset(&o, 0, sizeof(Currency)); return *this; }
1787 LDKCurrency* operator &() { return &self; }
1788 LDKCurrency* operator ->() { return &self; }
1789 const LDKCurrency* operator &() const { return &self; }
1790 const LDKCurrency* operator ->() const { return &self; }
1796 Sha256(const Sha256&) = delete;
1797 Sha256(Sha256&& o) : self(o.self) { memset(&o, 0, sizeof(Sha256)); }
1798 Sha256(LDKSha256&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSha256)); }
1799 operator LDKSha256() && { LDKSha256 res = self; memset(&self, 0, sizeof(LDKSha256)); return res; }
1800 ~Sha256() { Sha256_free(self); }
1801 Sha256& operator=(Sha256&& o) { Sha256_free(self); self = o.self; memset(&o, 0, sizeof(Sha256)); return *this; }
1802 LDKSha256* operator &() { return &self; }
1803 LDKSha256* operator ->() { return &self; }
1804 const LDKSha256* operator &() const { return &self; }
1805 const LDKSha256* operator ->() const { return &self; }
1809 LDKDescription self;
1811 Description(const Description&) = delete;
1812 Description(Description&& o) : self(o.self) { memset(&o, 0, sizeof(Description)); }
1813 Description(LDKDescription&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKDescription)); }
1814 operator LDKDescription() && { LDKDescription res = self; memset(&self, 0, sizeof(LDKDescription)); return res; }
1815 ~Description() { Description_free(self); }
1816 Description& operator=(Description&& o) { Description_free(self); self = o.self; memset(&o, 0, sizeof(Description)); return *this; }
1817 LDKDescription* operator &() { return &self; }
1818 LDKDescription* operator ->() { return &self; }
1819 const LDKDescription* operator &() const { return &self; }
1820 const LDKDescription* operator ->() const { return &self; }
1824 LDKPayeePubKey self;
1826 PayeePubKey(const PayeePubKey&) = delete;
1827 PayeePubKey(PayeePubKey&& o) : self(o.self) { memset(&o, 0, sizeof(PayeePubKey)); }
1828 PayeePubKey(LDKPayeePubKey&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPayeePubKey)); }
1829 operator LDKPayeePubKey() && { LDKPayeePubKey res = self; memset(&self, 0, sizeof(LDKPayeePubKey)); return res; }
1830 ~PayeePubKey() { PayeePubKey_free(self); }
1831 PayeePubKey& operator=(PayeePubKey&& o) { PayeePubKey_free(self); self = o.self; memset(&o, 0, sizeof(PayeePubKey)); return *this; }
1832 LDKPayeePubKey* operator &() { return &self; }
1833 LDKPayeePubKey* operator ->() { return &self; }
1834 const LDKPayeePubKey* operator &() const { return &self; }
1835 const LDKPayeePubKey* operator ->() const { return &self; }
1841 ExpiryTime(const ExpiryTime&) = delete;
1842 ExpiryTime(ExpiryTime&& o) : self(o.self) { memset(&o, 0, sizeof(ExpiryTime)); }
1843 ExpiryTime(LDKExpiryTime&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKExpiryTime)); }
1844 operator LDKExpiryTime() && { LDKExpiryTime res = self; memset(&self, 0, sizeof(LDKExpiryTime)); return res; }
1845 ~ExpiryTime() { ExpiryTime_free(self); }
1846 ExpiryTime& operator=(ExpiryTime&& o) { ExpiryTime_free(self); self = o.self; memset(&o, 0, sizeof(ExpiryTime)); return *this; }
1847 LDKExpiryTime* operator &() { return &self; }
1848 LDKExpiryTime* operator ->() { return &self; }
1849 const LDKExpiryTime* operator &() const { return &self; }
1850 const LDKExpiryTime* operator ->() const { return &self; }
1852 class MinFinalCltvExpiry {
1854 LDKMinFinalCltvExpiry self;
1856 MinFinalCltvExpiry(const MinFinalCltvExpiry&) = delete;
1857 MinFinalCltvExpiry(MinFinalCltvExpiry&& o) : self(o.self) { memset(&o, 0, sizeof(MinFinalCltvExpiry)); }
1858 MinFinalCltvExpiry(LDKMinFinalCltvExpiry&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKMinFinalCltvExpiry)); }
1859 operator LDKMinFinalCltvExpiry() && { LDKMinFinalCltvExpiry res = self; memset(&self, 0, sizeof(LDKMinFinalCltvExpiry)); return res; }
1860 ~MinFinalCltvExpiry() { MinFinalCltvExpiry_free(self); }
1861 MinFinalCltvExpiry& operator=(MinFinalCltvExpiry&& o) { MinFinalCltvExpiry_free(self); self = o.self; memset(&o, 0, sizeof(MinFinalCltvExpiry)); return *this; }
1862 LDKMinFinalCltvExpiry* operator &() { return &self; }
1863 LDKMinFinalCltvExpiry* operator ->() { return &self; }
1864 const LDKMinFinalCltvExpiry* operator &() const { return &self; }
1865 const LDKMinFinalCltvExpiry* operator ->() const { return &self; }
1871 Fallback(const Fallback&) = delete;
1872 Fallback(Fallback&& o) : self(o.self) { memset(&o, 0, sizeof(Fallback)); }
1873 Fallback(LDKFallback&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFallback)); }
1874 operator LDKFallback() && { LDKFallback res = self; memset(&self, 0, sizeof(LDKFallback)); return res; }
1875 ~Fallback() { Fallback_free(self); }
1876 Fallback& operator=(Fallback&& o) { Fallback_free(self); self = o.self; memset(&o, 0, sizeof(Fallback)); return *this; }
1877 LDKFallback* operator &() { return &self; }
1878 LDKFallback* operator ->() { return &self; }
1879 const LDKFallback* operator &() const { return &self; }
1880 const LDKFallback* operator ->() const { return &self; }
1882 class InvoiceSignature {
1884 LDKInvoiceSignature self;
1886 InvoiceSignature(const InvoiceSignature&) = delete;
1887 InvoiceSignature(InvoiceSignature&& o) : self(o.self) { memset(&o, 0, sizeof(InvoiceSignature)); }
1888 InvoiceSignature(LDKInvoiceSignature&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInvoiceSignature)); }
1889 operator LDKInvoiceSignature() && { LDKInvoiceSignature res = self; memset(&self, 0, sizeof(LDKInvoiceSignature)); return res; }
1890 ~InvoiceSignature() { InvoiceSignature_free(self); }
1891 InvoiceSignature& operator=(InvoiceSignature&& o) { InvoiceSignature_free(self); self = o.self; memset(&o, 0, sizeof(InvoiceSignature)); return *this; }
1892 LDKInvoiceSignature* operator &() { return &self; }
1893 LDKInvoiceSignature* operator ->() { return &self; }
1894 const LDKInvoiceSignature* operator &() const { return &self; }
1895 const LDKInvoiceSignature* operator ->() const { return &self; }
1897 class PrivateRoute {
1899 LDKPrivateRoute self;
1901 PrivateRoute(const PrivateRoute&) = delete;
1902 PrivateRoute(PrivateRoute&& o) : self(o.self) { memset(&o, 0, sizeof(PrivateRoute)); }
1903 PrivateRoute(LDKPrivateRoute&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPrivateRoute)); }
1904 operator LDKPrivateRoute() && { LDKPrivateRoute res = self; memset(&self, 0, sizeof(LDKPrivateRoute)); return res; }
1905 ~PrivateRoute() { PrivateRoute_free(self); }
1906 PrivateRoute& operator=(PrivateRoute&& o) { PrivateRoute_free(self); self = o.self; memset(&o, 0, sizeof(PrivateRoute)); return *this; }
1907 LDKPrivateRoute* operator &() { return &self; }
1908 LDKPrivateRoute* operator ->() { return &self; }
1909 const LDKPrivateRoute* operator &() const { return &self; }
1910 const LDKPrivateRoute* operator ->() const { return &self; }
1912 class CreationError {
1914 LDKCreationError self;
1916 CreationError(const CreationError&) = delete;
1917 CreationError(CreationError&& o) : self(o.self) { memset(&o, 0, sizeof(CreationError)); }
1918 CreationError(LDKCreationError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCreationError)); }
1919 operator LDKCreationError() && { LDKCreationError res = self; memset(&self, 0, sizeof(LDKCreationError)); return res; }
1920 CreationError& operator=(CreationError&& o) { self = o.self; memset(&o, 0, sizeof(CreationError)); return *this; }
1921 LDKCreationError* operator &() { return &self; }
1922 LDKCreationError* operator ->() { return &self; }
1923 const LDKCreationError* operator &() const { return &self; }
1924 const LDKCreationError* operator ->() const { return &self; }
1926 class SemanticError {
1928 LDKSemanticError self;
1930 SemanticError(const SemanticError&) = delete;
1931 SemanticError(SemanticError&& o) : self(o.self) { memset(&o, 0, sizeof(SemanticError)); }
1932 SemanticError(LDKSemanticError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSemanticError)); }
1933 operator LDKSemanticError() && { LDKSemanticError res = self; memset(&self, 0, sizeof(LDKSemanticError)); return res; }
1934 SemanticError& operator=(SemanticError&& o) { self = o.self; memset(&o, 0, sizeof(SemanticError)); return *this; }
1935 LDKSemanticError* operator &() { return &self; }
1936 LDKSemanticError* operator ->() { return &self; }
1937 const LDKSemanticError* operator &() const { return &self; }
1938 const LDKSemanticError* operator ->() const { return &self; }
1940 class SignOrCreationError {
1942 LDKSignOrCreationError self;
1944 SignOrCreationError(const SignOrCreationError&) = delete;
1945 SignOrCreationError(SignOrCreationError&& o) : self(o.self) { memset(&o, 0, sizeof(SignOrCreationError)); }
1946 SignOrCreationError(LDKSignOrCreationError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSignOrCreationError)); }
1947 operator LDKSignOrCreationError() && { LDKSignOrCreationError res = self; memset(&self, 0, sizeof(LDKSignOrCreationError)); return res; }
1948 ~SignOrCreationError() { SignOrCreationError_free(self); }
1949 SignOrCreationError& operator=(SignOrCreationError&& o) { SignOrCreationError_free(self); self = o.self; memset(&o, 0, sizeof(SignOrCreationError)); return *this; }
1950 LDKSignOrCreationError* operator &() { return &self; }
1951 LDKSignOrCreationError* operator ->() { return &self; }
1952 const LDKSignOrCreationError* operator &() const { return &self; }
1953 const LDKSignOrCreationError* operator ->() const { return &self; }
1955 class ChannelMonitorUpdate {
1957 LDKChannelMonitorUpdate self;
1959 ChannelMonitorUpdate(const ChannelMonitorUpdate&) = delete;
1960 ChannelMonitorUpdate(ChannelMonitorUpdate&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelMonitorUpdate)); }
1961 ChannelMonitorUpdate(LDKChannelMonitorUpdate&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelMonitorUpdate)); }
1962 operator LDKChannelMonitorUpdate() && { LDKChannelMonitorUpdate res = self; memset(&self, 0, sizeof(LDKChannelMonitorUpdate)); return res; }
1963 ~ChannelMonitorUpdate() { ChannelMonitorUpdate_free(self); }
1964 ChannelMonitorUpdate& operator=(ChannelMonitorUpdate&& o) { ChannelMonitorUpdate_free(self); self = o.self; memset(&o, 0, sizeof(ChannelMonitorUpdate)); return *this; }
1965 LDKChannelMonitorUpdate* operator &() { return &self; }
1966 LDKChannelMonitorUpdate* operator ->() { return &self; }
1967 const LDKChannelMonitorUpdate* operator &() const { return &self; }
1968 const LDKChannelMonitorUpdate* operator ->() const { return &self; }
1970 class ChannelMonitorUpdateErr {
1972 LDKChannelMonitorUpdateErr self;
1974 ChannelMonitorUpdateErr(const ChannelMonitorUpdateErr&) = delete;
1975 ChannelMonitorUpdateErr(ChannelMonitorUpdateErr&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelMonitorUpdateErr)); }
1976 ChannelMonitorUpdateErr(LDKChannelMonitorUpdateErr&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelMonitorUpdateErr)); }
1977 operator LDKChannelMonitorUpdateErr() && { LDKChannelMonitorUpdateErr res = self; memset(&self, 0, sizeof(LDKChannelMonitorUpdateErr)); return res; }
1978 ChannelMonitorUpdateErr& operator=(ChannelMonitorUpdateErr&& o) { self = o.self; memset(&o, 0, sizeof(ChannelMonitorUpdateErr)); return *this; }
1979 LDKChannelMonitorUpdateErr* operator &() { return &self; }
1980 LDKChannelMonitorUpdateErr* operator ->() { return &self; }
1981 const LDKChannelMonitorUpdateErr* operator &() const { return &self; }
1982 const LDKChannelMonitorUpdateErr* operator ->() const { return &self; }
1984 class MonitorUpdateError {
1986 LDKMonitorUpdateError self;
1988 MonitorUpdateError(const MonitorUpdateError&) = delete;
1989 MonitorUpdateError(MonitorUpdateError&& o) : self(o.self) { memset(&o, 0, sizeof(MonitorUpdateError)); }
1990 MonitorUpdateError(LDKMonitorUpdateError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKMonitorUpdateError)); }
1991 operator LDKMonitorUpdateError() && { LDKMonitorUpdateError res = self; memset(&self, 0, sizeof(LDKMonitorUpdateError)); return res; }
1992 ~MonitorUpdateError() { MonitorUpdateError_free(self); }
1993 MonitorUpdateError& operator=(MonitorUpdateError&& o) { MonitorUpdateError_free(self); self = o.self; memset(&o, 0, sizeof(MonitorUpdateError)); return *this; }
1994 LDKMonitorUpdateError* operator &() { return &self; }
1995 LDKMonitorUpdateError* operator ->() { return &self; }
1996 const LDKMonitorUpdateError* operator &() const { return &self; }
1997 const LDKMonitorUpdateError* operator ->() const { return &self; }
1999 class MonitorEvent {
2001 LDKMonitorEvent self;
2003 MonitorEvent(const MonitorEvent&) = delete;
2004 MonitorEvent(MonitorEvent&& o) : self(o.self) { memset(&o, 0, sizeof(MonitorEvent)); }
2005 MonitorEvent(LDKMonitorEvent&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKMonitorEvent)); }
2006 operator LDKMonitorEvent() && { LDKMonitorEvent res = self; memset(&self, 0, sizeof(LDKMonitorEvent)); return res; }
2007 ~MonitorEvent() { MonitorEvent_free(self); }
2008 MonitorEvent& operator=(MonitorEvent&& o) { MonitorEvent_free(self); self = o.self; memset(&o, 0, sizeof(MonitorEvent)); return *this; }
2009 LDKMonitorEvent* operator &() { return &self; }
2010 LDKMonitorEvent* operator ->() { return &self; }
2011 const LDKMonitorEvent* operator &() const { return &self; }
2012 const LDKMonitorEvent* operator ->() const { return &self; }
2018 HTLCUpdate(const HTLCUpdate&) = delete;
2019 HTLCUpdate(HTLCUpdate&& o) : self(o.self) { memset(&o, 0, sizeof(HTLCUpdate)); }
2020 HTLCUpdate(LDKHTLCUpdate&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKHTLCUpdate)); }
2021 operator LDKHTLCUpdate() && { LDKHTLCUpdate res = self; memset(&self, 0, sizeof(LDKHTLCUpdate)); return res; }
2022 ~HTLCUpdate() { HTLCUpdate_free(self); }
2023 HTLCUpdate& operator=(HTLCUpdate&& o) { HTLCUpdate_free(self); self = o.self; memset(&o, 0, sizeof(HTLCUpdate)); return *this; }
2024 LDKHTLCUpdate* operator &() { return &self; }
2025 LDKHTLCUpdate* operator ->() { return &self; }
2026 const LDKHTLCUpdate* operator &() const { return &self; }
2027 const LDKHTLCUpdate* operator ->() const { return &self; }
2033 Balance(const Balance&) = delete;
2034 Balance(Balance&& o) : self(o.self) { memset(&o, 0, sizeof(Balance)); }
2035 Balance(LDKBalance&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKBalance)); }
2036 operator LDKBalance() && { LDKBalance res = self; memset(&self, 0, sizeof(LDKBalance)); return res; }
2037 ~Balance() { Balance_free(self); }
2038 Balance& operator=(Balance&& o) { Balance_free(self); self = o.self; memset(&o, 0, sizeof(Balance)); return *this; }
2039 LDKBalance* operator &() { return &self; }
2040 LDKBalance* operator ->() { return &self; }
2041 const LDKBalance* operator &() const { return &self; }
2042 const LDKBalance* operator ->() const { return &self; }
2044 class ChannelMonitor {
2046 LDKChannelMonitor self;
2048 ChannelMonitor(const ChannelMonitor&) = delete;
2049 ChannelMonitor(ChannelMonitor&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelMonitor)); }
2050 ChannelMonitor(LDKChannelMonitor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelMonitor)); }
2051 operator LDKChannelMonitor() && { LDKChannelMonitor res = self; memset(&self, 0, sizeof(LDKChannelMonitor)); return res; }
2052 ~ChannelMonitor() { ChannelMonitor_free(self); }
2053 ChannelMonitor& operator=(ChannelMonitor&& o) { ChannelMonitor_free(self); self = o.self; memset(&o, 0, sizeof(ChannelMonitor)); return *this; }
2054 LDKChannelMonitor* operator &() { return &self; }
2055 LDKChannelMonitor* operator ->() { return &self; }
2056 const LDKChannelMonitor* operator &() const { return &self; }
2057 const LDKChannelMonitor* operator ->() const { return &self; }
2063 Persist(const Persist&) = delete;
2064 Persist(Persist&& o) : self(o.self) { memset(&o, 0, sizeof(Persist)); }
2065 Persist(LDKPersist&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPersist)); }
2066 operator LDKPersist() && { LDKPersist res = self; memset(&self, 0, sizeof(LDKPersist)); return res; }
2067 ~Persist() { Persist_free(self); }
2068 Persist& operator=(Persist&& o) { Persist_free(self); self = o.self; memset(&o, 0, sizeof(Persist)); return *this; }
2069 LDKPersist* operator &() { return &self; }
2070 LDKPersist* operator ->() { return &self; }
2071 const LDKPersist* operator &() const { return &self; }
2072 const LDKPersist* operator ->() const { return &self; }
2074 * Persist a new channel's data. The data can be stored any way you want, but
2075 * the identifier provided by Rust-Lightning is the channel's outpoint (and
2076 * it is up to you to maintain a correct mapping between the outpoint and the
2077 * stored channel data). Note that you **must** persist every new monitor to
2078 * disk. See the `Persist` trait documentation for more details.
2080 * See [`ChannelMonitor::write`] for writing out a `ChannelMonitor`,
2081 * and [`ChannelMonitorUpdateErr`] for requirements when returning errors.
2083 inline LDK::CResult_NoneChannelMonitorUpdateErrZ persist_new_channel(struct LDKOutPoint id, const struct LDKChannelMonitor *NONNULL_PTR data);
2085 * Update one channel's data. The provided `ChannelMonitor` has already
2086 * applied the given update.
2088 * Note that on every update, you **must** persist either the
2089 * `ChannelMonitorUpdate` or the updated monitor itself to disk/backups. See
2090 * the `Persist` trait documentation for more details.
2092 * If an implementer chooses to persist the updates only, they need to make
2093 * sure that all the updates are applied to the `ChannelMonitors` *before*
2094 * the set of channel monitors is given to the `ChannelManager`
2095 * deserialization routine. See [`ChannelMonitor::update_monitor`] for
2096 * applying a monitor update to a monitor. If full `ChannelMonitors` are
2097 * persisted, then there is no need to persist individual updates.
2099 * Note that there could be a performance tradeoff between persisting complete
2100 * channel monitors on every update vs. persisting only updates and applying
2101 * them in batches. The size of each monitor grows `O(number of state updates)`
2102 * whereas updates are small and `O(1)`.
2104 * See [`ChannelMonitor::write`] for writing out a `ChannelMonitor`,
2105 * [`ChannelMonitorUpdate::write`] for writing out an update, and
2106 * [`ChannelMonitorUpdateErr`] for requirements when returning errors.
2108 inline LDK::CResult_NoneChannelMonitorUpdateErrZ update_persisted_channel(struct LDKOutPoint id, const struct LDKChannelMonitorUpdate *NONNULL_PTR update, const struct LDKChannelMonitor *NONNULL_PTR data);
2110 class CustomMessageHandler {
2112 LDKCustomMessageHandler self;
2114 CustomMessageHandler(const CustomMessageHandler&) = delete;
2115 CustomMessageHandler(CustomMessageHandler&& o) : self(o.self) { memset(&o, 0, sizeof(CustomMessageHandler)); }
2116 CustomMessageHandler(LDKCustomMessageHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCustomMessageHandler)); }
2117 operator LDKCustomMessageHandler() && { LDKCustomMessageHandler res = self; memset(&self, 0, sizeof(LDKCustomMessageHandler)); return res; }
2118 ~CustomMessageHandler() { CustomMessageHandler_free(self); }
2119 CustomMessageHandler& operator=(CustomMessageHandler&& o) { CustomMessageHandler_free(self); self = o.self; memset(&o, 0, sizeof(CustomMessageHandler)); return *this; }
2120 LDKCustomMessageHandler* operator &() { return &self; }
2121 LDKCustomMessageHandler* operator ->() { return &self; }
2122 const LDKCustomMessageHandler* operator &() const { return &self; }
2123 const LDKCustomMessageHandler* operator ->() const { return &self; }
2125 * Called with the message type that was received and the buffer to be read.
2126 * Can return a `MessageHandlingError` if the message could not be handled.
2128 inline LDK::CResult_NoneLightningErrorZ handle_custom_message(struct LDKType msg, struct LDKPublicKey sender_node_id);
2130 * Gets the list of pending messages which were generated by the custom message
2131 * handler, clearing the list in the process. The first tuple element must
2132 * correspond to the intended recipients node ids. If no connection to one of the
2133 * specified node does not exist, the message is simply not sent to it.
2135 inline LDK::CVec_C2Tuple_PublicKeyTypeZZ get_and_clear_pending_msg();
2137 class IgnoringMessageHandler {
2139 LDKIgnoringMessageHandler self;
2141 IgnoringMessageHandler(const IgnoringMessageHandler&) = delete;
2142 IgnoringMessageHandler(IgnoringMessageHandler&& o) : self(o.self) { memset(&o, 0, sizeof(IgnoringMessageHandler)); }
2143 IgnoringMessageHandler(LDKIgnoringMessageHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKIgnoringMessageHandler)); }
2144 operator LDKIgnoringMessageHandler() && { LDKIgnoringMessageHandler res = self; memset(&self, 0, sizeof(LDKIgnoringMessageHandler)); return res; }
2145 ~IgnoringMessageHandler() { IgnoringMessageHandler_free(self); }
2146 IgnoringMessageHandler& operator=(IgnoringMessageHandler&& o) { IgnoringMessageHandler_free(self); self = o.self; memset(&o, 0, sizeof(IgnoringMessageHandler)); return *this; }
2147 LDKIgnoringMessageHandler* operator &() { return &self; }
2148 LDKIgnoringMessageHandler* operator ->() { return &self; }
2149 const LDKIgnoringMessageHandler* operator &() const { return &self; }
2150 const LDKIgnoringMessageHandler* operator ->() const { return &self; }
2152 class ErroringMessageHandler {
2154 LDKErroringMessageHandler self;
2156 ErroringMessageHandler(const ErroringMessageHandler&) = delete;
2157 ErroringMessageHandler(ErroringMessageHandler&& o) : self(o.self) { memset(&o, 0, sizeof(ErroringMessageHandler)); }
2158 ErroringMessageHandler(LDKErroringMessageHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKErroringMessageHandler)); }
2159 operator LDKErroringMessageHandler() && { LDKErroringMessageHandler res = self; memset(&self, 0, sizeof(LDKErroringMessageHandler)); return res; }
2160 ~ErroringMessageHandler() { ErroringMessageHandler_free(self); }
2161 ErroringMessageHandler& operator=(ErroringMessageHandler&& o) { ErroringMessageHandler_free(self); self = o.self; memset(&o, 0, sizeof(ErroringMessageHandler)); return *this; }
2162 LDKErroringMessageHandler* operator &() { return &self; }
2163 LDKErroringMessageHandler* operator ->() { return &self; }
2164 const LDKErroringMessageHandler* operator &() const { return &self; }
2165 const LDKErroringMessageHandler* operator ->() const { return &self; }
2167 class MessageHandler {
2169 LDKMessageHandler self;
2171 MessageHandler(const MessageHandler&) = delete;
2172 MessageHandler(MessageHandler&& o) : self(o.self) { memset(&o, 0, sizeof(MessageHandler)); }
2173 MessageHandler(LDKMessageHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKMessageHandler)); }
2174 operator LDKMessageHandler() && { LDKMessageHandler res = self; memset(&self, 0, sizeof(LDKMessageHandler)); return res; }
2175 ~MessageHandler() { MessageHandler_free(self); }
2176 MessageHandler& operator=(MessageHandler&& o) { MessageHandler_free(self); self = o.self; memset(&o, 0, sizeof(MessageHandler)); return *this; }
2177 LDKMessageHandler* operator &() { return &self; }
2178 LDKMessageHandler* operator ->() { return &self; }
2179 const LDKMessageHandler* operator &() const { return &self; }
2180 const LDKMessageHandler* operator ->() const { return &self; }
2182 class SocketDescriptor {
2184 LDKSocketDescriptor self;
2186 SocketDescriptor(const SocketDescriptor&) = delete;
2187 SocketDescriptor(SocketDescriptor&& o) : self(o.self) { memset(&o, 0, sizeof(SocketDescriptor)); }
2188 SocketDescriptor(LDKSocketDescriptor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKSocketDescriptor)); }
2189 operator LDKSocketDescriptor() && { LDKSocketDescriptor res = self; memset(&self, 0, sizeof(LDKSocketDescriptor)); return res; }
2190 ~SocketDescriptor() { SocketDescriptor_free(self); }
2191 SocketDescriptor& operator=(SocketDescriptor&& o) { SocketDescriptor_free(self); self = o.self; memset(&o, 0, sizeof(SocketDescriptor)); return *this; }
2192 LDKSocketDescriptor* operator &() { return &self; }
2193 LDKSocketDescriptor* operator ->() { return &self; }
2194 const LDKSocketDescriptor* operator &() const { return &self; }
2195 const LDKSocketDescriptor* operator ->() const { return &self; }
2197 * Attempts to send some data from the given slice to the peer.
2199 * Returns the amount of data which was sent, possibly 0 if the socket has since disconnected.
2200 * Note that in the disconnected case, [`PeerManager::socket_disconnected`] must still be
2201 * called and further write attempts may occur until that time.
2203 * If the returned size is smaller than `data.len()`, a
2204 * [`PeerManager::write_buffer_space_avail`] call must be made the next time more data can be
2205 * written. Additionally, until a `send_data` event completes fully, no further
2206 * [`PeerManager::read_event`] calls should be made for the same peer! Because this is to
2207 * prevent denial-of-service issues, you should not read or buffer any data from the socket
2210 * If a [`PeerManager::read_event`] call on this descriptor had previously returned true
2211 * (indicating that read events should be paused to prevent DoS in the send buffer),
2212 * `resume_read` may be set indicating that read events on this descriptor should resume. A
2213 * `resume_read` of false carries no meaning, and should not cause any action.
2215 inline uintptr_t send_data(struct LDKu8slice data, bool resume_read);
2217 * Disconnect the socket pointed to by this SocketDescriptor.
2219 * You do *not* need to call [`PeerManager::socket_disconnected`] with this socket after this
2220 * call (doing so is a noop).
2222 inline void disconnect_socket();
2223 /** Checks if two objects are equal given this object's this_arg pointer and another object. */
2224 inline bool eq(const struct LDKSocketDescriptor *NONNULL_PTR other_arg);
2226 * Calculate a succinct non-cryptographic hash for an object given its this_arg pointer.
2227 * This is used, for example, for inclusion of this object in a hash map.
2229 inline uint64_t hash();
2231 class PeerHandleError {
2233 LDKPeerHandleError self;
2235 PeerHandleError(const PeerHandleError&) = delete;
2236 PeerHandleError(PeerHandleError&& o) : self(o.self) { memset(&o, 0, sizeof(PeerHandleError)); }
2237 PeerHandleError(LDKPeerHandleError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPeerHandleError)); }
2238 operator LDKPeerHandleError() && { LDKPeerHandleError res = self; memset(&self, 0, sizeof(LDKPeerHandleError)); return res; }
2239 ~PeerHandleError() { PeerHandleError_free(self); }
2240 PeerHandleError& operator=(PeerHandleError&& o) { PeerHandleError_free(self); self = o.self; memset(&o, 0, sizeof(PeerHandleError)); return *this; }
2241 LDKPeerHandleError* operator &() { return &self; }
2242 LDKPeerHandleError* operator ->() { return &self; }
2243 const LDKPeerHandleError* operator &() const { return &self; }
2244 const LDKPeerHandleError* operator ->() const { return &self; }
2248 LDKPeerManager self;
2250 PeerManager(const PeerManager&) = delete;
2251 PeerManager(PeerManager&& o) : self(o.self) { memset(&o, 0, sizeof(PeerManager)); }
2252 PeerManager(LDKPeerManager&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPeerManager)); }
2253 operator LDKPeerManager() && { LDKPeerManager res = self; memset(&self, 0, sizeof(LDKPeerManager)); return res; }
2254 ~PeerManager() { PeerManager_free(self); }
2255 PeerManager& operator=(PeerManager&& o) { PeerManager_free(self); self = o.self; memset(&o, 0, sizeof(PeerManager)); return *this; }
2256 LDKPeerManager* operator &() { return &self; }
2257 LDKPeerManager* operator ->() { return &self; }
2258 const LDKPeerManager* operator &() const { return &self; }
2259 const LDKPeerManager* operator ->() const { return &self; }
2261 class NetworkGraph {
2263 LDKNetworkGraph self;
2265 NetworkGraph(const NetworkGraph&) = delete;
2266 NetworkGraph(NetworkGraph&& o) : self(o.self) { memset(&o, 0, sizeof(NetworkGraph)); }
2267 NetworkGraph(LDKNetworkGraph&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNetworkGraph)); }
2268 operator LDKNetworkGraph() && { LDKNetworkGraph res = self; memset(&self, 0, sizeof(LDKNetworkGraph)); return res; }
2269 ~NetworkGraph() { NetworkGraph_free(self); }
2270 NetworkGraph& operator=(NetworkGraph&& o) { NetworkGraph_free(self); self = o.self; memset(&o, 0, sizeof(NetworkGraph)); return *this; }
2271 LDKNetworkGraph* operator &() { return &self; }
2272 LDKNetworkGraph* operator ->() { return &self; }
2273 const LDKNetworkGraph* operator &() const { return &self; }
2274 const LDKNetworkGraph* operator ->() const { return &self; }
2276 class ReadOnlyNetworkGraph {
2278 LDKReadOnlyNetworkGraph self;
2280 ReadOnlyNetworkGraph(const ReadOnlyNetworkGraph&) = delete;
2281 ReadOnlyNetworkGraph(ReadOnlyNetworkGraph&& o) : self(o.self) { memset(&o, 0, sizeof(ReadOnlyNetworkGraph)); }
2282 ReadOnlyNetworkGraph(LDKReadOnlyNetworkGraph&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKReadOnlyNetworkGraph)); }
2283 operator LDKReadOnlyNetworkGraph() && { LDKReadOnlyNetworkGraph res = self; memset(&self, 0, sizeof(LDKReadOnlyNetworkGraph)); return res; }
2284 ~ReadOnlyNetworkGraph() { ReadOnlyNetworkGraph_free(self); }
2285 ReadOnlyNetworkGraph& operator=(ReadOnlyNetworkGraph&& o) { ReadOnlyNetworkGraph_free(self); self = o.self; memset(&o, 0, sizeof(ReadOnlyNetworkGraph)); return *this; }
2286 LDKReadOnlyNetworkGraph* operator &() { return &self; }
2287 LDKReadOnlyNetworkGraph* operator ->() { return &self; }
2288 const LDKReadOnlyNetworkGraph* operator &() const { return &self; }
2289 const LDKReadOnlyNetworkGraph* operator ->() const { return &self; }
2291 class NetworkUpdate {
2293 LDKNetworkUpdate self;
2295 NetworkUpdate(const NetworkUpdate&) = delete;
2296 NetworkUpdate(NetworkUpdate&& o) : self(o.self) { memset(&o, 0, sizeof(NetworkUpdate)); }
2297 NetworkUpdate(LDKNetworkUpdate&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNetworkUpdate)); }
2298 operator LDKNetworkUpdate() && { LDKNetworkUpdate res = self; memset(&self, 0, sizeof(LDKNetworkUpdate)); return res; }
2299 ~NetworkUpdate() { NetworkUpdate_free(self); }
2300 NetworkUpdate& operator=(NetworkUpdate&& o) { NetworkUpdate_free(self); self = o.self; memset(&o, 0, sizeof(NetworkUpdate)); return *this; }
2301 LDKNetworkUpdate* operator &() { return &self; }
2302 LDKNetworkUpdate* operator ->() { return &self; }
2303 const LDKNetworkUpdate* operator &() const { return &self; }
2304 const LDKNetworkUpdate* operator ->() const { return &self; }
2306 class NetGraphMsgHandler {
2308 LDKNetGraphMsgHandler self;
2310 NetGraphMsgHandler(const NetGraphMsgHandler&) = delete;
2311 NetGraphMsgHandler(NetGraphMsgHandler&& o) : self(o.self) { memset(&o, 0, sizeof(NetGraphMsgHandler)); }
2312 NetGraphMsgHandler(LDKNetGraphMsgHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNetGraphMsgHandler)); }
2313 operator LDKNetGraphMsgHandler() && { LDKNetGraphMsgHandler res = self; memset(&self, 0, sizeof(LDKNetGraphMsgHandler)); return res; }
2314 ~NetGraphMsgHandler() { NetGraphMsgHandler_free(self); }
2315 NetGraphMsgHandler& operator=(NetGraphMsgHandler&& o) { NetGraphMsgHandler_free(self); self = o.self; memset(&o, 0, sizeof(NetGraphMsgHandler)); return *this; }
2316 LDKNetGraphMsgHandler* operator &() { return &self; }
2317 LDKNetGraphMsgHandler* operator ->() { return &self; }
2318 const LDKNetGraphMsgHandler* operator &() const { return &self; }
2319 const LDKNetGraphMsgHandler* operator ->() const { return &self; }
2321 class DirectionalChannelInfo {
2323 LDKDirectionalChannelInfo self;
2325 DirectionalChannelInfo(const DirectionalChannelInfo&) = delete;
2326 DirectionalChannelInfo(DirectionalChannelInfo&& o) : self(o.self) { memset(&o, 0, sizeof(DirectionalChannelInfo)); }
2327 DirectionalChannelInfo(LDKDirectionalChannelInfo&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKDirectionalChannelInfo)); }
2328 operator LDKDirectionalChannelInfo() && { LDKDirectionalChannelInfo res = self; memset(&self, 0, sizeof(LDKDirectionalChannelInfo)); return res; }
2329 ~DirectionalChannelInfo() { DirectionalChannelInfo_free(self); }
2330 DirectionalChannelInfo& operator=(DirectionalChannelInfo&& o) { DirectionalChannelInfo_free(self); self = o.self; memset(&o, 0, sizeof(DirectionalChannelInfo)); return *this; }
2331 LDKDirectionalChannelInfo* operator &() { return &self; }
2332 LDKDirectionalChannelInfo* operator ->() { return &self; }
2333 const LDKDirectionalChannelInfo* operator &() const { return &self; }
2334 const LDKDirectionalChannelInfo* operator ->() const { return &self; }
2338 LDKChannelInfo self;
2340 ChannelInfo(const ChannelInfo&) = delete;
2341 ChannelInfo(ChannelInfo&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelInfo)); }
2342 ChannelInfo(LDKChannelInfo&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelInfo)); }
2343 operator LDKChannelInfo() && { LDKChannelInfo res = self; memset(&self, 0, sizeof(LDKChannelInfo)); return res; }
2344 ~ChannelInfo() { ChannelInfo_free(self); }
2345 ChannelInfo& operator=(ChannelInfo&& o) { ChannelInfo_free(self); self = o.self; memset(&o, 0, sizeof(ChannelInfo)); return *this; }
2346 LDKChannelInfo* operator &() { return &self; }
2347 LDKChannelInfo* operator ->() { return &self; }
2348 const LDKChannelInfo* operator &() const { return &self; }
2349 const LDKChannelInfo* operator ->() const { return &self; }
2353 LDKRoutingFees self;
2355 RoutingFees(const RoutingFees&) = delete;
2356 RoutingFees(RoutingFees&& o) : self(o.self) { memset(&o, 0, sizeof(RoutingFees)); }
2357 RoutingFees(LDKRoutingFees&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRoutingFees)); }
2358 operator LDKRoutingFees() && { LDKRoutingFees res = self; memset(&self, 0, sizeof(LDKRoutingFees)); return res; }
2359 ~RoutingFees() { RoutingFees_free(self); }
2360 RoutingFees& operator=(RoutingFees&& o) { RoutingFees_free(self); self = o.self; memset(&o, 0, sizeof(RoutingFees)); return *this; }
2361 LDKRoutingFees* operator &() { return &self; }
2362 LDKRoutingFees* operator ->() { return &self; }
2363 const LDKRoutingFees* operator &() const { return &self; }
2364 const LDKRoutingFees* operator ->() const { return &self; }
2366 class NodeAnnouncementInfo {
2368 LDKNodeAnnouncementInfo self;
2370 NodeAnnouncementInfo(const NodeAnnouncementInfo&) = delete;
2371 NodeAnnouncementInfo(NodeAnnouncementInfo&& o) : self(o.self) { memset(&o, 0, sizeof(NodeAnnouncementInfo)); }
2372 NodeAnnouncementInfo(LDKNodeAnnouncementInfo&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNodeAnnouncementInfo)); }
2373 operator LDKNodeAnnouncementInfo() && { LDKNodeAnnouncementInfo res = self; memset(&self, 0, sizeof(LDKNodeAnnouncementInfo)); return res; }
2374 ~NodeAnnouncementInfo() { NodeAnnouncementInfo_free(self); }
2375 NodeAnnouncementInfo& operator=(NodeAnnouncementInfo&& o) { NodeAnnouncementInfo_free(self); self = o.self; memset(&o, 0, sizeof(NodeAnnouncementInfo)); return *this; }
2376 LDKNodeAnnouncementInfo* operator &() { return &self; }
2377 LDKNodeAnnouncementInfo* operator ->() { return &self; }
2378 const LDKNodeAnnouncementInfo* operator &() const { return &self; }
2379 const LDKNodeAnnouncementInfo* operator ->() const { return &self; }
2385 NodeInfo(const NodeInfo&) = delete;
2386 NodeInfo(NodeInfo&& o) : self(o.self) { memset(&o, 0, sizeof(NodeInfo)); }
2387 NodeInfo(LDKNodeInfo&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNodeInfo)); }
2388 operator LDKNodeInfo() && { LDKNodeInfo res = self; memset(&self, 0, sizeof(LDKNodeInfo)); return res; }
2389 ~NodeInfo() { NodeInfo_free(self); }
2390 NodeInfo& operator=(NodeInfo&& o) { NodeInfo_free(self); self = o.self; memset(&o, 0, sizeof(NodeInfo)); return *this; }
2391 LDKNodeInfo* operator &() { return &self; }
2392 LDKNodeInfo* operator ->() { return &self; }
2393 const LDKNodeInfo* operator &() const { return &self; }
2394 const LDKNodeInfo* operator ->() const { return &self; }
2398 LDKDecodeError self;
2400 DecodeError(const DecodeError&) = delete;
2401 DecodeError(DecodeError&& o) : self(o.self) { memset(&o, 0, sizeof(DecodeError)); }
2402 DecodeError(LDKDecodeError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKDecodeError)); }
2403 operator LDKDecodeError() && { LDKDecodeError res = self; memset(&self, 0, sizeof(LDKDecodeError)); return res; }
2404 ~DecodeError() { DecodeError_free(self); }
2405 DecodeError& operator=(DecodeError&& o) { DecodeError_free(self); self = o.self; memset(&o, 0, sizeof(DecodeError)); return *this; }
2406 LDKDecodeError* operator &() { return &self; }
2407 LDKDecodeError* operator ->() { return &self; }
2408 const LDKDecodeError* operator &() const { return &self; }
2409 const LDKDecodeError* operator ->() const { return &self; }
2415 Init(const Init&) = delete;
2416 Init(Init&& o) : self(o.self) { memset(&o, 0, sizeof(Init)); }
2417 Init(LDKInit&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKInit)); }
2418 operator LDKInit() && { LDKInit res = self; memset(&self, 0, sizeof(LDKInit)); return res; }
2419 ~Init() { Init_free(self); }
2420 Init& operator=(Init&& o) { Init_free(self); self = o.self; memset(&o, 0, sizeof(Init)); return *this; }
2421 LDKInit* operator &() { return &self; }
2422 LDKInit* operator ->() { return &self; }
2423 const LDKInit* operator &() const { return &self; }
2424 const LDKInit* operator ->() const { return &self; }
2426 class ErrorMessage {
2428 LDKErrorMessage self;
2430 ErrorMessage(const ErrorMessage&) = delete;
2431 ErrorMessage(ErrorMessage&& o) : self(o.self) { memset(&o, 0, sizeof(ErrorMessage)); }
2432 ErrorMessage(LDKErrorMessage&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKErrorMessage)); }
2433 operator LDKErrorMessage() && { LDKErrorMessage res = self; memset(&self, 0, sizeof(LDKErrorMessage)); return res; }
2434 ~ErrorMessage() { ErrorMessage_free(self); }
2435 ErrorMessage& operator=(ErrorMessage&& o) { ErrorMessage_free(self); self = o.self; memset(&o, 0, sizeof(ErrorMessage)); return *this; }
2436 LDKErrorMessage* operator &() { return &self; }
2437 LDKErrorMessage* operator ->() { return &self; }
2438 const LDKErrorMessage* operator &() const { return &self; }
2439 const LDKErrorMessage* operator ->() const { return &self; }
2445 Ping(const Ping&) = delete;
2446 Ping(Ping&& o) : self(o.self) { memset(&o, 0, sizeof(Ping)); }
2447 Ping(LDKPing&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPing)); }
2448 operator LDKPing() && { LDKPing res = self; memset(&self, 0, sizeof(LDKPing)); return res; }
2449 ~Ping() { Ping_free(self); }
2450 Ping& operator=(Ping&& o) { Ping_free(self); self = o.self; memset(&o, 0, sizeof(Ping)); return *this; }
2451 LDKPing* operator &() { return &self; }
2452 LDKPing* operator ->() { return &self; }
2453 const LDKPing* operator &() const { return &self; }
2454 const LDKPing* operator ->() const { return &self; }
2460 Pong(const Pong&) = delete;
2461 Pong(Pong&& o) : self(o.self) { memset(&o, 0, sizeof(Pong)); }
2462 Pong(LDKPong&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKPong)); }
2463 operator LDKPong() && { LDKPong res = self; memset(&self, 0, sizeof(LDKPong)); return res; }
2464 ~Pong() { Pong_free(self); }
2465 Pong& operator=(Pong&& o) { Pong_free(self); self = o.self; memset(&o, 0, sizeof(Pong)); return *this; }
2466 LDKPong* operator &() { return &self; }
2467 LDKPong* operator ->() { return &self; }
2468 const LDKPong* operator &() const { return &self; }
2469 const LDKPong* operator ->() const { return &self; }
2473 LDKOpenChannel self;
2475 OpenChannel(const OpenChannel&) = delete;
2476 OpenChannel(OpenChannel&& o) : self(o.self) { memset(&o, 0, sizeof(OpenChannel)); }
2477 OpenChannel(LDKOpenChannel&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKOpenChannel)); }
2478 operator LDKOpenChannel() && { LDKOpenChannel res = self; memset(&self, 0, sizeof(LDKOpenChannel)); return res; }
2479 ~OpenChannel() { OpenChannel_free(self); }
2480 OpenChannel& operator=(OpenChannel&& o) { OpenChannel_free(self); self = o.self; memset(&o, 0, sizeof(OpenChannel)); return *this; }
2481 LDKOpenChannel* operator &() { return &self; }
2482 LDKOpenChannel* operator ->() { return &self; }
2483 const LDKOpenChannel* operator &() const { return &self; }
2484 const LDKOpenChannel* operator ->() const { return &self; }
2486 class AcceptChannel {
2488 LDKAcceptChannel self;
2490 AcceptChannel(const AcceptChannel&) = delete;
2491 AcceptChannel(AcceptChannel&& o) : self(o.self) { memset(&o, 0, sizeof(AcceptChannel)); }
2492 AcceptChannel(LDKAcceptChannel&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKAcceptChannel)); }
2493 operator LDKAcceptChannel() && { LDKAcceptChannel res = self; memset(&self, 0, sizeof(LDKAcceptChannel)); return res; }
2494 ~AcceptChannel() { AcceptChannel_free(self); }
2495 AcceptChannel& operator=(AcceptChannel&& o) { AcceptChannel_free(self); self = o.self; memset(&o, 0, sizeof(AcceptChannel)); return *this; }
2496 LDKAcceptChannel* operator &() { return &self; }
2497 LDKAcceptChannel* operator ->() { return &self; }
2498 const LDKAcceptChannel* operator &() const { return &self; }
2499 const LDKAcceptChannel* operator ->() const { return &self; }
2501 class FundingCreated {
2503 LDKFundingCreated self;
2505 FundingCreated(const FundingCreated&) = delete;
2506 FundingCreated(FundingCreated&& o) : self(o.self) { memset(&o, 0, sizeof(FundingCreated)); }
2507 FundingCreated(LDKFundingCreated&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFundingCreated)); }
2508 operator LDKFundingCreated() && { LDKFundingCreated res = self; memset(&self, 0, sizeof(LDKFundingCreated)); return res; }
2509 ~FundingCreated() { FundingCreated_free(self); }
2510 FundingCreated& operator=(FundingCreated&& o) { FundingCreated_free(self); self = o.self; memset(&o, 0, sizeof(FundingCreated)); return *this; }
2511 LDKFundingCreated* operator &() { return &self; }
2512 LDKFundingCreated* operator ->() { return &self; }
2513 const LDKFundingCreated* operator &() const { return &self; }
2514 const LDKFundingCreated* operator ->() const { return &self; }
2516 class FundingSigned {
2518 LDKFundingSigned self;
2520 FundingSigned(const FundingSigned&) = delete;
2521 FundingSigned(FundingSigned&& o) : self(o.self) { memset(&o, 0, sizeof(FundingSigned)); }
2522 FundingSigned(LDKFundingSigned&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFundingSigned)); }
2523 operator LDKFundingSigned() && { LDKFundingSigned res = self; memset(&self, 0, sizeof(LDKFundingSigned)); return res; }
2524 ~FundingSigned() { FundingSigned_free(self); }
2525 FundingSigned& operator=(FundingSigned&& o) { FundingSigned_free(self); self = o.self; memset(&o, 0, sizeof(FundingSigned)); return *this; }
2526 LDKFundingSigned* operator &() { return &self; }
2527 LDKFundingSigned* operator ->() { return &self; }
2528 const LDKFundingSigned* operator &() const { return &self; }
2529 const LDKFundingSigned* operator ->() const { return &self; }
2531 class FundingLocked {
2533 LDKFundingLocked self;
2535 FundingLocked(const FundingLocked&) = delete;
2536 FundingLocked(FundingLocked&& o) : self(o.self) { memset(&o, 0, sizeof(FundingLocked)); }
2537 FundingLocked(LDKFundingLocked&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKFundingLocked)); }
2538 operator LDKFundingLocked() && { LDKFundingLocked res = self; memset(&self, 0, sizeof(LDKFundingLocked)); return res; }
2539 ~FundingLocked() { FundingLocked_free(self); }
2540 FundingLocked& operator=(FundingLocked&& o) { FundingLocked_free(self); self = o.self; memset(&o, 0, sizeof(FundingLocked)); return *this; }
2541 LDKFundingLocked* operator &() { return &self; }
2542 LDKFundingLocked* operator ->() { return &self; }
2543 const LDKFundingLocked* operator &() const { return &self; }
2544 const LDKFundingLocked* operator ->() const { return &self; }
2550 Shutdown(const Shutdown&) = delete;
2551 Shutdown(Shutdown&& o) : self(o.self) { memset(&o, 0, sizeof(Shutdown)); }
2552 Shutdown(LDKShutdown&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKShutdown)); }
2553 operator LDKShutdown() && { LDKShutdown res = self; memset(&self, 0, sizeof(LDKShutdown)); return res; }
2554 ~Shutdown() { Shutdown_free(self); }
2555 Shutdown& operator=(Shutdown&& o) { Shutdown_free(self); self = o.self; memset(&o, 0, sizeof(Shutdown)); return *this; }
2556 LDKShutdown* operator &() { return &self; }
2557 LDKShutdown* operator ->() { return &self; }
2558 const LDKShutdown* operator &() const { return &self; }
2559 const LDKShutdown* operator ->() const { return &self; }
2561 class ClosingSignedFeeRange {
2563 LDKClosingSignedFeeRange self;
2565 ClosingSignedFeeRange(const ClosingSignedFeeRange&) = delete;
2566 ClosingSignedFeeRange(ClosingSignedFeeRange&& o) : self(o.self) { memset(&o, 0, sizeof(ClosingSignedFeeRange)); }
2567 ClosingSignedFeeRange(LDKClosingSignedFeeRange&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKClosingSignedFeeRange)); }
2568 operator LDKClosingSignedFeeRange() && { LDKClosingSignedFeeRange res = self; memset(&self, 0, sizeof(LDKClosingSignedFeeRange)); return res; }
2569 ~ClosingSignedFeeRange() { ClosingSignedFeeRange_free(self); }
2570 ClosingSignedFeeRange& operator=(ClosingSignedFeeRange&& o) { ClosingSignedFeeRange_free(self); self = o.self; memset(&o, 0, sizeof(ClosingSignedFeeRange)); return *this; }
2571 LDKClosingSignedFeeRange* operator &() { return &self; }
2572 LDKClosingSignedFeeRange* operator ->() { return &self; }
2573 const LDKClosingSignedFeeRange* operator &() const { return &self; }
2574 const LDKClosingSignedFeeRange* operator ->() const { return &self; }
2576 class ClosingSigned {
2578 LDKClosingSigned self;
2580 ClosingSigned(const ClosingSigned&) = delete;
2581 ClosingSigned(ClosingSigned&& o) : self(o.self) { memset(&o, 0, sizeof(ClosingSigned)); }
2582 ClosingSigned(LDKClosingSigned&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKClosingSigned)); }
2583 operator LDKClosingSigned() && { LDKClosingSigned res = self; memset(&self, 0, sizeof(LDKClosingSigned)); return res; }
2584 ~ClosingSigned() { ClosingSigned_free(self); }
2585 ClosingSigned& operator=(ClosingSigned&& o) { ClosingSigned_free(self); self = o.self; memset(&o, 0, sizeof(ClosingSigned)); return *this; }
2586 LDKClosingSigned* operator &() { return &self; }
2587 LDKClosingSigned* operator ->() { return &self; }
2588 const LDKClosingSigned* operator &() const { return &self; }
2589 const LDKClosingSigned* operator ->() const { return &self; }
2591 class UpdateAddHTLC {
2593 LDKUpdateAddHTLC self;
2595 UpdateAddHTLC(const UpdateAddHTLC&) = delete;
2596 UpdateAddHTLC(UpdateAddHTLC&& o) : self(o.self) { memset(&o, 0, sizeof(UpdateAddHTLC)); }
2597 UpdateAddHTLC(LDKUpdateAddHTLC&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUpdateAddHTLC)); }
2598 operator LDKUpdateAddHTLC() && { LDKUpdateAddHTLC res = self; memset(&self, 0, sizeof(LDKUpdateAddHTLC)); return res; }
2599 ~UpdateAddHTLC() { UpdateAddHTLC_free(self); }
2600 UpdateAddHTLC& operator=(UpdateAddHTLC&& o) { UpdateAddHTLC_free(self); self = o.self; memset(&o, 0, sizeof(UpdateAddHTLC)); return *this; }
2601 LDKUpdateAddHTLC* operator &() { return &self; }
2602 LDKUpdateAddHTLC* operator ->() { return &self; }
2603 const LDKUpdateAddHTLC* operator &() const { return &self; }
2604 const LDKUpdateAddHTLC* operator ->() const { return &self; }
2606 class UpdateFulfillHTLC {
2608 LDKUpdateFulfillHTLC self;
2610 UpdateFulfillHTLC(const UpdateFulfillHTLC&) = delete;
2611 UpdateFulfillHTLC(UpdateFulfillHTLC&& o) : self(o.self) { memset(&o, 0, sizeof(UpdateFulfillHTLC)); }
2612 UpdateFulfillHTLC(LDKUpdateFulfillHTLC&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUpdateFulfillHTLC)); }
2613 operator LDKUpdateFulfillHTLC() && { LDKUpdateFulfillHTLC res = self; memset(&self, 0, sizeof(LDKUpdateFulfillHTLC)); return res; }
2614 ~UpdateFulfillHTLC() { UpdateFulfillHTLC_free(self); }
2615 UpdateFulfillHTLC& operator=(UpdateFulfillHTLC&& o) { UpdateFulfillHTLC_free(self); self = o.self; memset(&o, 0, sizeof(UpdateFulfillHTLC)); return *this; }
2616 LDKUpdateFulfillHTLC* operator &() { return &self; }
2617 LDKUpdateFulfillHTLC* operator ->() { return &self; }
2618 const LDKUpdateFulfillHTLC* operator &() const { return &self; }
2619 const LDKUpdateFulfillHTLC* operator ->() const { return &self; }
2621 class UpdateFailHTLC {
2623 LDKUpdateFailHTLC self;
2625 UpdateFailHTLC(const UpdateFailHTLC&) = delete;
2626 UpdateFailHTLC(UpdateFailHTLC&& o) : self(o.self) { memset(&o, 0, sizeof(UpdateFailHTLC)); }
2627 UpdateFailHTLC(LDKUpdateFailHTLC&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUpdateFailHTLC)); }
2628 operator LDKUpdateFailHTLC() && { LDKUpdateFailHTLC res = self; memset(&self, 0, sizeof(LDKUpdateFailHTLC)); return res; }
2629 ~UpdateFailHTLC() { UpdateFailHTLC_free(self); }
2630 UpdateFailHTLC& operator=(UpdateFailHTLC&& o) { UpdateFailHTLC_free(self); self = o.self; memset(&o, 0, sizeof(UpdateFailHTLC)); return *this; }
2631 LDKUpdateFailHTLC* operator &() { return &self; }
2632 LDKUpdateFailHTLC* operator ->() { return &self; }
2633 const LDKUpdateFailHTLC* operator &() const { return &self; }
2634 const LDKUpdateFailHTLC* operator ->() const { return &self; }
2636 class UpdateFailMalformedHTLC {
2638 LDKUpdateFailMalformedHTLC self;
2640 UpdateFailMalformedHTLC(const UpdateFailMalformedHTLC&) = delete;
2641 UpdateFailMalformedHTLC(UpdateFailMalformedHTLC&& o) : self(o.self) { memset(&o, 0, sizeof(UpdateFailMalformedHTLC)); }
2642 UpdateFailMalformedHTLC(LDKUpdateFailMalformedHTLC&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUpdateFailMalformedHTLC)); }
2643 operator LDKUpdateFailMalformedHTLC() && { LDKUpdateFailMalformedHTLC res = self; memset(&self, 0, sizeof(LDKUpdateFailMalformedHTLC)); return res; }
2644 ~UpdateFailMalformedHTLC() { UpdateFailMalformedHTLC_free(self); }
2645 UpdateFailMalformedHTLC& operator=(UpdateFailMalformedHTLC&& o) { UpdateFailMalformedHTLC_free(self); self = o.self; memset(&o, 0, sizeof(UpdateFailMalformedHTLC)); return *this; }
2646 LDKUpdateFailMalformedHTLC* operator &() { return &self; }
2647 LDKUpdateFailMalformedHTLC* operator ->() { return &self; }
2648 const LDKUpdateFailMalformedHTLC* operator &() const { return &self; }
2649 const LDKUpdateFailMalformedHTLC* operator ->() const { return &self; }
2651 class CommitmentSigned {
2653 LDKCommitmentSigned self;
2655 CommitmentSigned(const CommitmentSigned&) = delete;
2656 CommitmentSigned(CommitmentSigned&& o) : self(o.self) { memset(&o, 0, sizeof(CommitmentSigned)); }
2657 CommitmentSigned(LDKCommitmentSigned&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCommitmentSigned)); }
2658 operator LDKCommitmentSigned() && { LDKCommitmentSigned res = self; memset(&self, 0, sizeof(LDKCommitmentSigned)); return res; }
2659 ~CommitmentSigned() { CommitmentSigned_free(self); }
2660 CommitmentSigned& operator=(CommitmentSigned&& o) { CommitmentSigned_free(self); self = o.self; memset(&o, 0, sizeof(CommitmentSigned)); return *this; }
2661 LDKCommitmentSigned* operator &() { return &self; }
2662 LDKCommitmentSigned* operator ->() { return &self; }
2663 const LDKCommitmentSigned* operator &() const { return &self; }
2664 const LDKCommitmentSigned* operator ->() const { return &self; }
2666 class RevokeAndACK {
2668 LDKRevokeAndACK self;
2670 RevokeAndACK(const RevokeAndACK&) = delete;
2671 RevokeAndACK(RevokeAndACK&& o) : self(o.self) { memset(&o, 0, sizeof(RevokeAndACK)); }
2672 RevokeAndACK(LDKRevokeAndACK&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRevokeAndACK)); }
2673 operator LDKRevokeAndACK() && { LDKRevokeAndACK res = self; memset(&self, 0, sizeof(LDKRevokeAndACK)); return res; }
2674 ~RevokeAndACK() { RevokeAndACK_free(self); }
2675 RevokeAndACK& operator=(RevokeAndACK&& o) { RevokeAndACK_free(self); self = o.self; memset(&o, 0, sizeof(RevokeAndACK)); return *this; }
2676 LDKRevokeAndACK* operator &() { return &self; }
2677 LDKRevokeAndACK* operator ->() { return &self; }
2678 const LDKRevokeAndACK* operator &() const { return &self; }
2679 const LDKRevokeAndACK* operator ->() const { return &self; }
2685 UpdateFee(const UpdateFee&) = delete;
2686 UpdateFee(UpdateFee&& o) : self(o.self) { memset(&o, 0, sizeof(UpdateFee)); }
2687 UpdateFee(LDKUpdateFee&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUpdateFee)); }
2688 operator LDKUpdateFee() && { LDKUpdateFee res = self; memset(&self, 0, sizeof(LDKUpdateFee)); return res; }
2689 ~UpdateFee() { UpdateFee_free(self); }
2690 UpdateFee& operator=(UpdateFee&& o) { UpdateFee_free(self); self = o.self; memset(&o, 0, sizeof(UpdateFee)); return *this; }
2691 LDKUpdateFee* operator &() { return &self; }
2692 LDKUpdateFee* operator ->() { return &self; }
2693 const LDKUpdateFee* operator &() const { return &self; }
2694 const LDKUpdateFee* operator ->() const { return &self; }
2696 class DataLossProtect {
2698 LDKDataLossProtect self;
2700 DataLossProtect(const DataLossProtect&) = delete;
2701 DataLossProtect(DataLossProtect&& o) : self(o.self) { memset(&o, 0, sizeof(DataLossProtect)); }
2702 DataLossProtect(LDKDataLossProtect&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKDataLossProtect)); }
2703 operator LDKDataLossProtect() && { LDKDataLossProtect res = self; memset(&self, 0, sizeof(LDKDataLossProtect)); return res; }
2704 ~DataLossProtect() { DataLossProtect_free(self); }
2705 DataLossProtect& operator=(DataLossProtect&& o) { DataLossProtect_free(self); self = o.self; memset(&o, 0, sizeof(DataLossProtect)); return *this; }
2706 LDKDataLossProtect* operator &() { return &self; }
2707 LDKDataLossProtect* operator ->() { return &self; }
2708 const LDKDataLossProtect* operator &() const { return &self; }
2709 const LDKDataLossProtect* operator ->() const { return &self; }
2711 class ChannelReestablish {
2713 LDKChannelReestablish self;
2715 ChannelReestablish(const ChannelReestablish&) = delete;
2716 ChannelReestablish(ChannelReestablish&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelReestablish)); }
2717 ChannelReestablish(LDKChannelReestablish&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelReestablish)); }
2718 operator LDKChannelReestablish() && { LDKChannelReestablish res = self; memset(&self, 0, sizeof(LDKChannelReestablish)); return res; }
2719 ~ChannelReestablish() { ChannelReestablish_free(self); }
2720 ChannelReestablish& operator=(ChannelReestablish&& o) { ChannelReestablish_free(self); self = o.self; memset(&o, 0, sizeof(ChannelReestablish)); return *this; }
2721 LDKChannelReestablish* operator &() { return &self; }
2722 LDKChannelReestablish* operator ->() { return &self; }
2723 const LDKChannelReestablish* operator &() const { return &self; }
2724 const LDKChannelReestablish* operator ->() const { return &self; }
2726 class AnnouncementSignatures {
2728 LDKAnnouncementSignatures self;
2730 AnnouncementSignatures(const AnnouncementSignatures&) = delete;
2731 AnnouncementSignatures(AnnouncementSignatures&& o) : self(o.self) { memset(&o, 0, sizeof(AnnouncementSignatures)); }
2732 AnnouncementSignatures(LDKAnnouncementSignatures&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKAnnouncementSignatures)); }
2733 operator LDKAnnouncementSignatures() && { LDKAnnouncementSignatures res = self; memset(&self, 0, sizeof(LDKAnnouncementSignatures)); return res; }
2734 ~AnnouncementSignatures() { AnnouncementSignatures_free(self); }
2735 AnnouncementSignatures& operator=(AnnouncementSignatures&& o) { AnnouncementSignatures_free(self); self = o.self; memset(&o, 0, sizeof(AnnouncementSignatures)); return *this; }
2736 LDKAnnouncementSignatures* operator &() { return &self; }
2737 LDKAnnouncementSignatures* operator ->() { return &self; }
2738 const LDKAnnouncementSignatures* operator &() const { return &self; }
2739 const LDKAnnouncementSignatures* operator ->() const { return &self; }
2745 NetAddress(const NetAddress&) = delete;
2746 NetAddress(NetAddress&& o) : self(o.self) { memset(&o, 0, sizeof(NetAddress)); }
2747 NetAddress(LDKNetAddress&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNetAddress)); }
2748 operator LDKNetAddress() && { LDKNetAddress res = self; memset(&self, 0, sizeof(LDKNetAddress)); return res; }
2749 ~NetAddress() { NetAddress_free(self); }
2750 NetAddress& operator=(NetAddress&& o) { NetAddress_free(self); self = o.self; memset(&o, 0, sizeof(NetAddress)); return *this; }
2751 LDKNetAddress* operator &() { return &self; }
2752 LDKNetAddress* operator ->() { return &self; }
2753 const LDKNetAddress* operator &() const { return &self; }
2754 const LDKNetAddress* operator ->() const { return &self; }
2756 class UnsignedNodeAnnouncement {
2758 LDKUnsignedNodeAnnouncement self;
2760 UnsignedNodeAnnouncement(const UnsignedNodeAnnouncement&) = delete;
2761 UnsignedNodeAnnouncement(UnsignedNodeAnnouncement&& o) : self(o.self) { memset(&o, 0, sizeof(UnsignedNodeAnnouncement)); }
2762 UnsignedNodeAnnouncement(LDKUnsignedNodeAnnouncement&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUnsignedNodeAnnouncement)); }
2763 operator LDKUnsignedNodeAnnouncement() && { LDKUnsignedNodeAnnouncement res = self; memset(&self, 0, sizeof(LDKUnsignedNodeAnnouncement)); return res; }
2764 ~UnsignedNodeAnnouncement() { UnsignedNodeAnnouncement_free(self); }
2765 UnsignedNodeAnnouncement& operator=(UnsignedNodeAnnouncement&& o) { UnsignedNodeAnnouncement_free(self); self = o.self; memset(&o, 0, sizeof(UnsignedNodeAnnouncement)); return *this; }
2766 LDKUnsignedNodeAnnouncement* operator &() { return &self; }
2767 LDKUnsignedNodeAnnouncement* operator ->() { return &self; }
2768 const LDKUnsignedNodeAnnouncement* operator &() const { return &self; }
2769 const LDKUnsignedNodeAnnouncement* operator ->() const { return &self; }
2771 class NodeAnnouncement {
2773 LDKNodeAnnouncement self;
2775 NodeAnnouncement(const NodeAnnouncement&) = delete;
2776 NodeAnnouncement(NodeAnnouncement&& o) : self(o.self) { memset(&o, 0, sizeof(NodeAnnouncement)); }
2777 NodeAnnouncement(LDKNodeAnnouncement&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKNodeAnnouncement)); }
2778 operator LDKNodeAnnouncement() && { LDKNodeAnnouncement res = self; memset(&self, 0, sizeof(LDKNodeAnnouncement)); return res; }
2779 ~NodeAnnouncement() { NodeAnnouncement_free(self); }
2780 NodeAnnouncement& operator=(NodeAnnouncement&& o) { NodeAnnouncement_free(self); self = o.self; memset(&o, 0, sizeof(NodeAnnouncement)); return *this; }
2781 LDKNodeAnnouncement* operator &() { return &self; }
2782 LDKNodeAnnouncement* operator ->() { return &self; }
2783 const LDKNodeAnnouncement* operator &() const { return &self; }
2784 const LDKNodeAnnouncement* operator ->() const { return &self; }
2786 class UnsignedChannelAnnouncement {
2788 LDKUnsignedChannelAnnouncement self;
2790 UnsignedChannelAnnouncement(const UnsignedChannelAnnouncement&) = delete;
2791 UnsignedChannelAnnouncement(UnsignedChannelAnnouncement&& o) : self(o.self) { memset(&o, 0, sizeof(UnsignedChannelAnnouncement)); }
2792 UnsignedChannelAnnouncement(LDKUnsignedChannelAnnouncement&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUnsignedChannelAnnouncement)); }
2793 operator LDKUnsignedChannelAnnouncement() && { LDKUnsignedChannelAnnouncement res = self; memset(&self, 0, sizeof(LDKUnsignedChannelAnnouncement)); return res; }
2794 ~UnsignedChannelAnnouncement() { UnsignedChannelAnnouncement_free(self); }
2795 UnsignedChannelAnnouncement& operator=(UnsignedChannelAnnouncement&& o) { UnsignedChannelAnnouncement_free(self); self = o.self; memset(&o, 0, sizeof(UnsignedChannelAnnouncement)); return *this; }
2796 LDKUnsignedChannelAnnouncement* operator &() { return &self; }
2797 LDKUnsignedChannelAnnouncement* operator ->() { return &self; }
2798 const LDKUnsignedChannelAnnouncement* operator &() const { return &self; }
2799 const LDKUnsignedChannelAnnouncement* operator ->() const { return &self; }
2801 class ChannelAnnouncement {
2803 LDKChannelAnnouncement self;
2805 ChannelAnnouncement(const ChannelAnnouncement&) = delete;
2806 ChannelAnnouncement(ChannelAnnouncement&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelAnnouncement)); }
2807 ChannelAnnouncement(LDKChannelAnnouncement&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelAnnouncement)); }
2808 operator LDKChannelAnnouncement() && { LDKChannelAnnouncement res = self; memset(&self, 0, sizeof(LDKChannelAnnouncement)); return res; }
2809 ~ChannelAnnouncement() { ChannelAnnouncement_free(self); }
2810 ChannelAnnouncement& operator=(ChannelAnnouncement&& o) { ChannelAnnouncement_free(self); self = o.self; memset(&o, 0, sizeof(ChannelAnnouncement)); return *this; }
2811 LDKChannelAnnouncement* operator &() { return &self; }
2812 LDKChannelAnnouncement* operator ->() { return &self; }
2813 const LDKChannelAnnouncement* operator &() const { return &self; }
2814 const LDKChannelAnnouncement* operator ->() const { return &self; }
2816 class UnsignedChannelUpdate {
2818 LDKUnsignedChannelUpdate self;
2820 UnsignedChannelUpdate(const UnsignedChannelUpdate&) = delete;
2821 UnsignedChannelUpdate(UnsignedChannelUpdate&& o) : self(o.self) { memset(&o, 0, sizeof(UnsignedChannelUpdate)); }
2822 UnsignedChannelUpdate(LDKUnsignedChannelUpdate&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKUnsignedChannelUpdate)); }
2823 operator LDKUnsignedChannelUpdate() && { LDKUnsignedChannelUpdate res = self; memset(&self, 0, sizeof(LDKUnsignedChannelUpdate)); return res; }
2824 ~UnsignedChannelUpdate() { UnsignedChannelUpdate_free(self); }
2825 UnsignedChannelUpdate& operator=(UnsignedChannelUpdate&& o) { UnsignedChannelUpdate_free(self); self = o.self; memset(&o, 0, sizeof(UnsignedChannelUpdate)); return *this; }
2826 LDKUnsignedChannelUpdate* operator &() { return &self; }
2827 LDKUnsignedChannelUpdate* operator ->() { return &self; }
2828 const LDKUnsignedChannelUpdate* operator &() const { return &self; }
2829 const LDKUnsignedChannelUpdate* operator ->() const { return &self; }
2831 class ChannelUpdate {
2833 LDKChannelUpdate self;
2835 ChannelUpdate(const ChannelUpdate&) = delete;
2836 ChannelUpdate(ChannelUpdate&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelUpdate)); }
2837 ChannelUpdate(LDKChannelUpdate&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelUpdate)); }
2838 operator LDKChannelUpdate() && { LDKChannelUpdate res = self; memset(&self, 0, sizeof(LDKChannelUpdate)); return res; }
2839 ~ChannelUpdate() { ChannelUpdate_free(self); }
2840 ChannelUpdate& operator=(ChannelUpdate&& o) { ChannelUpdate_free(self); self = o.self; memset(&o, 0, sizeof(ChannelUpdate)); return *this; }
2841 LDKChannelUpdate* operator &() { return &self; }
2842 LDKChannelUpdate* operator ->() { return &self; }
2843 const LDKChannelUpdate* operator &() const { return &self; }
2844 const LDKChannelUpdate* operator ->() const { return &self; }
2846 class QueryChannelRange {
2848 LDKQueryChannelRange self;
2850 QueryChannelRange(const QueryChannelRange&) = delete;
2851 QueryChannelRange(QueryChannelRange&& o) : self(o.self) { memset(&o, 0, sizeof(QueryChannelRange)); }
2852 QueryChannelRange(LDKQueryChannelRange&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKQueryChannelRange)); }
2853 operator LDKQueryChannelRange() && { LDKQueryChannelRange res = self; memset(&self, 0, sizeof(LDKQueryChannelRange)); return res; }
2854 ~QueryChannelRange() { QueryChannelRange_free(self); }
2855 QueryChannelRange& operator=(QueryChannelRange&& o) { QueryChannelRange_free(self); self = o.self; memset(&o, 0, sizeof(QueryChannelRange)); return *this; }
2856 LDKQueryChannelRange* operator &() { return &self; }
2857 LDKQueryChannelRange* operator ->() { return &self; }
2858 const LDKQueryChannelRange* operator &() const { return &self; }
2859 const LDKQueryChannelRange* operator ->() const { return &self; }
2861 class ReplyChannelRange {
2863 LDKReplyChannelRange self;
2865 ReplyChannelRange(const ReplyChannelRange&) = delete;
2866 ReplyChannelRange(ReplyChannelRange&& o) : self(o.self) { memset(&o, 0, sizeof(ReplyChannelRange)); }
2867 ReplyChannelRange(LDKReplyChannelRange&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKReplyChannelRange)); }
2868 operator LDKReplyChannelRange() && { LDKReplyChannelRange res = self; memset(&self, 0, sizeof(LDKReplyChannelRange)); return res; }
2869 ~ReplyChannelRange() { ReplyChannelRange_free(self); }
2870 ReplyChannelRange& operator=(ReplyChannelRange&& o) { ReplyChannelRange_free(self); self = o.self; memset(&o, 0, sizeof(ReplyChannelRange)); return *this; }
2871 LDKReplyChannelRange* operator &() { return &self; }
2872 LDKReplyChannelRange* operator ->() { return &self; }
2873 const LDKReplyChannelRange* operator &() const { return &self; }
2874 const LDKReplyChannelRange* operator ->() const { return &self; }
2876 class QueryShortChannelIds {
2878 LDKQueryShortChannelIds self;
2880 QueryShortChannelIds(const QueryShortChannelIds&) = delete;
2881 QueryShortChannelIds(QueryShortChannelIds&& o) : self(o.self) { memset(&o, 0, sizeof(QueryShortChannelIds)); }
2882 QueryShortChannelIds(LDKQueryShortChannelIds&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKQueryShortChannelIds)); }
2883 operator LDKQueryShortChannelIds() && { LDKQueryShortChannelIds res = self; memset(&self, 0, sizeof(LDKQueryShortChannelIds)); return res; }
2884 ~QueryShortChannelIds() { QueryShortChannelIds_free(self); }
2885 QueryShortChannelIds& operator=(QueryShortChannelIds&& o) { QueryShortChannelIds_free(self); self = o.self; memset(&o, 0, sizeof(QueryShortChannelIds)); return *this; }
2886 LDKQueryShortChannelIds* operator &() { return &self; }
2887 LDKQueryShortChannelIds* operator ->() { return &self; }
2888 const LDKQueryShortChannelIds* operator &() const { return &self; }
2889 const LDKQueryShortChannelIds* operator ->() const { return &self; }
2891 class ReplyShortChannelIdsEnd {
2893 LDKReplyShortChannelIdsEnd self;
2895 ReplyShortChannelIdsEnd(const ReplyShortChannelIdsEnd&) = delete;
2896 ReplyShortChannelIdsEnd(ReplyShortChannelIdsEnd&& o) : self(o.self) { memset(&o, 0, sizeof(ReplyShortChannelIdsEnd)); }
2897 ReplyShortChannelIdsEnd(LDKReplyShortChannelIdsEnd&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKReplyShortChannelIdsEnd)); }
2898 operator LDKReplyShortChannelIdsEnd() && { LDKReplyShortChannelIdsEnd res = self; memset(&self, 0, sizeof(LDKReplyShortChannelIdsEnd)); return res; }
2899 ~ReplyShortChannelIdsEnd() { ReplyShortChannelIdsEnd_free(self); }
2900 ReplyShortChannelIdsEnd& operator=(ReplyShortChannelIdsEnd&& o) { ReplyShortChannelIdsEnd_free(self); self = o.self; memset(&o, 0, sizeof(ReplyShortChannelIdsEnd)); return *this; }
2901 LDKReplyShortChannelIdsEnd* operator &() { return &self; }
2902 LDKReplyShortChannelIdsEnd* operator ->() { return &self; }
2903 const LDKReplyShortChannelIdsEnd* operator &() const { return &self; }
2904 const LDKReplyShortChannelIdsEnd* operator ->() const { return &self; }
2906 class GossipTimestampFilter {
2908 LDKGossipTimestampFilter self;
2910 GossipTimestampFilter(const GossipTimestampFilter&) = delete;
2911 GossipTimestampFilter(GossipTimestampFilter&& o) : self(o.self) { memset(&o, 0, sizeof(GossipTimestampFilter)); }
2912 GossipTimestampFilter(LDKGossipTimestampFilter&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKGossipTimestampFilter)); }
2913 operator LDKGossipTimestampFilter() && { LDKGossipTimestampFilter res = self; memset(&self, 0, sizeof(LDKGossipTimestampFilter)); return res; }
2914 ~GossipTimestampFilter() { GossipTimestampFilter_free(self); }
2915 GossipTimestampFilter& operator=(GossipTimestampFilter&& o) { GossipTimestampFilter_free(self); self = o.self; memset(&o, 0, sizeof(GossipTimestampFilter)); return *this; }
2916 LDKGossipTimestampFilter* operator &() { return &self; }
2917 LDKGossipTimestampFilter* operator ->() { return &self; }
2918 const LDKGossipTimestampFilter* operator &() const { return &self; }
2919 const LDKGossipTimestampFilter* operator ->() const { return &self; }
2923 LDKErrorAction self;
2925 ErrorAction(const ErrorAction&) = delete;
2926 ErrorAction(ErrorAction&& o) : self(o.self) { memset(&o, 0, sizeof(ErrorAction)); }
2927 ErrorAction(LDKErrorAction&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKErrorAction)); }
2928 operator LDKErrorAction() && { LDKErrorAction res = self; memset(&self, 0, sizeof(LDKErrorAction)); return res; }
2929 ~ErrorAction() { ErrorAction_free(self); }
2930 ErrorAction& operator=(ErrorAction&& o) { ErrorAction_free(self); self = o.self; memset(&o, 0, sizeof(ErrorAction)); return *this; }
2931 LDKErrorAction* operator &() { return &self; }
2932 LDKErrorAction* operator ->() { return &self; }
2933 const LDKErrorAction* operator &() const { return &self; }
2934 const LDKErrorAction* operator ->() const { return &self; }
2936 class LightningError {
2938 LDKLightningError self;
2940 LightningError(const LightningError&) = delete;
2941 LightningError(LightningError&& o) : self(o.self) { memset(&o, 0, sizeof(LightningError)); }
2942 LightningError(LDKLightningError&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKLightningError)); }
2943 operator LDKLightningError() && { LDKLightningError res = self; memset(&self, 0, sizeof(LDKLightningError)); return res; }
2944 ~LightningError() { LightningError_free(self); }
2945 LightningError& operator=(LightningError&& o) { LightningError_free(self); self = o.self; memset(&o, 0, sizeof(LightningError)); return *this; }
2946 LDKLightningError* operator &() { return &self; }
2947 LDKLightningError* operator ->() { return &self; }
2948 const LDKLightningError* operator &() const { return &self; }
2949 const LDKLightningError* operator ->() const { return &self; }
2951 class CommitmentUpdate {
2953 LDKCommitmentUpdate self;
2955 CommitmentUpdate(const CommitmentUpdate&) = delete;
2956 CommitmentUpdate(CommitmentUpdate&& o) : self(o.self) { memset(&o, 0, sizeof(CommitmentUpdate)); }
2957 CommitmentUpdate(LDKCommitmentUpdate&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCommitmentUpdate)); }
2958 operator LDKCommitmentUpdate() && { LDKCommitmentUpdate res = self; memset(&self, 0, sizeof(LDKCommitmentUpdate)); return res; }
2959 ~CommitmentUpdate() { CommitmentUpdate_free(self); }
2960 CommitmentUpdate& operator=(CommitmentUpdate&& o) { CommitmentUpdate_free(self); self = o.self; memset(&o, 0, sizeof(CommitmentUpdate)); return *this; }
2961 LDKCommitmentUpdate* operator &() { return &self; }
2962 LDKCommitmentUpdate* operator ->() { return &self; }
2963 const LDKCommitmentUpdate* operator &() const { return &self; }
2964 const LDKCommitmentUpdate* operator ->() const { return &self; }
2966 class ChannelMessageHandler {
2968 LDKChannelMessageHandler self;
2970 ChannelMessageHandler(const ChannelMessageHandler&) = delete;
2971 ChannelMessageHandler(ChannelMessageHandler&& o) : self(o.self) { memset(&o, 0, sizeof(ChannelMessageHandler)); }
2972 ChannelMessageHandler(LDKChannelMessageHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChannelMessageHandler)); }
2973 operator LDKChannelMessageHandler() && { LDKChannelMessageHandler res = self; memset(&self, 0, sizeof(LDKChannelMessageHandler)); return res; }
2974 ~ChannelMessageHandler() { ChannelMessageHandler_free(self); }
2975 ChannelMessageHandler& operator=(ChannelMessageHandler&& o) { ChannelMessageHandler_free(self); self = o.self; memset(&o, 0, sizeof(ChannelMessageHandler)); return *this; }
2976 LDKChannelMessageHandler* operator &() { return &self; }
2977 LDKChannelMessageHandler* operator ->() { return &self; }
2978 const LDKChannelMessageHandler* operator &() const { return &self; }
2979 const LDKChannelMessageHandler* operator ->() const { return &self; }
2981 * Handle an incoming open_channel message from the given peer.
2983 inline void handle_open_channel(struct LDKPublicKey their_node_id, struct LDKInitFeatures their_features, const struct LDKOpenChannel *NONNULL_PTR msg);
2985 * Handle an incoming accept_channel message from the given peer.
2987 inline void handle_accept_channel(struct LDKPublicKey their_node_id, struct LDKInitFeatures their_features, const struct LDKAcceptChannel *NONNULL_PTR msg);
2989 * Handle an incoming funding_created message from the given peer.
2991 inline void handle_funding_created(struct LDKPublicKey their_node_id, const struct LDKFundingCreated *NONNULL_PTR msg);
2993 * Handle an incoming funding_signed message from the given peer.
2995 inline void handle_funding_signed(struct LDKPublicKey their_node_id, const struct LDKFundingSigned *NONNULL_PTR msg);
2997 * Handle an incoming funding_locked message from the given peer.
2999 inline void handle_funding_locked(struct LDKPublicKey their_node_id, const struct LDKFundingLocked *NONNULL_PTR msg);
3001 * Handle an incoming shutdown message from the given peer.
3003 inline void handle_shutdown(struct LDKPublicKey their_node_id, const struct LDKInitFeatures *NONNULL_PTR their_features, const struct LDKShutdown *NONNULL_PTR msg);
3005 * Handle an incoming closing_signed message from the given peer.
3007 inline void handle_closing_signed(struct LDKPublicKey their_node_id, const struct LDKClosingSigned *NONNULL_PTR msg);
3009 * Handle an incoming update_add_htlc message from the given peer.
3011 inline void handle_update_add_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateAddHTLC *NONNULL_PTR msg);
3013 * Handle an incoming update_fulfill_htlc message from the given peer.
3015 inline void handle_update_fulfill_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateFulfillHTLC *NONNULL_PTR msg);
3017 * Handle an incoming update_fail_htlc message from the given peer.
3019 inline void handle_update_fail_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateFailHTLC *NONNULL_PTR msg);
3021 * Handle an incoming update_fail_malformed_htlc message from the given peer.
3023 inline void handle_update_fail_malformed_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR msg);
3025 * Handle an incoming commitment_signed message from the given peer.
3027 inline void handle_commitment_signed(struct LDKPublicKey their_node_id, const struct LDKCommitmentSigned *NONNULL_PTR msg);
3029 * Handle an incoming revoke_and_ack message from the given peer.
3031 inline void handle_revoke_and_ack(struct LDKPublicKey their_node_id, const struct LDKRevokeAndACK *NONNULL_PTR msg);
3033 * Handle an incoming update_fee message from the given peer.
3035 inline void handle_update_fee(struct LDKPublicKey their_node_id, const struct LDKUpdateFee *NONNULL_PTR msg);
3037 * Handle an incoming announcement_signatures message from the given peer.
3039 inline void handle_announcement_signatures(struct LDKPublicKey their_node_id, const struct LDKAnnouncementSignatures *NONNULL_PTR msg);
3041 * Indicates a connection to the peer failed/an existing connection was lost. If no connection
3042 * is believed to be possible in the future (eg they're sending us messages we don't
3043 * understand or indicate they require unknown feature bits), no_connection_possible is set
3044 * and any outstanding channels should be failed.
3046 inline void peer_disconnected(struct LDKPublicKey their_node_id, bool no_connection_possible);
3048 * Handle a peer reconnecting, possibly generating channel_reestablish message(s).
3050 inline void peer_connected(struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR msg);
3052 * Handle an incoming channel_reestablish message from the given peer.
3054 inline void handle_channel_reestablish(struct LDKPublicKey their_node_id, const struct LDKChannelReestablish *NONNULL_PTR msg);
3056 * Handle an incoming channel update from the given peer.
3058 inline void handle_channel_update(struct LDKPublicKey their_node_id, const struct LDKChannelUpdate *NONNULL_PTR msg);
3060 * Handle an incoming error message from the given peer.
3062 inline void handle_error(struct LDKPublicKey their_node_id, const struct LDKErrorMessage *NONNULL_PTR msg);
3064 class RoutingMessageHandler {
3066 LDKRoutingMessageHandler self;
3068 RoutingMessageHandler(const RoutingMessageHandler&) = delete;
3069 RoutingMessageHandler(RoutingMessageHandler&& o) : self(o.self) { memset(&o, 0, sizeof(RoutingMessageHandler)); }
3070 RoutingMessageHandler(LDKRoutingMessageHandler&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKRoutingMessageHandler)); }
3071 operator LDKRoutingMessageHandler() && { LDKRoutingMessageHandler res = self; memset(&self, 0, sizeof(LDKRoutingMessageHandler)); return res; }
3072 ~RoutingMessageHandler() { RoutingMessageHandler_free(self); }
3073 RoutingMessageHandler& operator=(RoutingMessageHandler&& o) { RoutingMessageHandler_free(self); self = o.self; memset(&o, 0, sizeof(RoutingMessageHandler)); return *this; }
3074 LDKRoutingMessageHandler* operator &() { return &self; }
3075 LDKRoutingMessageHandler* operator ->() { return &self; }
3076 const LDKRoutingMessageHandler* operator &() const { return &self; }
3077 const LDKRoutingMessageHandler* operator ->() const { return &self; }
3079 * Handle an incoming node_announcement message, returning true if it should be forwarded on,
3080 * false or returning an Err otherwise.
3082 inline LDK::CResult_boolLightningErrorZ handle_node_announcement(const struct LDKNodeAnnouncement *NONNULL_PTR msg);
3084 * Handle a channel_announcement message, returning true if it should be forwarded on, false
3085 * or returning an Err otherwise.
3087 inline LDK::CResult_boolLightningErrorZ handle_channel_announcement(const struct LDKChannelAnnouncement *NONNULL_PTR msg);
3089 * Handle an incoming channel_update message, returning true if it should be forwarded on,
3090 * false or returning an Err otherwise.
3092 inline LDK::CResult_boolLightningErrorZ handle_channel_update(const struct LDKChannelUpdate *NONNULL_PTR msg);
3094 * Gets a subset of the channel announcements and updates required to dump our routing table
3095 * to a remote node, starting at the short_channel_id indicated by starting_point and
3096 * including the batch_amount entries immediately higher in numerical value than starting_point.
3098 inline LDK::CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ get_next_channel_announcements(uint64_t starting_point, uint8_t batch_amount);
3100 * Gets a subset of the node announcements required to dump our routing table to a remote node,
3101 * starting at the node *after* the provided publickey and including batch_amount entries
3102 * immediately higher (as defined by <PublicKey as Ord>::cmp) than starting_point.
3103 * If None is provided for starting_point, we start at the first node.
3105 * Note that starting_point (or a relevant inner pointer) may be NULL or all-0s to represent None
3107 inline LDK::CVec_NodeAnnouncementZ get_next_node_announcements(struct LDKPublicKey starting_point, uint8_t batch_amount);
3109 * Called when a connection is established with a peer. This can be used to
3110 * perform routing table synchronization using a strategy defined by the
3113 inline void sync_routing_table(struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init);
3115 * Handles the reply of a query we initiated to learn about channels
3116 * for a given range of blocks. We can expect to receive one or more
3117 * replies to a single query.
3119 inline LDK::CResult_NoneLightningErrorZ handle_reply_channel_range(struct LDKPublicKey their_node_id, struct LDKReplyChannelRange msg);
3121 * Handles the reply of a query we initiated asking for routing gossip
3122 * messages for a list of channels. We should receive this message when
3123 * a node has completed its best effort to send us the pertaining routing
3126 inline LDK::CResult_NoneLightningErrorZ handle_reply_short_channel_ids_end(struct LDKPublicKey their_node_id, struct LDKReplyShortChannelIdsEnd msg);
3128 * Handles when a peer asks us to send a list of short_channel_ids
3129 * for the requested range of blocks.
3131 inline LDK::CResult_NoneLightningErrorZ handle_query_channel_range(struct LDKPublicKey their_node_id, struct LDKQueryChannelRange msg);
3133 * Handles when a peer asks us to send routing gossip messages for a
3134 * list of short_channel_ids.
3136 inline LDK::CResult_NoneLightningErrorZ handle_query_short_channel_ids(struct LDKPublicKey their_node_id, struct LDKQueryShortChannelIds msg);
3142 Level(const Level&) = delete;
3143 Level(Level&& o) : self(o.self) { memset(&o, 0, sizeof(Level)); }
3144 Level(LDKLevel&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKLevel)); }
3145 operator LDKLevel() && { LDKLevel res = self; memset(&self, 0, sizeof(LDKLevel)); return res; }
3146 Level& operator=(Level&& o) { self = o.self; memset(&o, 0, sizeof(Level)); return *this; }
3147 LDKLevel* operator &() { return &self; }
3148 LDKLevel* operator ->() { return &self; }
3149 const LDKLevel* operator &() const { return &self; }
3150 const LDKLevel* operator ->() const { return &self; }
3156 Logger(const Logger&) = delete;
3157 Logger(Logger&& o) : self(o.self) { memset(&o, 0, sizeof(Logger)); }
3158 Logger(LDKLogger&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKLogger)); }
3159 operator LDKLogger() && { LDKLogger res = self; memset(&self, 0, sizeof(LDKLogger)); return res; }
3160 ~Logger() { Logger_free(self); }
3161 Logger& operator=(Logger&& o) { Logger_free(self); self = o.self; memset(&o, 0, sizeof(Logger)); return *this; }
3162 LDKLogger* operator &() { return &self; }
3163 LDKLogger* operator ->() { return &self; }
3164 const LDKLogger* operator &() const { return &self; }
3165 const LDKLogger* operator ->() const { return &self; }
3169 inline void log(const char *record);
3171 class ChainMonitor {
3173 LDKChainMonitor self;
3175 ChainMonitor(const ChainMonitor&) = delete;
3176 ChainMonitor(ChainMonitor&& o) : self(o.self) { memset(&o, 0, sizeof(ChainMonitor)); }
3177 ChainMonitor(LDKChainMonitor&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKChainMonitor)); }
3178 operator LDKChainMonitor() && { LDKChainMonitor res = self; memset(&self, 0, sizeof(LDKChainMonitor)); return res; }
3179 ~ChainMonitor() { ChainMonitor_free(self); }
3180 ChainMonitor& operator=(ChainMonitor&& o) { ChainMonitor_free(self); self = o.self; memset(&o, 0, sizeof(ChainMonitor)); return *this; }
3181 LDKChainMonitor* operator &() { return &self; }
3182 LDKChainMonitor* operator ->() { return &self; }
3183 const LDKChainMonitor* operator &() const { return &self; }
3184 const LDKChainMonitor* operator ->() const { return &self; }
3186 class CVec_SpendableOutputDescriptorZ {
3188 LDKCVec_SpendableOutputDescriptorZ self;
3190 CVec_SpendableOutputDescriptorZ(const CVec_SpendableOutputDescriptorZ&) = delete;
3191 CVec_SpendableOutputDescriptorZ(CVec_SpendableOutputDescriptorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_SpendableOutputDescriptorZ)); }
3192 CVec_SpendableOutputDescriptorZ(LDKCVec_SpendableOutputDescriptorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_SpendableOutputDescriptorZ)); }
3193 operator LDKCVec_SpendableOutputDescriptorZ() && { LDKCVec_SpendableOutputDescriptorZ res = self; memset(&self, 0, sizeof(LDKCVec_SpendableOutputDescriptorZ)); return res; }
3194 ~CVec_SpendableOutputDescriptorZ() { CVec_SpendableOutputDescriptorZ_free(self); }
3195 CVec_SpendableOutputDescriptorZ& operator=(CVec_SpendableOutputDescriptorZ&& o) { CVec_SpendableOutputDescriptorZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_SpendableOutputDescriptorZ)); return *this; }
3196 LDKCVec_SpendableOutputDescriptorZ* operator &() { return &self; }
3197 LDKCVec_SpendableOutputDescriptorZ* operator ->() { return &self; }
3198 const LDKCVec_SpendableOutputDescriptorZ* operator &() const { return &self; }
3199 const LDKCVec_SpendableOutputDescriptorZ* operator ->() const { return &self; }
3201 class CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ {
3203 LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ self;
3205 CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ(const CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ&) = delete;
3206 CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ(CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ)); }
3207 CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ)); }
3208 operator LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ() && { LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ)); return res; }
3209 ~CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ() { CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(self); }
3210 CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ& operator=(CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ&& o) { CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ)); return *this; }
3211 LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* operator &() { return &self; }
3212 LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* operator ->() { return &self; }
3213 const LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* operator &() const { return &self; }
3214 const LDKCResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ* operator ->() const { return &self; }
3216 class CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ {
3218 LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ self;
3220 CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ(const CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ&) = delete;
3221 CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ(CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ)); }
3222 CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ(LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ)); }
3223 operator LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ() && { LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ res = self; memset(&self, 0, sizeof(LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ)); return res; }
3224 ~CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ() { CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(self); }
3225 CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ& operator=(CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ&& o) { CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ)); return *this; }
3226 LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ* operator &() { return &self; }
3227 LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ* operator ->() { return &self; }
3228 const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ* operator &() const { return &self; }
3229 const LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ* operator ->() const { return &self; }
3231 class CResult_HTLCUpdateDecodeErrorZ {
3233 LDKCResult_HTLCUpdateDecodeErrorZ self;
3235 CResult_HTLCUpdateDecodeErrorZ(const CResult_HTLCUpdateDecodeErrorZ&) = delete;
3236 CResult_HTLCUpdateDecodeErrorZ(CResult_HTLCUpdateDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_HTLCUpdateDecodeErrorZ)); }
3237 CResult_HTLCUpdateDecodeErrorZ(LDKCResult_HTLCUpdateDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_HTLCUpdateDecodeErrorZ)); }
3238 operator LDKCResult_HTLCUpdateDecodeErrorZ() && { LDKCResult_HTLCUpdateDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_HTLCUpdateDecodeErrorZ)); return res; }
3239 ~CResult_HTLCUpdateDecodeErrorZ() { CResult_HTLCUpdateDecodeErrorZ_free(self); }
3240 CResult_HTLCUpdateDecodeErrorZ& operator=(CResult_HTLCUpdateDecodeErrorZ&& o) { CResult_HTLCUpdateDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_HTLCUpdateDecodeErrorZ)); return *this; }
3241 LDKCResult_HTLCUpdateDecodeErrorZ* operator &() { return &self; }
3242 LDKCResult_HTLCUpdateDecodeErrorZ* operator ->() { return &self; }
3243 const LDKCResult_HTLCUpdateDecodeErrorZ* operator &() const { return &self; }
3244 const LDKCResult_HTLCUpdateDecodeErrorZ* operator ->() const { return &self; }
3246 class C2Tuple_SignatureCVec_SignatureZZ {
3248 LDKC2Tuple_SignatureCVec_SignatureZZ self;
3250 C2Tuple_SignatureCVec_SignatureZZ(const C2Tuple_SignatureCVec_SignatureZZ&) = delete;
3251 C2Tuple_SignatureCVec_SignatureZZ(C2Tuple_SignatureCVec_SignatureZZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_SignatureCVec_SignatureZZ)); }
3252 C2Tuple_SignatureCVec_SignatureZZ(LDKC2Tuple_SignatureCVec_SignatureZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ)); }
3253 operator LDKC2Tuple_SignatureCVec_SignatureZZ() && { LDKC2Tuple_SignatureCVec_SignatureZZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_SignatureCVec_SignatureZZ)); return res; }
3254 ~C2Tuple_SignatureCVec_SignatureZZ() { C2Tuple_SignatureCVec_SignatureZZ_free(self); }
3255 C2Tuple_SignatureCVec_SignatureZZ& operator=(C2Tuple_SignatureCVec_SignatureZZ&& o) { C2Tuple_SignatureCVec_SignatureZZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_SignatureCVec_SignatureZZ)); return *this; }
3256 LDKC2Tuple_SignatureCVec_SignatureZZ* operator &() { return &self; }
3257 LDKC2Tuple_SignatureCVec_SignatureZZ* operator ->() { return &self; }
3258 const LDKC2Tuple_SignatureCVec_SignatureZZ* operator &() const { return &self; }
3259 const LDKC2Tuple_SignatureCVec_SignatureZZ* operator ->() const { return &self; }
3261 class CVec_C2Tuple_u32TxOutZZ {
3263 LDKCVec_C2Tuple_u32TxOutZZ self;
3265 CVec_C2Tuple_u32TxOutZZ(const CVec_C2Tuple_u32TxOutZZ&) = delete;
3266 CVec_C2Tuple_u32TxOutZZ(CVec_C2Tuple_u32TxOutZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C2Tuple_u32TxOutZZ)); }
3267 CVec_C2Tuple_u32TxOutZZ(LDKCVec_C2Tuple_u32TxOutZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C2Tuple_u32TxOutZZ)); }
3268 operator LDKCVec_C2Tuple_u32TxOutZZ() && { LDKCVec_C2Tuple_u32TxOutZZ res = self; memset(&self, 0, sizeof(LDKCVec_C2Tuple_u32TxOutZZ)); return res; }
3269 ~CVec_C2Tuple_u32TxOutZZ() { CVec_C2Tuple_u32TxOutZZ_free(self); }
3270 CVec_C2Tuple_u32TxOutZZ& operator=(CVec_C2Tuple_u32TxOutZZ&& o) { CVec_C2Tuple_u32TxOutZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C2Tuple_u32TxOutZZ)); return *this; }
3271 LDKCVec_C2Tuple_u32TxOutZZ* operator &() { return &self; }
3272 LDKCVec_C2Tuple_u32TxOutZZ* operator ->() { return &self; }
3273 const LDKCVec_C2Tuple_u32TxOutZZ* operator &() const { return &self; }
3274 const LDKCVec_C2Tuple_u32TxOutZZ* operator ->() const { return &self; }
3276 class CResult_ChannelInfoDecodeErrorZ {
3278 LDKCResult_ChannelInfoDecodeErrorZ self;
3280 CResult_ChannelInfoDecodeErrorZ(const CResult_ChannelInfoDecodeErrorZ&) = delete;
3281 CResult_ChannelInfoDecodeErrorZ(CResult_ChannelInfoDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelInfoDecodeErrorZ)); }
3282 CResult_ChannelInfoDecodeErrorZ(LDKCResult_ChannelInfoDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelInfoDecodeErrorZ)); }
3283 operator LDKCResult_ChannelInfoDecodeErrorZ() && { LDKCResult_ChannelInfoDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelInfoDecodeErrorZ)); return res; }
3284 ~CResult_ChannelInfoDecodeErrorZ() { CResult_ChannelInfoDecodeErrorZ_free(self); }
3285 CResult_ChannelInfoDecodeErrorZ& operator=(CResult_ChannelInfoDecodeErrorZ&& o) { CResult_ChannelInfoDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelInfoDecodeErrorZ)); return *this; }
3286 LDKCResult_ChannelInfoDecodeErrorZ* operator &() { return &self; }
3287 LDKCResult_ChannelInfoDecodeErrorZ* operator ->() { return &self; }
3288 const LDKCResult_ChannelInfoDecodeErrorZ* operator &() const { return &self; }
3289 const LDKCResult_ChannelInfoDecodeErrorZ* operator ->() const { return &self; }
3291 class CResult_FundingCreatedDecodeErrorZ {
3293 LDKCResult_FundingCreatedDecodeErrorZ self;
3295 CResult_FundingCreatedDecodeErrorZ(const CResult_FundingCreatedDecodeErrorZ&) = delete;
3296 CResult_FundingCreatedDecodeErrorZ(CResult_FundingCreatedDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_FundingCreatedDecodeErrorZ)); }
3297 CResult_FundingCreatedDecodeErrorZ(LDKCResult_FundingCreatedDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_FundingCreatedDecodeErrorZ)); }
3298 operator LDKCResult_FundingCreatedDecodeErrorZ() && { LDKCResult_FundingCreatedDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_FundingCreatedDecodeErrorZ)); return res; }
3299 ~CResult_FundingCreatedDecodeErrorZ() { CResult_FundingCreatedDecodeErrorZ_free(self); }
3300 CResult_FundingCreatedDecodeErrorZ& operator=(CResult_FundingCreatedDecodeErrorZ&& o) { CResult_FundingCreatedDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_FundingCreatedDecodeErrorZ)); return *this; }
3301 LDKCResult_FundingCreatedDecodeErrorZ* operator &() { return &self; }
3302 LDKCResult_FundingCreatedDecodeErrorZ* operator ->() { return &self; }
3303 const LDKCResult_FundingCreatedDecodeErrorZ* operator &() const { return &self; }
3304 const LDKCResult_FundingCreatedDecodeErrorZ* operator ->() const { return &self; }
3306 class CResult_ChannelAnnouncementDecodeErrorZ {
3308 LDKCResult_ChannelAnnouncementDecodeErrorZ self;
3310 CResult_ChannelAnnouncementDecodeErrorZ(const CResult_ChannelAnnouncementDecodeErrorZ&) = delete;
3311 CResult_ChannelAnnouncementDecodeErrorZ(CResult_ChannelAnnouncementDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelAnnouncementDecodeErrorZ)); }
3312 CResult_ChannelAnnouncementDecodeErrorZ(LDKCResult_ChannelAnnouncementDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ)); }
3313 operator LDKCResult_ChannelAnnouncementDecodeErrorZ() && { LDKCResult_ChannelAnnouncementDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelAnnouncementDecodeErrorZ)); return res; }
3314 ~CResult_ChannelAnnouncementDecodeErrorZ() { CResult_ChannelAnnouncementDecodeErrorZ_free(self); }
3315 CResult_ChannelAnnouncementDecodeErrorZ& operator=(CResult_ChannelAnnouncementDecodeErrorZ&& o) { CResult_ChannelAnnouncementDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelAnnouncementDecodeErrorZ)); return *this; }
3316 LDKCResult_ChannelAnnouncementDecodeErrorZ* operator &() { return &self; }
3317 LDKCResult_ChannelAnnouncementDecodeErrorZ* operator ->() { return &self; }
3318 const LDKCResult_ChannelAnnouncementDecodeErrorZ* operator &() const { return &self; }
3319 const LDKCResult_ChannelAnnouncementDecodeErrorZ* operator ->() const { return &self; }
3321 class CResult_PositiveTimestampCreationErrorZ {
3323 LDKCResult_PositiveTimestampCreationErrorZ self;
3325 CResult_PositiveTimestampCreationErrorZ(const CResult_PositiveTimestampCreationErrorZ&) = delete;
3326 CResult_PositiveTimestampCreationErrorZ(CResult_PositiveTimestampCreationErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PositiveTimestampCreationErrorZ)); }
3327 CResult_PositiveTimestampCreationErrorZ(LDKCResult_PositiveTimestampCreationErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PositiveTimestampCreationErrorZ)); }
3328 operator LDKCResult_PositiveTimestampCreationErrorZ() && { LDKCResult_PositiveTimestampCreationErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PositiveTimestampCreationErrorZ)); return res; }
3329 ~CResult_PositiveTimestampCreationErrorZ() { CResult_PositiveTimestampCreationErrorZ_free(self); }
3330 CResult_PositiveTimestampCreationErrorZ& operator=(CResult_PositiveTimestampCreationErrorZ&& o) { CResult_PositiveTimestampCreationErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PositiveTimestampCreationErrorZ)); return *this; }
3331 LDKCResult_PositiveTimestampCreationErrorZ* operator &() { return &self; }
3332 LDKCResult_PositiveTimestampCreationErrorZ* operator ->() { return &self; }
3333 const LDKCResult_PositiveTimestampCreationErrorZ* operator &() const { return &self; }
3334 const LDKCResult_PositiveTimestampCreationErrorZ* operator ->() const { return &self; }
3336 class CResult_CVec_u8ZPeerHandleErrorZ {
3338 LDKCResult_CVec_u8ZPeerHandleErrorZ self;
3340 CResult_CVec_u8ZPeerHandleErrorZ(const CResult_CVec_u8ZPeerHandleErrorZ&) = delete;
3341 CResult_CVec_u8ZPeerHandleErrorZ(CResult_CVec_u8ZPeerHandleErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CVec_u8ZPeerHandleErrorZ)); }
3342 CResult_CVec_u8ZPeerHandleErrorZ(LDKCResult_CVec_u8ZPeerHandleErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ)); }
3343 operator LDKCResult_CVec_u8ZPeerHandleErrorZ() && { LDKCResult_CVec_u8ZPeerHandleErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CVec_u8ZPeerHandleErrorZ)); return res; }
3344 ~CResult_CVec_u8ZPeerHandleErrorZ() { CResult_CVec_u8ZPeerHandleErrorZ_free(self); }
3345 CResult_CVec_u8ZPeerHandleErrorZ& operator=(CResult_CVec_u8ZPeerHandleErrorZ&& o) { CResult_CVec_u8ZPeerHandleErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CVec_u8ZPeerHandleErrorZ)); return *this; }
3346 LDKCResult_CVec_u8ZPeerHandleErrorZ* operator &() { return &self; }
3347 LDKCResult_CVec_u8ZPeerHandleErrorZ* operator ->() { return &self; }
3348 const LDKCResult_CVec_u8ZPeerHandleErrorZ* operator &() const { return &self; }
3349 const LDKCResult_CVec_u8ZPeerHandleErrorZ* operator ->() const { return &self; }
3351 class CResult_InvoiceFeaturesDecodeErrorZ {
3353 LDKCResult_InvoiceFeaturesDecodeErrorZ self;
3355 CResult_InvoiceFeaturesDecodeErrorZ(const CResult_InvoiceFeaturesDecodeErrorZ&) = delete;
3356 CResult_InvoiceFeaturesDecodeErrorZ(CResult_InvoiceFeaturesDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InvoiceFeaturesDecodeErrorZ)); }
3357 CResult_InvoiceFeaturesDecodeErrorZ(LDKCResult_InvoiceFeaturesDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ)); }
3358 operator LDKCResult_InvoiceFeaturesDecodeErrorZ() && { LDKCResult_InvoiceFeaturesDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_InvoiceFeaturesDecodeErrorZ)); return res; }
3359 ~CResult_InvoiceFeaturesDecodeErrorZ() { CResult_InvoiceFeaturesDecodeErrorZ_free(self); }
3360 CResult_InvoiceFeaturesDecodeErrorZ& operator=(CResult_InvoiceFeaturesDecodeErrorZ&& o) { CResult_InvoiceFeaturesDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InvoiceFeaturesDecodeErrorZ)); return *this; }
3361 LDKCResult_InvoiceFeaturesDecodeErrorZ* operator &() { return &self; }
3362 LDKCResult_InvoiceFeaturesDecodeErrorZ* operator ->() { return &self; }
3363 const LDKCResult_InvoiceFeaturesDecodeErrorZ* operator &() const { return &self; }
3364 const LDKCResult_InvoiceFeaturesDecodeErrorZ* operator ->() const { return &self; }
3366 class COption_NetworkUpdateZ {
3368 LDKCOption_NetworkUpdateZ self;
3370 COption_NetworkUpdateZ(const COption_NetworkUpdateZ&) = delete;
3371 COption_NetworkUpdateZ(COption_NetworkUpdateZ&& o) : self(o.self) { memset(&o, 0, sizeof(COption_NetworkUpdateZ)); }
3372 COption_NetworkUpdateZ(LDKCOption_NetworkUpdateZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_NetworkUpdateZ)); }
3373 operator LDKCOption_NetworkUpdateZ() && { LDKCOption_NetworkUpdateZ res = self; memset(&self, 0, sizeof(LDKCOption_NetworkUpdateZ)); return res; }
3374 ~COption_NetworkUpdateZ() { COption_NetworkUpdateZ_free(self); }
3375 COption_NetworkUpdateZ& operator=(COption_NetworkUpdateZ&& o) { COption_NetworkUpdateZ_free(self); self = o.self; memset(&o, 0, sizeof(COption_NetworkUpdateZ)); return *this; }
3376 LDKCOption_NetworkUpdateZ* operator &() { return &self; }
3377 LDKCOption_NetworkUpdateZ* operator ->() { return &self; }
3378 const LDKCOption_NetworkUpdateZ* operator &() const { return &self; }
3379 const LDKCOption_NetworkUpdateZ* operator ->() const { return &self; }
3381 class COption_u64Z {
3383 LDKCOption_u64Z self;
3385 COption_u64Z(const COption_u64Z&) = delete;
3386 COption_u64Z(COption_u64Z&& o) : self(o.self) { memset(&o, 0, sizeof(COption_u64Z)); }
3387 COption_u64Z(LDKCOption_u64Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_u64Z)); }
3388 operator LDKCOption_u64Z() && { LDKCOption_u64Z res = self; memset(&self, 0, sizeof(LDKCOption_u64Z)); return res; }
3389 ~COption_u64Z() { COption_u64Z_free(self); }
3390 COption_u64Z& operator=(COption_u64Z&& o) { COption_u64Z_free(self); self = o.self; memset(&o, 0, sizeof(COption_u64Z)); return *this; }
3391 LDKCOption_u64Z* operator &() { return &self; }
3392 LDKCOption_u64Z* operator ->() { return &self; }
3393 const LDKCOption_u64Z* operator &() const { return &self; }
3394 const LDKCOption_u64Z* operator ->() const { return &self; }
3396 class CResult_TxOutAccessErrorZ {
3398 LDKCResult_TxOutAccessErrorZ self;
3400 CResult_TxOutAccessErrorZ(const CResult_TxOutAccessErrorZ&) = delete;
3401 CResult_TxOutAccessErrorZ(CResult_TxOutAccessErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_TxOutAccessErrorZ)); }
3402 CResult_TxOutAccessErrorZ(LDKCResult_TxOutAccessErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_TxOutAccessErrorZ)); }
3403 operator LDKCResult_TxOutAccessErrorZ() && { LDKCResult_TxOutAccessErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_TxOutAccessErrorZ)); return res; }
3404 ~CResult_TxOutAccessErrorZ() { CResult_TxOutAccessErrorZ_free(self); }
3405 CResult_TxOutAccessErrorZ& operator=(CResult_TxOutAccessErrorZ&& o) { CResult_TxOutAccessErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_TxOutAccessErrorZ)); return *this; }
3406 LDKCResult_TxOutAccessErrorZ* operator &() { return &self; }
3407 LDKCResult_TxOutAccessErrorZ* operator ->() { return &self; }
3408 const LDKCResult_TxOutAccessErrorZ* operator &() const { return &self; }
3409 const LDKCResult_TxOutAccessErrorZ* operator ->() const { return &self; }
3411 class CResult_TrustedClosingTransactionNoneZ {
3413 LDKCResult_TrustedClosingTransactionNoneZ self;
3415 CResult_TrustedClosingTransactionNoneZ(const CResult_TrustedClosingTransactionNoneZ&) = delete;
3416 CResult_TrustedClosingTransactionNoneZ(CResult_TrustedClosingTransactionNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_TrustedClosingTransactionNoneZ)); }
3417 CResult_TrustedClosingTransactionNoneZ(LDKCResult_TrustedClosingTransactionNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_TrustedClosingTransactionNoneZ)); }
3418 operator LDKCResult_TrustedClosingTransactionNoneZ() && { LDKCResult_TrustedClosingTransactionNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_TrustedClosingTransactionNoneZ)); return res; }
3419 ~CResult_TrustedClosingTransactionNoneZ() { CResult_TrustedClosingTransactionNoneZ_free(self); }
3420 CResult_TrustedClosingTransactionNoneZ& operator=(CResult_TrustedClosingTransactionNoneZ&& o) { CResult_TrustedClosingTransactionNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_TrustedClosingTransactionNoneZ)); return *this; }
3421 LDKCResult_TrustedClosingTransactionNoneZ* operator &() { return &self; }
3422 LDKCResult_TrustedClosingTransactionNoneZ* operator ->() { return &self; }
3423 const LDKCResult_TrustedClosingTransactionNoneZ* operator &() const { return &self; }
3424 const LDKCResult_TrustedClosingTransactionNoneZ* operator ->() const { return &self; }
3426 class CResult_ChannelMonitorUpdateDecodeErrorZ {
3428 LDKCResult_ChannelMonitorUpdateDecodeErrorZ self;
3430 CResult_ChannelMonitorUpdateDecodeErrorZ(const CResult_ChannelMonitorUpdateDecodeErrorZ&) = delete;
3431 CResult_ChannelMonitorUpdateDecodeErrorZ(CResult_ChannelMonitorUpdateDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelMonitorUpdateDecodeErrorZ)); }
3432 CResult_ChannelMonitorUpdateDecodeErrorZ(LDKCResult_ChannelMonitorUpdateDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ)); }
3433 operator LDKCResult_ChannelMonitorUpdateDecodeErrorZ() && { LDKCResult_ChannelMonitorUpdateDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelMonitorUpdateDecodeErrorZ)); return res; }
3434 ~CResult_ChannelMonitorUpdateDecodeErrorZ() { CResult_ChannelMonitorUpdateDecodeErrorZ_free(self); }
3435 CResult_ChannelMonitorUpdateDecodeErrorZ& operator=(CResult_ChannelMonitorUpdateDecodeErrorZ&& o) { CResult_ChannelMonitorUpdateDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelMonitorUpdateDecodeErrorZ)); return *this; }
3436 LDKCResult_ChannelMonitorUpdateDecodeErrorZ* operator &() { return &self; }
3437 LDKCResult_ChannelMonitorUpdateDecodeErrorZ* operator ->() { return &self; }
3438 const LDKCResult_ChannelMonitorUpdateDecodeErrorZ* operator &() const { return &self; }
3439 const LDKCResult_ChannelMonitorUpdateDecodeErrorZ* operator ->() const { return &self; }
3441 class C2Tuple_PublicKeyTypeZ {
3443 LDKC2Tuple_PublicKeyTypeZ self;
3445 C2Tuple_PublicKeyTypeZ(const C2Tuple_PublicKeyTypeZ&) = delete;
3446 C2Tuple_PublicKeyTypeZ(C2Tuple_PublicKeyTypeZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_PublicKeyTypeZ)); }
3447 C2Tuple_PublicKeyTypeZ(LDKC2Tuple_PublicKeyTypeZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_PublicKeyTypeZ)); }
3448 operator LDKC2Tuple_PublicKeyTypeZ() && { LDKC2Tuple_PublicKeyTypeZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_PublicKeyTypeZ)); return res; }
3449 ~C2Tuple_PublicKeyTypeZ() { C2Tuple_PublicKeyTypeZ_free(self); }
3450 C2Tuple_PublicKeyTypeZ& operator=(C2Tuple_PublicKeyTypeZ&& o) { C2Tuple_PublicKeyTypeZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_PublicKeyTypeZ)); return *this; }
3451 LDKC2Tuple_PublicKeyTypeZ* operator &() { return &self; }
3452 LDKC2Tuple_PublicKeyTypeZ* operator ->() { return &self; }
3453 const LDKC2Tuple_PublicKeyTypeZ* operator &() const { return &self; }
3454 const LDKC2Tuple_PublicKeyTypeZ* operator ->() const { return &self; }
3456 class CResult_NetAddressDecodeErrorZ {
3458 LDKCResult_NetAddressDecodeErrorZ self;
3460 CResult_NetAddressDecodeErrorZ(const CResult_NetAddressDecodeErrorZ&) = delete;
3461 CResult_NetAddressDecodeErrorZ(CResult_NetAddressDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NetAddressDecodeErrorZ)); }
3462 CResult_NetAddressDecodeErrorZ(LDKCResult_NetAddressDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NetAddressDecodeErrorZ)); }
3463 operator LDKCResult_NetAddressDecodeErrorZ() && { LDKCResult_NetAddressDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NetAddressDecodeErrorZ)); return res; }
3464 ~CResult_NetAddressDecodeErrorZ() { CResult_NetAddressDecodeErrorZ_free(self); }
3465 CResult_NetAddressDecodeErrorZ& operator=(CResult_NetAddressDecodeErrorZ&& o) { CResult_NetAddressDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NetAddressDecodeErrorZ)); return *this; }
3466 LDKCResult_NetAddressDecodeErrorZ* operator &() { return &self; }
3467 LDKCResult_NetAddressDecodeErrorZ* operator ->() { return &self; }
3468 const LDKCResult_NetAddressDecodeErrorZ* operator &() const { return &self; }
3469 const LDKCResult_NetAddressDecodeErrorZ* operator ->() const { return &self; }
3471 class CResult_ChannelReestablishDecodeErrorZ {
3473 LDKCResult_ChannelReestablishDecodeErrorZ self;
3475 CResult_ChannelReestablishDecodeErrorZ(const CResult_ChannelReestablishDecodeErrorZ&) = delete;
3476 CResult_ChannelReestablishDecodeErrorZ(CResult_ChannelReestablishDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelReestablishDecodeErrorZ)); }
3477 CResult_ChannelReestablishDecodeErrorZ(LDKCResult_ChannelReestablishDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelReestablishDecodeErrorZ)); }
3478 operator LDKCResult_ChannelReestablishDecodeErrorZ() && { LDKCResult_ChannelReestablishDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelReestablishDecodeErrorZ)); return res; }
3479 ~CResult_ChannelReestablishDecodeErrorZ() { CResult_ChannelReestablishDecodeErrorZ_free(self); }
3480 CResult_ChannelReestablishDecodeErrorZ& operator=(CResult_ChannelReestablishDecodeErrorZ&& o) { CResult_ChannelReestablishDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelReestablishDecodeErrorZ)); return *this; }
3481 LDKCResult_ChannelReestablishDecodeErrorZ* operator &() { return &self; }
3482 LDKCResult_ChannelReestablishDecodeErrorZ* operator ->() { return &self; }
3483 const LDKCResult_ChannelReestablishDecodeErrorZ* operator &() const { return &self; }
3484 const LDKCResult_ChannelReestablishDecodeErrorZ* operator ->() const { return &self; }
3486 class CResult_UnsignedNodeAnnouncementDecodeErrorZ {
3488 LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ self;
3490 CResult_UnsignedNodeAnnouncementDecodeErrorZ(const CResult_UnsignedNodeAnnouncementDecodeErrorZ&) = delete;
3491 CResult_UnsignedNodeAnnouncementDecodeErrorZ(CResult_UnsignedNodeAnnouncementDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UnsignedNodeAnnouncementDecodeErrorZ)); }
3492 CResult_UnsignedNodeAnnouncementDecodeErrorZ(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ)); }
3493 operator LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ() && { LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ)); return res; }
3494 ~CResult_UnsignedNodeAnnouncementDecodeErrorZ() { CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(self); }
3495 CResult_UnsignedNodeAnnouncementDecodeErrorZ& operator=(CResult_UnsignedNodeAnnouncementDecodeErrorZ&& o) { CResult_UnsignedNodeAnnouncementDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UnsignedNodeAnnouncementDecodeErrorZ)); return *this; }
3496 LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* operator &() { return &self; }
3497 LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* operator ->() { return &self; }
3498 const LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* operator &() const { return &self; }
3499 const LDKCResult_UnsignedNodeAnnouncementDecodeErrorZ* operator ->() const { return &self; }
3501 class CResult_ReplyChannelRangeDecodeErrorZ {
3503 LDKCResult_ReplyChannelRangeDecodeErrorZ self;
3505 CResult_ReplyChannelRangeDecodeErrorZ(const CResult_ReplyChannelRangeDecodeErrorZ&) = delete;
3506 CResult_ReplyChannelRangeDecodeErrorZ(CResult_ReplyChannelRangeDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ReplyChannelRangeDecodeErrorZ)); }
3507 CResult_ReplyChannelRangeDecodeErrorZ(LDKCResult_ReplyChannelRangeDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ)); }
3508 operator LDKCResult_ReplyChannelRangeDecodeErrorZ() && { LDKCResult_ReplyChannelRangeDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ReplyChannelRangeDecodeErrorZ)); return res; }
3509 ~CResult_ReplyChannelRangeDecodeErrorZ() { CResult_ReplyChannelRangeDecodeErrorZ_free(self); }
3510 CResult_ReplyChannelRangeDecodeErrorZ& operator=(CResult_ReplyChannelRangeDecodeErrorZ&& o) { CResult_ReplyChannelRangeDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ReplyChannelRangeDecodeErrorZ)); return *this; }
3511 LDKCResult_ReplyChannelRangeDecodeErrorZ* operator &() { return &self; }
3512 LDKCResult_ReplyChannelRangeDecodeErrorZ* operator ->() { return &self; }
3513 const LDKCResult_ReplyChannelRangeDecodeErrorZ* operator &() const { return &self; }
3514 const LDKCResult_ReplyChannelRangeDecodeErrorZ* operator ->() const { return &self; }
3516 class CResult_CommitmentSignedDecodeErrorZ {
3518 LDKCResult_CommitmentSignedDecodeErrorZ self;
3520 CResult_CommitmentSignedDecodeErrorZ(const CResult_CommitmentSignedDecodeErrorZ&) = delete;
3521 CResult_CommitmentSignedDecodeErrorZ(CResult_CommitmentSignedDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CommitmentSignedDecodeErrorZ)); }
3522 CResult_CommitmentSignedDecodeErrorZ(LDKCResult_CommitmentSignedDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CommitmentSignedDecodeErrorZ)); }
3523 operator LDKCResult_CommitmentSignedDecodeErrorZ() && { LDKCResult_CommitmentSignedDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CommitmentSignedDecodeErrorZ)); return res; }
3524 ~CResult_CommitmentSignedDecodeErrorZ() { CResult_CommitmentSignedDecodeErrorZ_free(self); }
3525 CResult_CommitmentSignedDecodeErrorZ& operator=(CResult_CommitmentSignedDecodeErrorZ&& o) { CResult_CommitmentSignedDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CommitmentSignedDecodeErrorZ)); return *this; }
3526 LDKCResult_CommitmentSignedDecodeErrorZ* operator &() { return &self; }
3527 LDKCResult_CommitmentSignedDecodeErrorZ* operator ->() { return &self; }
3528 const LDKCResult_CommitmentSignedDecodeErrorZ* operator &() const { return &self; }
3529 const LDKCResult_CommitmentSignedDecodeErrorZ* operator ->() const { return &self; }
3531 class CVec_UpdateAddHTLCZ {
3533 LDKCVec_UpdateAddHTLCZ self;
3535 CVec_UpdateAddHTLCZ(const CVec_UpdateAddHTLCZ&) = delete;
3536 CVec_UpdateAddHTLCZ(CVec_UpdateAddHTLCZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_UpdateAddHTLCZ)); }
3537 CVec_UpdateAddHTLCZ(LDKCVec_UpdateAddHTLCZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_UpdateAddHTLCZ)); }
3538 operator LDKCVec_UpdateAddHTLCZ() && { LDKCVec_UpdateAddHTLCZ res = self; memset(&self, 0, sizeof(LDKCVec_UpdateAddHTLCZ)); return res; }
3539 ~CVec_UpdateAddHTLCZ() { CVec_UpdateAddHTLCZ_free(self); }
3540 CVec_UpdateAddHTLCZ& operator=(CVec_UpdateAddHTLCZ&& o) { CVec_UpdateAddHTLCZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_UpdateAddHTLCZ)); return *this; }
3541 LDKCVec_UpdateAddHTLCZ* operator &() { return &self; }
3542 LDKCVec_UpdateAddHTLCZ* operator ->() { return &self; }
3543 const LDKCVec_UpdateAddHTLCZ* operator &() const { return &self; }
3544 const LDKCVec_UpdateAddHTLCZ* operator ->() const { return &self; }
3546 class CResult_GossipTimestampFilterDecodeErrorZ {
3548 LDKCResult_GossipTimestampFilterDecodeErrorZ self;
3550 CResult_GossipTimestampFilterDecodeErrorZ(const CResult_GossipTimestampFilterDecodeErrorZ&) = delete;
3551 CResult_GossipTimestampFilterDecodeErrorZ(CResult_GossipTimestampFilterDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_GossipTimestampFilterDecodeErrorZ)); }
3552 CResult_GossipTimestampFilterDecodeErrorZ(LDKCResult_GossipTimestampFilterDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ)); }
3553 operator LDKCResult_GossipTimestampFilterDecodeErrorZ() && { LDKCResult_GossipTimestampFilterDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_GossipTimestampFilterDecodeErrorZ)); return res; }
3554 ~CResult_GossipTimestampFilterDecodeErrorZ() { CResult_GossipTimestampFilterDecodeErrorZ_free(self); }
3555 CResult_GossipTimestampFilterDecodeErrorZ& operator=(CResult_GossipTimestampFilterDecodeErrorZ&& o) { CResult_GossipTimestampFilterDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_GossipTimestampFilterDecodeErrorZ)); return *this; }
3556 LDKCResult_GossipTimestampFilterDecodeErrorZ* operator &() { return &self; }
3557 LDKCResult_GossipTimestampFilterDecodeErrorZ* operator ->() { return &self; }
3558 const LDKCResult_GossipTimestampFilterDecodeErrorZ* operator &() const { return &self; }
3559 const LDKCResult_GossipTimestampFilterDecodeErrorZ* operator ->() const { return &self; }
3561 class COption_u32Z {
3563 LDKCOption_u32Z self;
3565 COption_u32Z(const COption_u32Z&) = delete;
3566 COption_u32Z(COption_u32Z&& o) : self(o.self) { memset(&o, 0, sizeof(COption_u32Z)); }
3567 COption_u32Z(LDKCOption_u32Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_u32Z)); }
3568 operator LDKCOption_u32Z() && { LDKCOption_u32Z res = self; memset(&self, 0, sizeof(LDKCOption_u32Z)); return res; }
3569 ~COption_u32Z() { COption_u32Z_free(self); }
3570 COption_u32Z& operator=(COption_u32Z&& o) { COption_u32Z_free(self); self = o.self; memset(&o, 0, sizeof(COption_u32Z)); return *this; }
3571 LDKCOption_u32Z* operator &() { return &self; }
3572 LDKCOption_u32Z* operator ->() { return &self; }
3573 const LDKCOption_u32Z* operator &() const { return &self; }
3574 const LDKCOption_u32Z* operator ->() const { return &self; }
3576 class CResult_InitFeaturesDecodeErrorZ {
3578 LDKCResult_InitFeaturesDecodeErrorZ self;
3580 CResult_InitFeaturesDecodeErrorZ(const CResult_InitFeaturesDecodeErrorZ&) = delete;
3581 CResult_InitFeaturesDecodeErrorZ(CResult_InitFeaturesDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InitFeaturesDecodeErrorZ)); }
3582 CResult_InitFeaturesDecodeErrorZ(LDKCResult_InitFeaturesDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InitFeaturesDecodeErrorZ)); }
3583 operator LDKCResult_InitFeaturesDecodeErrorZ() && { LDKCResult_InitFeaturesDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_InitFeaturesDecodeErrorZ)); return res; }
3584 ~CResult_InitFeaturesDecodeErrorZ() { CResult_InitFeaturesDecodeErrorZ_free(self); }
3585 CResult_InitFeaturesDecodeErrorZ& operator=(CResult_InitFeaturesDecodeErrorZ&& o) { CResult_InitFeaturesDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InitFeaturesDecodeErrorZ)); return *this; }
3586 LDKCResult_InitFeaturesDecodeErrorZ* operator &() { return &self; }
3587 LDKCResult_InitFeaturesDecodeErrorZ* operator ->() { return &self; }
3588 const LDKCResult_InitFeaturesDecodeErrorZ* operator &() const { return &self; }
3589 const LDKCResult_InitFeaturesDecodeErrorZ* operator ->() const { return &self; }
3591 class CResult_StaticPaymentOutputDescriptorDecodeErrorZ {
3593 LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ self;
3595 CResult_StaticPaymentOutputDescriptorDecodeErrorZ(const CResult_StaticPaymentOutputDescriptorDecodeErrorZ&) = delete;
3596 CResult_StaticPaymentOutputDescriptorDecodeErrorZ(CResult_StaticPaymentOutputDescriptorDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_StaticPaymentOutputDescriptorDecodeErrorZ)); }
3597 CResult_StaticPaymentOutputDescriptorDecodeErrorZ(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ)); }
3598 operator LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ() && { LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ)); return res; }
3599 ~CResult_StaticPaymentOutputDescriptorDecodeErrorZ() { CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(self); }
3600 CResult_StaticPaymentOutputDescriptorDecodeErrorZ& operator=(CResult_StaticPaymentOutputDescriptorDecodeErrorZ&& o) { CResult_StaticPaymentOutputDescriptorDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_StaticPaymentOutputDescriptorDecodeErrorZ)); return *this; }
3601 LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* operator &() { return &self; }
3602 LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* operator ->() { return &self; }
3603 const LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* operator &() const { return &self; }
3604 const LDKCResult_StaticPaymentOutputDescriptorDecodeErrorZ* operator ->() const { return &self; }
3606 class CResult_InvoiceSignOrCreationErrorZ {
3608 LDKCResult_InvoiceSignOrCreationErrorZ self;
3610 CResult_InvoiceSignOrCreationErrorZ(const CResult_InvoiceSignOrCreationErrorZ&) = delete;
3611 CResult_InvoiceSignOrCreationErrorZ(CResult_InvoiceSignOrCreationErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InvoiceSignOrCreationErrorZ)); }
3612 CResult_InvoiceSignOrCreationErrorZ(LDKCResult_InvoiceSignOrCreationErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InvoiceSignOrCreationErrorZ)); }
3613 operator LDKCResult_InvoiceSignOrCreationErrorZ() && { LDKCResult_InvoiceSignOrCreationErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_InvoiceSignOrCreationErrorZ)); return res; }
3614 ~CResult_InvoiceSignOrCreationErrorZ() { CResult_InvoiceSignOrCreationErrorZ_free(self); }
3615 CResult_InvoiceSignOrCreationErrorZ& operator=(CResult_InvoiceSignOrCreationErrorZ&& o) { CResult_InvoiceSignOrCreationErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InvoiceSignOrCreationErrorZ)); return *this; }
3616 LDKCResult_InvoiceSignOrCreationErrorZ* operator &() { return &self; }
3617 LDKCResult_InvoiceSignOrCreationErrorZ* operator ->() { return &self; }
3618 const LDKCResult_InvoiceSignOrCreationErrorZ* operator &() const { return &self; }
3619 const LDKCResult_InvoiceSignOrCreationErrorZ* operator ->() const { return &self; }
3621 class COption_FilterZ {
3623 LDKCOption_FilterZ self;
3625 COption_FilterZ(const COption_FilterZ&) = delete;
3626 COption_FilterZ(COption_FilterZ&& o) : self(o.self) { memset(&o, 0, sizeof(COption_FilterZ)); }
3627 COption_FilterZ(LDKCOption_FilterZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_FilterZ)); }
3628 operator LDKCOption_FilterZ() && { LDKCOption_FilterZ res = self; memset(&self, 0, sizeof(LDKCOption_FilterZ)); return res; }
3629 ~COption_FilterZ() { COption_FilterZ_free(self); }
3630 COption_FilterZ& operator=(COption_FilterZ&& o) { COption_FilterZ_free(self); self = o.self; memset(&o, 0, sizeof(COption_FilterZ)); return *this; }
3631 LDKCOption_FilterZ* operator &() { return &self; }
3632 LDKCOption_FilterZ* operator ->() { return &self; }
3633 const LDKCOption_FilterZ* operator &() const { return &self; }
3634 const LDKCOption_FilterZ* operator ->() const { return &self; }
3636 class CResult_CommitmentTransactionDecodeErrorZ {
3638 LDKCResult_CommitmentTransactionDecodeErrorZ self;
3640 CResult_CommitmentTransactionDecodeErrorZ(const CResult_CommitmentTransactionDecodeErrorZ&) = delete;
3641 CResult_CommitmentTransactionDecodeErrorZ(CResult_CommitmentTransactionDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CommitmentTransactionDecodeErrorZ)); }
3642 CResult_CommitmentTransactionDecodeErrorZ(LDKCResult_CommitmentTransactionDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ)); }
3643 operator LDKCResult_CommitmentTransactionDecodeErrorZ() && { LDKCResult_CommitmentTransactionDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CommitmentTransactionDecodeErrorZ)); return res; }
3644 ~CResult_CommitmentTransactionDecodeErrorZ() { CResult_CommitmentTransactionDecodeErrorZ_free(self); }
3645 CResult_CommitmentTransactionDecodeErrorZ& operator=(CResult_CommitmentTransactionDecodeErrorZ&& o) { CResult_CommitmentTransactionDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CommitmentTransactionDecodeErrorZ)); return *this; }
3646 LDKCResult_CommitmentTransactionDecodeErrorZ* operator &() { return &self; }
3647 LDKCResult_CommitmentTransactionDecodeErrorZ* operator ->() { return &self; }
3648 const LDKCResult_CommitmentTransactionDecodeErrorZ* operator &() const { return &self; }
3649 const LDKCResult_CommitmentTransactionDecodeErrorZ* operator ->() const { return &self; }
3651 class COption_C2Tuple_usizeTransactionZZ {
3653 LDKCOption_C2Tuple_usizeTransactionZZ self;
3655 COption_C2Tuple_usizeTransactionZZ(const COption_C2Tuple_usizeTransactionZZ&) = delete;
3656 COption_C2Tuple_usizeTransactionZZ(COption_C2Tuple_usizeTransactionZZ&& o) : self(o.self) { memset(&o, 0, sizeof(COption_C2Tuple_usizeTransactionZZ)); }
3657 COption_C2Tuple_usizeTransactionZZ(LDKCOption_C2Tuple_usizeTransactionZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_C2Tuple_usizeTransactionZZ)); }
3658 operator LDKCOption_C2Tuple_usizeTransactionZZ() && { LDKCOption_C2Tuple_usizeTransactionZZ res = self; memset(&self, 0, sizeof(LDKCOption_C2Tuple_usizeTransactionZZ)); return res; }
3659 ~COption_C2Tuple_usizeTransactionZZ() { COption_C2Tuple_usizeTransactionZZ_free(self); }
3660 COption_C2Tuple_usizeTransactionZZ& operator=(COption_C2Tuple_usizeTransactionZZ&& o) { COption_C2Tuple_usizeTransactionZZ_free(self); self = o.self; memset(&o, 0, sizeof(COption_C2Tuple_usizeTransactionZZ)); return *this; }
3661 LDKCOption_C2Tuple_usizeTransactionZZ* operator &() { return &self; }
3662 LDKCOption_C2Tuple_usizeTransactionZZ* operator ->() { return &self; }
3663 const LDKCOption_C2Tuple_usizeTransactionZZ* operator &() const { return &self; }
3664 const LDKCOption_C2Tuple_usizeTransactionZZ* operator ->() const { return &self; }
3666 class CResult_TransactionNoneZ {
3668 LDKCResult_TransactionNoneZ self;
3670 CResult_TransactionNoneZ(const CResult_TransactionNoneZ&) = delete;
3671 CResult_TransactionNoneZ(CResult_TransactionNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_TransactionNoneZ)); }
3672 CResult_TransactionNoneZ(LDKCResult_TransactionNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_TransactionNoneZ)); }
3673 operator LDKCResult_TransactionNoneZ() && { LDKCResult_TransactionNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_TransactionNoneZ)); return res; }
3674 ~CResult_TransactionNoneZ() { CResult_TransactionNoneZ_free(self); }
3675 CResult_TransactionNoneZ& operator=(CResult_TransactionNoneZ&& o) { CResult_TransactionNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_TransactionNoneZ)); return *this; }
3676 LDKCResult_TransactionNoneZ* operator &() { return &self; }
3677 LDKCResult_TransactionNoneZ* operator ->() { return &self; }
3678 const LDKCResult_TransactionNoneZ* operator &() const { return &self; }
3679 const LDKCResult_TransactionNoneZ* operator ->() const { return &self; }
3681 class CResult_SignedRawInvoiceNoneZ {
3683 LDKCResult_SignedRawInvoiceNoneZ self;
3685 CResult_SignedRawInvoiceNoneZ(const CResult_SignedRawInvoiceNoneZ&) = delete;
3686 CResult_SignedRawInvoiceNoneZ(CResult_SignedRawInvoiceNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_SignedRawInvoiceNoneZ)); }
3687 CResult_SignedRawInvoiceNoneZ(LDKCResult_SignedRawInvoiceNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_SignedRawInvoiceNoneZ)); }
3688 operator LDKCResult_SignedRawInvoiceNoneZ() && { LDKCResult_SignedRawInvoiceNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_SignedRawInvoiceNoneZ)); return res; }
3689 ~CResult_SignedRawInvoiceNoneZ() { CResult_SignedRawInvoiceNoneZ_free(self); }
3690 CResult_SignedRawInvoiceNoneZ& operator=(CResult_SignedRawInvoiceNoneZ&& o) { CResult_SignedRawInvoiceNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_SignedRawInvoiceNoneZ)); return *this; }
3691 LDKCResult_SignedRawInvoiceNoneZ* operator &() { return &self; }
3692 LDKCResult_SignedRawInvoiceNoneZ* operator ->() { return &self; }
3693 const LDKCResult_SignedRawInvoiceNoneZ* operator &() const { return &self; }
3694 const LDKCResult_SignedRawInvoiceNoneZ* operator ->() const { return &self; }
3696 class CResult_ExpiryTimeCreationErrorZ {
3698 LDKCResult_ExpiryTimeCreationErrorZ self;
3700 CResult_ExpiryTimeCreationErrorZ(const CResult_ExpiryTimeCreationErrorZ&) = delete;
3701 CResult_ExpiryTimeCreationErrorZ(CResult_ExpiryTimeCreationErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ExpiryTimeCreationErrorZ)); }
3702 CResult_ExpiryTimeCreationErrorZ(LDKCResult_ExpiryTimeCreationErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ExpiryTimeCreationErrorZ)); }
3703 operator LDKCResult_ExpiryTimeCreationErrorZ() && { LDKCResult_ExpiryTimeCreationErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ExpiryTimeCreationErrorZ)); return res; }
3704 ~CResult_ExpiryTimeCreationErrorZ() { CResult_ExpiryTimeCreationErrorZ_free(self); }
3705 CResult_ExpiryTimeCreationErrorZ& operator=(CResult_ExpiryTimeCreationErrorZ&& o) { CResult_ExpiryTimeCreationErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ExpiryTimeCreationErrorZ)); return *this; }
3706 LDKCResult_ExpiryTimeCreationErrorZ* operator &() { return &self; }
3707 LDKCResult_ExpiryTimeCreationErrorZ* operator ->() { return &self; }
3708 const LDKCResult_ExpiryTimeCreationErrorZ* operator &() const { return &self; }
3709 const LDKCResult_ExpiryTimeCreationErrorZ* operator ->() const { return &self; }
3711 class CResult_ClosingSignedFeeRangeDecodeErrorZ {
3713 LDKCResult_ClosingSignedFeeRangeDecodeErrorZ self;
3715 CResult_ClosingSignedFeeRangeDecodeErrorZ(const CResult_ClosingSignedFeeRangeDecodeErrorZ&) = delete;
3716 CResult_ClosingSignedFeeRangeDecodeErrorZ(CResult_ClosingSignedFeeRangeDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ClosingSignedFeeRangeDecodeErrorZ)); }
3717 CResult_ClosingSignedFeeRangeDecodeErrorZ(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ)); }
3718 operator LDKCResult_ClosingSignedFeeRangeDecodeErrorZ() && { LDKCResult_ClosingSignedFeeRangeDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ)); return res; }
3719 ~CResult_ClosingSignedFeeRangeDecodeErrorZ() { CResult_ClosingSignedFeeRangeDecodeErrorZ_free(self); }
3720 CResult_ClosingSignedFeeRangeDecodeErrorZ& operator=(CResult_ClosingSignedFeeRangeDecodeErrorZ&& o) { CResult_ClosingSignedFeeRangeDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ClosingSignedFeeRangeDecodeErrorZ)); return *this; }
3721 LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* operator &() { return &self; }
3722 LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* operator ->() { return &self; }
3723 const LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* operator &() const { return &self; }
3724 const LDKCResult_ClosingSignedFeeRangeDecodeErrorZ* operator ->() const { return &self; }
3726 class CResult_PingDecodeErrorZ {
3728 LDKCResult_PingDecodeErrorZ self;
3730 CResult_PingDecodeErrorZ(const CResult_PingDecodeErrorZ&) = delete;
3731 CResult_PingDecodeErrorZ(CResult_PingDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PingDecodeErrorZ)); }
3732 CResult_PingDecodeErrorZ(LDKCResult_PingDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PingDecodeErrorZ)); }
3733 operator LDKCResult_PingDecodeErrorZ() && { LDKCResult_PingDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PingDecodeErrorZ)); return res; }
3734 ~CResult_PingDecodeErrorZ() { CResult_PingDecodeErrorZ_free(self); }
3735 CResult_PingDecodeErrorZ& operator=(CResult_PingDecodeErrorZ&& o) { CResult_PingDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PingDecodeErrorZ)); return *this; }
3736 LDKCResult_PingDecodeErrorZ* operator &() { return &self; }
3737 LDKCResult_PingDecodeErrorZ* operator ->() { return &self; }
3738 const LDKCResult_PingDecodeErrorZ* operator &() const { return &self; }
3739 const LDKCResult_PingDecodeErrorZ* operator ->() const { return &self; }
3741 class CVec_TransactionOutputsZ {
3743 LDKCVec_TransactionOutputsZ self;
3745 CVec_TransactionOutputsZ(const CVec_TransactionOutputsZ&) = delete;
3746 CVec_TransactionOutputsZ(CVec_TransactionOutputsZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_TransactionOutputsZ)); }
3747 CVec_TransactionOutputsZ(LDKCVec_TransactionOutputsZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_TransactionOutputsZ)); }
3748 operator LDKCVec_TransactionOutputsZ() && { LDKCVec_TransactionOutputsZ res = self; memset(&self, 0, sizeof(LDKCVec_TransactionOutputsZ)); return res; }
3749 ~CVec_TransactionOutputsZ() { CVec_TransactionOutputsZ_free(self); }
3750 CVec_TransactionOutputsZ& operator=(CVec_TransactionOutputsZ&& o) { CVec_TransactionOutputsZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_TransactionOutputsZ)); return *this; }
3751 LDKCVec_TransactionOutputsZ* operator &() { return &self; }
3752 LDKCVec_TransactionOutputsZ* operator ->() { return &self; }
3753 const LDKCVec_TransactionOutputsZ* operator &() const { return &self; }
3754 const LDKCVec_TransactionOutputsZ* operator ->() const { return &self; }
3756 class CResult_ErrorMessageDecodeErrorZ {
3758 LDKCResult_ErrorMessageDecodeErrorZ self;
3760 CResult_ErrorMessageDecodeErrorZ(const CResult_ErrorMessageDecodeErrorZ&) = delete;
3761 CResult_ErrorMessageDecodeErrorZ(CResult_ErrorMessageDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ErrorMessageDecodeErrorZ)); }
3762 CResult_ErrorMessageDecodeErrorZ(LDKCResult_ErrorMessageDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ErrorMessageDecodeErrorZ)); }
3763 operator LDKCResult_ErrorMessageDecodeErrorZ() && { LDKCResult_ErrorMessageDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ErrorMessageDecodeErrorZ)); return res; }
3764 ~CResult_ErrorMessageDecodeErrorZ() { CResult_ErrorMessageDecodeErrorZ_free(self); }
3765 CResult_ErrorMessageDecodeErrorZ& operator=(CResult_ErrorMessageDecodeErrorZ&& o) { CResult_ErrorMessageDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ErrorMessageDecodeErrorZ)); return *this; }
3766 LDKCResult_ErrorMessageDecodeErrorZ* operator &() { return &self; }
3767 LDKCResult_ErrorMessageDecodeErrorZ* operator ->() { return &self; }
3768 const LDKCResult_ErrorMessageDecodeErrorZ* operator &() const { return &self; }
3769 const LDKCResult_ErrorMessageDecodeErrorZ* operator ->() const { return &self; }
3771 class CResult_OpenChannelDecodeErrorZ {
3773 LDKCResult_OpenChannelDecodeErrorZ self;
3775 CResult_OpenChannelDecodeErrorZ(const CResult_OpenChannelDecodeErrorZ&) = delete;
3776 CResult_OpenChannelDecodeErrorZ(CResult_OpenChannelDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_OpenChannelDecodeErrorZ)); }
3777 CResult_OpenChannelDecodeErrorZ(LDKCResult_OpenChannelDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_OpenChannelDecodeErrorZ)); }
3778 operator LDKCResult_OpenChannelDecodeErrorZ() && { LDKCResult_OpenChannelDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_OpenChannelDecodeErrorZ)); return res; }
3779 ~CResult_OpenChannelDecodeErrorZ() { CResult_OpenChannelDecodeErrorZ_free(self); }
3780 CResult_OpenChannelDecodeErrorZ& operator=(CResult_OpenChannelDecodeErrorZ&& o) { CResult_OpenChannelDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_OpenChannelDecodeErrorZ)); return *this; }
3781 LDKCResult_OpenChannelDecodeErrorZ* operator &() { return &self; }
3782 LDKCResult_OpenChannelDecodeErrorZ* operator ->() { return &self; }
3783 const LDKCResult_OpenChannelDecodeErrorZ* operator &() const { return &self; }
3784 const LDKCResult_OpenChannelDecodeErrorZ* operator ->() const { return &self; }
3786 class CVec_CVec_u8ZZ {
3788 LDKCVec_CVec_u8ZZ self;
3790 CVec_CVec_u8ZZ(const CVec_CVec_u8ZZ&) = delete;
3791 CVec_CVec_u8ZZ(CVec_CVec_u8ZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_CVec_u8ZZ)); }
3792 CVec_CVec_u8ZZ(LDKCVec_CVec_u8ZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_CVec_u8ZZ)); }
3793 operator LDKCVec_CVec_u8ZZ() && { LDKCVec_CVec_u8ZZ res = self; memset(&self, 0, sizeof(LDKCVec_CVec_u8ZZ)); return res; }
3794 ~CVec_CVec_u8ZZ() { CVec_CVec_u8ZZ_free(self); }
3795 CVec_CVec_u8ZZ& operator=(CVec_CVec_u8ZZ&& o) { CVec_CVec_u8ZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_CVec_u8ZZ)); return *this; }
3796 LDKCVec_CVec_u8ZZ* operator &() { return &self; }
3797 LDKCVec_CVec_u8ZZ* operator ->() { return &self; }
3798 const LDKCVec_CVec_u8ZZ* operator &() const { return &self; }
3799 const LDKCVec_CVec_u8ZZ* operator ->() const { return &self; }
3801 class CResult_SecretKeyErrorZ {
3803 LDKCResult_SecretKeyErrorZ self;
3805 CResult_SecretKeyErrorZ(const CResult_SecretKeyErrorZ&) = delete;
3806 CResult_SecretKeyErrorZ(CResult_SecretKeyErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_SecretKeyErrorZ)); }
3807 CResult_SecretKeyErrorZ(LDKCResult_SecretKeyErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_SecretKeyErrorZ)); }
3808 operator LDKCResult_SecretKeyErrorZ() && { LDKCResult_SecretKeyErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_SecretKeyErrorZ)); return res; }
3809 ~CResult_SecretKeyErrorZ() { CResult_SecretKeyErrorZ_free(self); }
3810 CResult_SecretKeyErrorZ& operator=(CResult_SecretKeyErrorZ&& o) { CResult_SecretKeyErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_SecretKeyErrorZ)); return *this; }
3811 LDKCResult_SecretKeyErrorZ* operator &() { return &self; }
3812 LDKCResult_SecretKeyErrorZ* operator ->() { return &self; }
3813 const LDKCResult_SecretKeyErrorZ* operator &() const { return &self; }
3814 const LDKCResult_SecretKeyErrorZ* operator ->() const { return &self; }
3816 class CResult_ShutdownScriptDecodeErrorZ {
3818 LDKCResult_ShutdownScriptDecodeErrorZ self;
3820 CResult_ShutdownScriptDecodeErrorZ(const CResult_ShutdownScriptDecodeErrorZ&) = delete;
3821 CResult_ShutdownScriptDecodeErrorZ(CResult_ShutdownScriptDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ShutdownScriptDecodeErrorZ)); }
3822 CResult_ShutdownScriptDecodeErrorZ(LDKCResult_ShutdownScriptDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ShutdownScriptDecodeErrorZ)); }
3823 operator LDKCResult_ShutdownScriptDecodeErrorZ() && { LDKCResult_ShutdownScriptDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ShutdownScriptDecodeErrorZ)); return res; }
3824 ~CResult_ShutdownScriptDecodeErrorZ() { CResult_ShutdownScriptDecodeErrorZ_free(self); }
3825 CResult_ShutdownScriptDecodeErrorZ& operator=(CResult_ShutdownScriptDecodeErrorZ&& o) { CResult_ShutdownScriptDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ShutdownScriptDecodeErrorZ)); return *this; }
3826 LDKCResult_ShutdownScriptDecodeErrorZ* operator &() { return &self; }
3827 LDKCResult_ShutdownScriptDecodeErrorZ* operator ->() { return &self; }
3828 const LDKCResult_ShutdownScriptDecodeErrorZ* operator &() const { return &self; }
3829 const LDKCResult_ShutdownScriptDecodeErrorZ* operator ->() const { return &self; }
3831 class CResult_InvoiceNoneZ {
3833 LDKCResult_InvoiceNoneZ self;
3835 CResult_InvoiceNoneZ(const CResult_InvoiceNoneZ&) = delete;
3836 CResult_InvoiceNoneZ(CResult_InvoiceNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InvoiceNoneZ)); }
3837 CResult_InvoiceNoneZ(LDKCResult_InvoiceNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InvoiceNoneZ)); }
3838 operator LDKCResult_InvoiceNoneZ() && { LDKCResult_InvoiceNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_InvoiceNoneZ)); return res; }
3839 ~CResult_InvoiceNoneZ() { CResult_InvoiceNoneZ_free(self); }
3840 CResult_InvoiceNoneZ& operator=(CResult_InvoiceNoneZ&& o) { CResult_InvoiceNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InvoiceNoneZ)); return *this; }
3841 LDKCResult_InvoiceNoneZ* operator &() { return &self; }
3842 LDKCResult_InvoiceNoneZ* operator ->() { return &self; }
3843 const LDKCResult_InvoiceNoneZ* operator &() const { return &self; }
3844 const LDKCResult_InvoiceNoneZ* operator ->() const { return &self; }
3846 class CResult_QueryChannelRangeDecodeErrorZ {
3848 LDKCResult_QueryChannelRangeDecodeErrorZ self;
3850 CResult_QueryChannelRangeDecodeErrorZ(const CResult_QueryChannelRangeDecodeErrorZ&) = delete;
3851 CResult_QueryChannelRangeDecodeErrorZ(CResult_QueryChannelRangeDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_QueryChannelRangeDecodeErrorZ)); }
3852 CResult_QueryChannelRangeDecodeErrorZ(LDKCResult_QueryChannelRangeDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ)); }
3853 operator LDKCResult_QueryChannelRangeDecodeErrorZ() && { LDKCResult_QueryChannelRangeDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_QueryChannelRangeDecodeErrorZ)); return res; }
3854 ~CResult_QueryChannelRangeDecodeErrorZ() { CResult_QueryChannelRangeDecodeErrorZ_free(self); }
3855 CResult_QueryChannelRangeDecodeErrorZ& operator=(CResult_QueryChannelRangeDecodeErrorZ&& o) { CResult_QueryChannelRangeDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_QueryChannelRangeDecodeErrorZ)); return *this; }
3856 LDKCResult_QueryChannelRangeDecodeErrorZ* operator &() { return &self; }
3857 LDKCResult_QueryChannelRangeDecodeErrorZ* operator ->() { return &self; }
3858 const LDKCResult_QueryChannelRangeDecodeErrorZ* operator &() const { return &self; }
3859 const LDKCResult_QueryChannelRangeDecodeErrorZ* operator ->() const { return &self; }
3861 class CResult_TxCreationKeysDecodeErrorZ {
3863 LDKCResult_TxCreationKeysDecodeErrorZ self;
3865 CResult_TxCreationKeysDecodeErrorZ(const CResult_TxCreationKeysDecodeErrorZ&) = delete;
3866 CResult_TxCreationKeysDecodeErrorZ(CResult_TxCreationKeysDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_TxCreationKeysDecodeErrorZ)); }
3867 CResult_TxCreationKeysDecodeErrorZ(LDKCResult_TxCreationKeysDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_TxCreationKeysDecodeErrorZ)); }
3868 operator LDKCResult_TxCreationKeysDecodeErrorZ() && { LDKCResult_TxCreationKeysDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_TxCreationKeysDecodeErrorZ)); return res; }
3869 ~CResult_TxCreationKeysDecodeErrorZ() { CResult_TxCreationKeysDecodeErrorZ_free(self); }
3870 CResult_TxCreationKeysDecodeErrorZ& operator=(CResult_TxCreationKeysDecodeErrorZ&& o) { CResult_TxCreationKeysDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_TxCreationKeysDecodeErrorZ)); return *this; }
3871 LDKCResult_TxCreationKeysDecodeErrorZ* operator &() { return &self; }
3872 LDKCResult_TxCreationKeysDecodeErrorZ* operator ->() { return &self; }
3873 const LDKCResult_TxCreationKeysDecodeErrorZ* operator &() const { return &self; }
3874 const LDKCResult_TxCreationKeysDecodeErrorZ* operator ->() const { return &self; }
3876 class C2Tuple_usizeTransactionZ {
3878 LDKC2Tuple_usizeTransactionZ self;
3880 C2Tuple_usizeTransactionZ(const C2Tuple_usizeTransactionZ&) = delete;
3881 C2Tuple_usizeTransactionZ(C2Tuple_usizeTransactionZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_usizeTransactionZ)); }
3882 C2Tuple_usizeTransactionZ(LDKC2Tuple_usizeTransactionZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_usizeTransactionZ)); }
3883 operator LDKC2Tuple_usizeTransactionZ() && { LDKC2Tuple_usizeTransactionZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_usizeTransactionZ)); return res; }
3884 ~C2Tuple_usizeTransactionZ() { C2Tuple_usizeTransactionZ_free(self); }
3885 C2Tuple_usizeTransactionZ& operator=(C2Tuple_usizeTransactionZ&& o) { C2Tuple_usizeTransactionZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_usizeTransactionZ)); return *this; }
3886 LDKC2Tuple_usizeTransactionZ* operator &() { return &self; }
3887 LDKC2Tuple_usizeTransactionZ* operator ->() { return &self; }
3888 const LDKC2Tuple_usizeTransactionZ* operator &() const { return &self; }
3889 const LDKC2Tuple_usizeTransactionZ* operator ->() const { return &self; }
3891 class CResult_ChannelFeaturesDecodeErrorZ {
3893 LDKCResult_ChannelFeaturesDecodeErrorZ self;
3895 CResult_ChannelFeaturesDecodeErrorZ(const CResult_ChannelFeaturesDecodeErrorZ&) = delete;
3896 CResult_ChannelFeaturesDecodeErrorZ(CResult_ChannelFeaturesDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelFeaturesDecodeErrorZ)); }
3897 CResult_ChannelFeaturesDecodeErrorZ(LDKCResult_ChannelFeaturesDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ)); }
3898 operator LDKCResult_ChannelFeaturesDecodeErrorZ() && { LDKCResult_ChannelFeaturesDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelFeaturesDecodeErrorZ)); return res; }
3899 ~CResult_ChannelFeaturesDecodeErrorZ() { CResult_ChannelFeaturesDecodeErrorZ_free(self); }
3900 CResult_ChannelFeaturesDecodeErrorZ& operator=(CResult_ChannelFeaturesDecodeErrorZ&& o) { CResult_ChannelFeaturesDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelFeaturesDecodeErrorZ)); return *this; }
3901 LDKCResult_ChannelFeaturesDecodeErrorZ* operator &() { return &self; }
3902 LDKCResult_ChannelFeaturesDecodeErrorZ* operator ->() { return &self; }
3903 const LDKCResult_ChannelFeaturesDecodeErrorZ* operator &() const { return &self; }
3904 const LDKCResult_ChannelFeaturesDecodeErrorZ* operator ->() const { return &self; }
3906 class CVec_ChannelMonitorZ {
3908 LDKCVec_ChannelMonitorZ self;
3910 CVec_ChannelMonitorZ(const CVec_ChannelMonitorZ&) = delete;
3911 CVec_ChannelMonitorZ(CVec_ChannelMonitorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_ChannelMonitorZ)); }
3912 CVec_ChannelMonitorZ(LDKCVec_ChannelMonitorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_ChannelMonitorZ)); }
3913 operator LDKCVec_ChannelMonitorZ() && { LDKCVec_ChannelMonitorZ res = self; memset(&self, 0, sizeof(LDKCVec_ChannelMonitorZ)); return res; }
3914 ~CVec_ChannelMonitorZ() { CVec_ChannelMonitorZ_free(self); }
3915 CVec_ChannelMonitorZ& operator=(CVec_ChannelMonitorZ&& o) { CVec_ChannelMonitorZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_ChannelMonitorZ)); return *this; }
3916 LDKCVec_ChannelMonitorZ* operator &() { return &self; }
3917 LDKCVec_ChannelMonitorZ* operator ->() { return &self; }
3918 const LDKCVec_ChannelMonitorZ* operator &() const { return &self; }
3919 const LDKCVec_ChannelMonitorZ* operator ->() const { return &self; }
3921 class CVec_TransactionZ {
3923 LDKCVec_TransactionZ self;
3925 CVec_TransactionZ(const CVec_TransactionZ&) = delete;
3926 CVec_TransactionZ(CVec_TransactionZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_TransactionZ)); }
3927 CVec_TransactionZ(LDKCVec_TransactionZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_TransactionZ)); }
3928 operator LDKCVec_TransactionZ() && { LDKCVec_TransactionZ res = self; memset(&self, 0, sizeof(LDKCVec_TransactionZ)); return res; }
3929 ~CVec_TransactionZ() { CVec_TransactionZ_free(self); }
3930 CVec_TransactionZ& operator=(CVec_TransactionZ&& o) { CVec_TransactionZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_TransactionZ)); return *this; }
3931 LDKCVec_TransactionZ* operator &() { return &self; }
3932 LDKCVec_TransactionZ* operator ->() { return &self; }
3933 const LDKCVec_TransactionZ* operator &() const { return &self; }
3934 const LDKCVec_TransactionZ* operator ->() const { return &self; }
3936 class CResult_UpdateFeeDecodeErrorZ {
3938 LDKCResult_UpdateFeeDecodeErrorZ self;
3940 CResult_UpdateFeeDecodeErrorZ(const CResult_UpdateFeeDecodeErrorZ&) = delete;
3941 CResult_UpdateFeeDecodeErrorZ(CResult_UpdateFeeDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UpdateFeeDecodeErrorZ)); }
3942 CResult_UpdateFeeDecodeErrorZ(LDKCResult_UpdateFeeDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UpdateFeeDecodeErrorZ)); }
3943 operator LDKCResult_UpdateFeeDecodeErrorZ() && { LDKCResult_UpdateFeeDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UpdateFeeDecodeErrorZ)); return res; }
3944 ~CResult_UpdateFeeDecodeErrorZ() { CResult_UpdateFeeDecodeErrorZ_free(self); }
3945 CResult_UpdateFeeDecodeErrorZ& operator=(CResult_UpdateFeeDecodeErrorZ&& o) { CResult_UpdateFeeDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UpdateFeeDecodeErrorZ)); return *this; }
3946 LDKCResult_UpdateFeeDecodeErrorZ* operator &() { return &self; }
3947 LDKCResult_UpdateFeeDecodeErrorZ* operator ->() { return &self; }
3948 const LDKCResult_UpdateFeeDecodeErrorZ* operator &() const { return &self; }
3949 const LDKCResult_UpdateFeeDecodeErrorZ* operator ->() const { return &self; }
3951 class CResult_RouteHopDecodeErrorZ {
3953 LDKCResult_RouteHopDecodeErrorZ self;
3955 CResult_RouteHopDecodeErrorZ(const CResult_RouteHopDecodeErrorZ&) = delete;
3956 CResult_RouteHopDecodeErrorZ(CResult_RouteHopDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_RouteHopDecodeErrorZ)); }
3957 CResult_RouteHopDecodeErrorZ(LDKCResult_RouteHopDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_RouteHopDecodeErrorZ)); }
3958 operator LDKCResult_RouteHopDecodeErrorZ() && { LDKCResult_RouteHopDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_RouteHopDecodeErrorZ)); return res; }
3959 ~CResult_RouteHopDecodeErrorZ() { CResult_RouteHopDecodeErrorZ_free(self); }
3960 CResult_RouteHopDecodeErrorZ& operator=(CResult_RouteHopDecodeErrorZ&& o) { CResult_RouteHopDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_RouteHopDecodeErrorZ)); return *this; }
3961 LDKCResult_RouteHopDecodeErrorZ* operator &() { return &self; }
3962 LDKCResult_RouteHopDecodeErrorZ* operator ->() { return &self; }
3963 const LDKCResult_RouteHopDecodeErrorZ* operator &() const { return &self; }
3964 const LDKCResult_RouteHopDecodeErrorZ* operator ->() const { return &self; }
3966 class CResult_NodeAnnouncementDecodeErrorZ {
3968 LDKCResult_NodeAnnouncementDecodeErrorZ self;
3970 CResult_NodeAnnouncementDecodeErrorZ(const CResult_NodeAnnouncementDecodeErrorZ&) = delete;
3971 CResult_NodeAnnouncementDecodeErrorZ(CResult_NodeAnnouncementDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NodeAnnouncementDecodeErrorZ)); }
3972 CResult_NodeAnnouncementDecodeErrorZ(LDKCResult_NodeAnnouncementDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ)); }
3973 operator LDKCResult_NodeAnnouncementDecodeErrorZ() && { LDKCResult_NodeAnnouncementDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NodeAnnouncementDecodeErrorZ)); return res; }
3974 ~CResult_NodeAnnouncementDecodeErrorZ() { CResult_NodeAnnouncementDecodeErrorZ_free(self); }
3975 CResult_NodeAnnouncementDecodeErrorZ& operator=(CResult_NodeAnnouncementDecodeErrorZ&& o) { CResult_NodeAnnouncementDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NodeAnnouncementDecodeErrorZ)); return *this; }
3976 LDKCResult_NodeAnnouncementDecodeErrorZ* operator &() { return &self; }
3977 LDKCResult_NodeAnnouncementDecodeErrorZ* operator ->() { return &self; }
3978 const LDKCResult_NodeAnnouncementDecodeErrorZ* operator &() const { return &self; }
3979 const LDKCResult_NodeAnnouncementDecodeErrorZ* operator ->() const { return &self; }
3981 class CVec_BalanceZ {
3983 LDKCVec_BalanceZ self;
3985 CVec_BalanceZ(const CVec_BalanceZ&) = delete;
3986 CVec_BalanceZ(CVec_BalanceZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_BalanceZ)); }
3987 CVec_BalanceZ(LDKCVec_BalanceZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_BalanceZ)); }
3988 operator LDKCVec_BalanceZ() && { LDKCVec_BalanceZ res = self; memset(&self, 0, sizeof(LDKCVec_BalanceZ)); return res; }
3989 ~CVec_BalanceZ() { CVec_BalanceZ_free(self); }
3990 CVec_BalanceZ& operator=(CVec_BalanceZ&& o) { CVec_BalanceZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_BalanceZ)); return *this; }
3991 LDKCVec_BalanceZ* operator &() { return &self; }
3992 LDKCVec_BalanceZ* operator ->() { return &self; }
3993 const LDKCVec_BalanceZ* operator &() const { return &self; }
3994 const LDKCVec_BalanceZ* operator ->() const { return &self; }
3996 class CResult_HTLCOutputInCommitmentDecodeErrorZ {
3998 LDKCResult_HTLCOutputInCommitmentDecodeErrorZ self;
4000 CResult_HTLCOutputInCommitmentDecodeErrorZ(const CResult_HTLCOutputInCommitmentDecodeErrorZ&) = delete;
4001 CResult_HTLCOutputInCommitmentDecodeErrorZ(CResult_HTLCOutputInCommitmentDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_HTLCOutputInCommitmentDecodeErrorZ)); }
4002 CResult_HTLCOutputInCommitmentDecodeErrorZ(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ)); }
4003 operator LDKCResult_HTLCOutputInCommitmentDecodeErrorZ() && { LDKCResult_HTLCOutputInCommitmentDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_HTLCOutputInCommitmentDecodeErrorZ)); return res; }
4004 ~CResult_HTLCOutputInCommitmentDecodeErrorZ() { CResult_HTLCOutputInCommitmentDecodeErrorZ_free(self); }
4005 CResult_HTLCOutputInCommitmentDecodeErrorZ& operator=(CResult_HTLCOutputInCommitmentDecodeErrorZ&& o) { CResult_HTLCOutputInCommitmentDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_HTLCOutputInCommitmentDecodeErrorZ)); return *this; }
4006 LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* operator &() { return &self; }
4007 LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* operator ->() { return &self; }
4008 const LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* operator &() const { return &self; }
4009 const LDKCResult_HTLCOutputInCommitmentDecodeErrorZ* operator ->() const { return &self; }
4011 class CResult_boolLightningErrorZ {
4013 LDKCResult_boolLightningErrorZ self;
4015 CResult_boolLightningErrorZ(const CResult_boolLightningErrorZ&) = delete;
4016 CResult_boolLightningErrorZ(CResult_boolLightningErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_boolLightningErrorZ)); }
4017 CResult_boolLightningErrorZ(LDKCResult_boolLightningErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_boolLightningErrorZ)); }
4018 operator LDKCResult_boolLightningErrorZ() && { LDKCResult_boolLightningErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_boolLightningErrorZ)); return res; }
4019 ~CResult_boolLightningErrorZ() { CResult_boolLightningErrorZ_free(self); }
4020 CResult_boolLightningErrorZ& operator=(CResult_boolLightningErrorZ&& o) { CResult_boolLightningErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_boolLightningErrorZ)); return *this; }
4021 LDKCResult_boolLightningErrorZ* operator &() { return &self; }
4022 LDKCResult_boolLightningErrorZ* operator ->() { return &self; }
4023 const LDKCResult_boolLightningErrorZ* operator &() const { return &self; }
4024 const LDKCResult_boolLightningErrorZ* operator ->() const { return &self; }
4026 class CResult_TxCreationKeysErrorZ {
4028 LDKCResult_TxCreationKeysErrorZ self;
4030 CResult_TxCreationKeysErrorZ(const CResult_TxCreationKeysErrorZ&) = delete;
4031 CResult_TxCreationKeysErrorZ(CResult_TxCreationKeysErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_TxCreationKeysErrorZ)); }
4032 CResult_TxCreationKeysErrorZ(LDKCResult_TxCreationKeysErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_TxCreationKeysErrorZ)); }
4033 operator LDKCResult_TxCreationKeysErrorZ() && { LDKCResult_TxCreationKeysErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_TxCreationKeysErrorZ)); return res; }
4034 ~CResult_TxCreationKeysErrorZ() { CResult_TxCreationKeysErrorZ_free(self); }
4035 CResult_TxCreationKeysErrorZ& operator=(CResult_TxCreationKeysErrorZ&& o) { CResult_TxCreationKeysErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_TxCreationKeysErrorZ)); return *this; }
4036 LDKCResult_TxCreationKeysErrorZ* operator &() { return &self; }
4037 LDKCResult_TxCreationKeysErrorZ* operator ->() { return &self; }
4038 const LDKCResult_TxCreationKeysErrorZ* operator &() const { return &self; }
4039 const LDKCResult_TxCreationKeysErrorZ* operator ->() const { return &self; }
4041 class C2Tuple_BlockHashChannelMonitorZ {
4043 LDKC2Tuple_BlockHashChannelMonitorZ self;
4045 C2Tuple_BlockHashChannelMonitorZ(const C2Tuple_BlockHashChannelMonitorZ&) = delete;
4046 C2Tuple_BlockHashChannelMonitorZ(C2Tuple_BlockHashChannelMonitorZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_BlockHashChannelMonitorZ)); }
4047 C2Tuple_BlockHashChannelMonitorZ(LDKC2Tuple_BlockHashChannelMonitorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_BlockHashChannelMonitorZ)); }
4048 operator LDKC2Tuple_BlockHashChannelMonitorZ() && { LDKC2Tuple_BlockHashChannelMonitorZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_BlockHashChannelMonitorZ)); return res; }
4049 ~C2Tuple_BlockHashChannelMonitorZ() { C2Tuple_BlockHashChannelMonitorZ_free(self); }
4050 C2Tuple_BlockHashChannelMonitorZ& operator=(C2Tuple_BlockHashChannelMonitorZ&& o) { C2Tuple_BlockHashChannelMonitorZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_BlockHashChannelMonitorZ)); return *this; }
4051 LDKC2Tuple_BlockHashChannelMonitorZ* operator &() { return &self; }
4052 LDKC2Tuple_BlockHashChannelMonitorZ* operator ->() { return &self; }
4053 const LDKC2Tuple_BlockHashChannelMonitorZ* operator &() const { return &self; }
4054 const LDKC2Tuple_BlockHashChannelMonitorZ* operator ->() const { return &self; }
4056 class CResult_FundingSignedDecodeErrorZ {
4058 LDKCResult_FundingSignedDecodeErrorZ self;
4060 CResult_FundingSignedDecodeErrorZ(const CResult_FundingSignedDecodeErrorZ&) = delete;
4061 CResult_FundingSignedDecodeErrorZ(CResult_FundingSignedDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_FundingSignedDecodeErrorZ)); }
4062 CResult_FundingSignedDecodeErrorZ(LDKCResult_FundingSignedDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_FundingSignedDecodeErrorZ)); }
4063 operator LDKCResult_FundingSignedDecodeErrorZ() && { LDKCResult_FundingSignedDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_FundingSignedDecodeErrorZ)); return res; }
4064 ~CResult_FundingSignedDecodeErrorZ() { CResult_FundingSignedDecodeErrorZ_free(self); }
4065 CResult_FundingSignedDecodeErrorZ& operator=(CResult_FundingSignedDecodeErrorZ&& o) { CResult_FundingSignedDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_FundingSignedDecodeErrorZ)); return *this; }
4066 LDKCResult_FundingSignedDecodeErrorZ* operator &() { return &self; }
4067 LDKCResult_FundingSignedDecodeErrorZ* operator ->() { return &self; }
4068 const LDKCResult_FundingSignedDecodeErrorZ* operator &() const { return &self; }
4069 const LDKCResult_FundingSignedDecodeErrorZ* operator ->() const { return &self; }
4071 class CResult_ShutdownScriptInvalidShutdownScriptZ {
4073 LDKCResult_ShutdownScriptInvalidShutdownScriptZ self;
4075 CResult_ShutdownScriptInvalidShutdownScriptZ(const CResult_ShutdownScriptInvalidShutdownScriptZ&) = delete;
4076 CResult_ShutdownScriptInvalidShutdownScriptZ(CResult_ShutdownScriptInvalidShutdownScriptZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ShutdownScriptInvalidShutdownScriptZ)); }
4077 CResult_ShutdownScriptInvalidShutdownScriptZ(LDKCResult_ShutdownScriptInvalidShutdownScriptZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ)); }
4078 operator LDKCResult_ShutdownScriptInvalidShutdownScriptZ() && { LDKCResult_ShutdownScriptInvalidShutdownScriptZ res = self; memset(&self, 0, sizeof(LDKCResult_ShutdownScriptInvalidShutdownScriptZ)); return res; }
4079 ~CResult_ShutdownScriptInvalidShutdownScriptZ() { CResult_ShutdownScriptInvalidShutdownScriptZ_free(self); }
4080 CResult_ShutdownScriptInvalidShutdownScriptZ& operator=(CResult_ShutdownScriptInvalidShutdownScriptZ&& o) { CResult_ShutdownScriptInvalidShutdownScriptZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ShutdownScriptInvalidShutdownScriptZ)); return *this; }
4081 LDKCResult_ShutdownScriptInvalidShutdownScriptZ* operator &() { return &self; }
4082 LDKCResult_ShutdownScriptInvalidShutdownScriptZ* operator ->() { return &self; }
4083 const LDKCResult_ShutdownScriptInvalidShutdownScriptZ* operator &() const { return &self; }
4084 const LDKCResult_ShutdownScriptInvalidShutdownScriptZ* operator ->() const { return &self; }
4086 class CResult_RecoverableSignatureNoneZ {
4088 LDKCResult_RecoverableSignatureNoneZ self;
4090 CResult_RecoverableSignatureNoneZ(const CResult_RecoverableSignatureNoneZ&) = delete;
4091 CResult_RecoverableSignatureNoneZ(CResult_RecoverableSignatureNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_RecoverableSignatureNoneZ)); }
4092 CResult_RecoverableSignatureNoneZ(LDKCResult_RecoverableSignatureNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_RecoverableSignatureNoneZ)); }
4093 operator LDKCResult_RecoverableSignatureNoneZ() && { LDKCResult_RecoverableSignatureNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_RecoverableSignatureNoneZ)); return res; }
4094 ~CResult_RecoverableSignatureNoneZ() { CResult_RecoverableSignatureNoneZ_free(self); }
4095 CResult_RecoverableSignatureNoneZ& operator=(CResult_RecoverableSignatureNoneZ&& o) { CResult_RecoverableSignatureNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_RecoverableSignatureNoneZ)); return *this; }
4096 LDKCResult_RecoverableSignatureNoneZ* operator &() { return &self; }
4097 LDKCResult_RecoverableSignatureNoneZ* operator ->() { return &self; }
4098 const LDKCResult_RecoverableSignatureNoneZ* operator &() const { return &self; }
4099 const LDKCResult_RecoverableSignatureNoneZ* operator ->() const { return &self; }
4101 class CResult_NodeAnnouncementInfoDecodeErrorZ {
4103 LDKCResult_NodeAnnouncementInfoDecodeErrorZ self;
4105 CResult_NodeAnnouncementInfoDecodeErrorZ(const CResult_NodeAnnouncementInfoDecodeErrorZ&) = delete;
4106 CResult_NodeAnnouncementInfoDecodeErrorZ(CResult_NodeAnnouncementInfoDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NodeAnnouncementInfoDecodeErrorZ)); }
4107 CResult_NodeAnnouncementInfoDecodeErrorZ(LDKCResult_NodeAnnouncementInfoDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NodeAnnouncementInfoDecodeErrorZ)); }
4108 operator LDKCResult_NodeAnnouncementInfoDecodeErrorZ() && { LDKCResult_NodeAnnouncementInfoDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NodeAnnouncementInfoDecodeErrorZ)); return res; }
4109 ~CResult_NodeAnnouncementInfoDecodeErrorZ() { CResult_NodeAnnouncementInfoDecodeErrorZ_free(self); }
4110 CResult_NodeAnnouncementInfoDecodeErrorZ& operator=(CResult_NodeAnnouncementInfoDecodeErrorZ&& o) { CResult_NodeAnnouncementInfoDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NodeAnnouncementInfoDecodeErrorZ)); return *this; }
4111 LDKCResult_NodeAnnouncementInfoDecodeErrorZ* operator &() { return &self; }
4112 LDKCResult_NodeAnnouncementInfoDecodeErrorZ* operator ->() { return &self; }
4113 const LDKCResult_NodeAnnouncementInfoDecodeErrorZ* operator &() const { return &self; }
4114 const LDKCResult_NodeAnnouncementInfoDecodeErrorZ* operator ->() const { return &self; }
4116 class CResult_NetAddressu8Z {
4118 LDKCResult_NetAddressu8Z self;
4120 CResult_NetAddressu8Z(const CResult_NetAddressu8Z&) = delete;
4121 CResult_NetAddressu8Z(CResult_NetAddressu8Z&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NetAddressu8Z)); }
4122 CResult_NetAddressu8Z(LDKCResult_NetAddressu8Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NetAddressu8Z)); }
4123 operator LDKCResult_NetAddressu8Z() && { LDKCResult_NetAddressu8Z res = self; memset(&self, 0, sizeof(LDKCResult_NetAddressu8Z)); return res; }
4124 ~CResult_NetAddressu8Z() { CResult_NetAddressu8Z_free(self); }
4125 CResult_NetAddressu8Z& operator=(CResult_NetAddressu8Z&& o) { CResult_NetAddressu8Z_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NetAddressu8Z)); return *this; }
4126 LDKCResult_NetAddressu8Z* operator &() { return &self; }
4127 LDKCResult_NetAddressu8Z* operator ->() { return &self; }
4128 const LDKCResult_NetAddressu8Z* operator &() const { return &self; }
4129 const LDKCResult_NetAddressu8Z* operator ->() const { return &self; }
4131 class C3Tuple_RawInvoice_u832InvoiceSignatureZ {
4133 LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ self;
4135 C3Tuple_RawInvoice_u832InvoiceSignatureZ(const C3Tuple_RawInvoice_u832InvoiceSignatureZ&) = delete;
4136 C3Tuple_RawInvoice_u832InvoiceSignatureZ(C3Tuple_RawInvoice_u832InvoiceSignatureZ&& o) : self(o.self) { memset(&o, 0, sizeof(C3Tuple_RawInvoice_u832InvoiceSignatureZ)); }
4137 C3Tuple_RawInvoice_u832InvoiceSignatureZ(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ)); }
4138 operator LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ() && { LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ res = self; memset(&self, 0, sizeof(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ)); return res; }
4139 ~C3Tuple_RawInvoice_u832InvoiceSignatureZ() { C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(self); }
4140 C3Tuple_RawInvoice_u832InvoiceSignatureZ& operator=(C3Tuple_RawInvoice_u832InvoiceSignatureZ&& o) { C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(self); self = o.self; memset(&o, 0, sizeof(C3Tuple_RawInvoice_u832InvoiceSignatureZ)); return *this; }
4141 LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* operator &() { return &self; }
4142 LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* operator ->() { return &self; }
4143 const LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* operator &() const { return &self; }
4144 const LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ* operator ->() const { return &self; }
4146 class CVec_UpdateFailMalformedHTLCZ {
4148 LDKCVec_UpdateFailMalformedHTLCZ self;
4150 CVec_UpdateFailMalformedHTLCZ(const CVec_UpdateFailMalformedHTLCZ&) = delete;
4151 CVec_UpdateFailMalformedHTLCZ(CVec_UpdateFailMalformedHTLCZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_UpdateFailMalformedHTLCZ)); }
4152 CVec_UpdateFailMalformedHTLCZ(LDKCVec_UpdateFailMalformedHTLCZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_UpdateFailMalformedHTLCZ)); }
4153 operator LDKCVec_UpdateFailMalformedHTLCZ() && { LDKCVec_UpdateFailMalformedHTLCZ res = self; memset(&self, 0, sizeof(LDKCVec_UpdateFailMalformedHTLCZ)); return res; }
4154 ~CVec_UpdateFailMalformedHTLCZ() { CVec_UpdateFailMalformedHTLCZ_free(self); }
4155 CVec_UpdateFailMalformedHTLCZ& operator=(CVec_UpdateFailMalformedHTLCZ&& o) { CVec_UpdateFailMalformedHTLCZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_UpdateFailMalformedHTLCZ)); return *this; }
4156 LDKCVec_UpdateFailMalformedHTLCZ* operator &() { return &self; }
4157 LDKCVec_UpdateFailMalformedHTLCZ* operator ->() { return &self; }
4158 const LDKCVec_UpdateFailMalformedHTLCZ* operator &() const { return &self; }
4159 const LDKCVec_UpdateFailMalformedHTLCZ* operator ->() const { return &self; }
4161 class CResult_NetworkGraphDecodeErrorZ {
4163 LDKCResult_NetworkGraphDecodeErrorZ self;
4165 CResult_NetworkGraphDecodeErrorZ(const CResult_NetworkGraphDecodeErrorZ&) = delete;
4166 CResult_NetworkGraphDecodeErrorZ(CResult_NetworkGraphDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NetworkGraphDecodeErrorZ)); }
4167 CResult_NetworkGraphDecodeErrorZ(LDKCResult_NetworkGraphDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NetworkGraphDecodeErrorZ)); }
4168 operator LDKCResult_NetworkGraphDecodeErrorZ() && { LDKCResult_NetworkGraphDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NetworkGraphDecodeErrorZ)); return res; }
4169 ~CResult_NetworkGraphDecodeErrorZ() { CResult_NetworkGraphDecodeErrorZ_free(self); }
4170 CResult_NetworkGraphDecodeErrorZ& operator=(CResult_NetworkGraphDecodeErrorZ&& o) { CResult_NetworkGraphDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NetworkGraphDecodeErrorZ)); return *this; }
4171 LDKCResult_NetworkGraphDecodeErrorZ* operator &() { return &self; }
4172 LDKCResult_NetworkGraphDecodeErrorZ* operator ->() { return &self; }
4173 const LDKCResult_NetworkGraphDecodeErrorZ* operator &() const { return &self; }
4174 const LDKCResult_NetworkGraphDecodeErrorZ* operator ->() const { return &self; }
4176 class CVec_RouteHopZ {
4178 LDKCVec_RouteHopZ self;
4180 CVec_RouteHopZ(const CVec_RouteHopZ&) = delete;
4181 CVec_RouteHopZ(CVec_RouteHopZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_RouteHopZ)); }
4182 CVec_RouteHopZ(LDKCVec_RouteHopZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_RouteHopZ)); }
4183 operator LDKCVec_RouteHopZ() && { LDKCVec_RouteHopZ res = self; memset(&self, 0, sizeof(LDKCVec_RouteHopZ)); return res; }
4184 ~CVec_RouteHopZ() { CVec_RouteHopZ_free(self); }
4185 CVec_RouteHopZ& operator=(CVec_RouteHopZ&& o) { CVec_RouteHopZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_RouteHopZ)); return *this; }
4186 LDKCVec_RouteHopZ* operator &() { return &self; }
4187 LDKCVec_RouteHopZ* operator ->() { return &self; }
4188 const LDKCVec_RouteHopZ* operator &() const { return &self; }
4189 const LDKCVec_RouteHopZ* operator ->() const { return &self; }
4191 class CVec_C2Tuple_BlockHashChannelMonitorZZ {
4193 LDKCVec_C2Tuple_BlockHashChannelMonitorZZ self;
4195 CVec_C2Tuple_BlockHashChannelMonitorZZ(const CVec_C2Tuple_BlockHashChannelMonitorZZ&) = delete;
4196 CVec_C2Tuple_BlockHashChannelMonitorZZ(CVec_C2Tuple_BlockHashChannelMonitorZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C2Tuple_BlockHashChannelMonitorZZ)); }
4197 CVec_C2Tuple_BlockHashChannelMonitorZZ(LDKCVec_C2Tuple_BlockHashChannelMonitorZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C2Tuple_BlockHashChannelMonitorZZ)); }
4198 operator LDKCVec_C2Tuple_BlockHashChannelMonitorZZ() && { LDKCVec_C2Tuple_BlockHashChannelMonitorZZ res = self; memset(&self, 0, sizeof(LDKCVec_C2Tuple_BlockHashChannelMonitorZZ)); return res; }
4199 ~CVec_C2Tuple_BlockHashChannelMonitorZZ() { CVec_C2Tuple_BlockHashChannelMonitorZZ_free(self); }
4200 CVec_C2Tuple_BlockHashChannelMonitorZZ& operator=(CVec_C2Tuple_BlockHashChannelMonitorZZ&& o) { CVec_C2Tuple_BlockHashChannelMonitorZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C2Tuple_BlockHashChannelMonitorZZ)); return *this; }
4201 LDKCVec_C2Tuple_BlockHashChannelMonitorZZ* operator &() { return &self; }
4202 LDKCVec_C2Tuple_BlockHashChannelMonitorZZ* operator ->() { return &self; }
4203 const LDKCVec_C2Tuple_BlockHashChannelMonitorZZ* operator &() const { return &self; }
4204 const LDKCVec_C2Tuple_BlockHashChannelMonitorZZ* operator ->() const { return &self; }
4206 class CResult_NonePaymentSendFailureZ {
4208 LDKCResult_NonePaymentSendFailureZ self;
4210 CResult_NonePaymentSendFailureZ(const CResult_NonePaymentSendFailureZ&) = delete;
4211 CResult_NonePaymentSendFailureZ(CResult_NonePaymentSendFailureZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NonePaymentSendFailureZ)); }
4212 CResult_NonePaymentSendFailureZ(LDKCResult_NonePaymentSendFailureZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NonePaymentSendFailureZ)); }
4213 operator LDKCResult_NonePaymentSendFailureZ() && { LDKCResult_NonePaymentSendFailureZ res = self; memset(&self, 0, sizeof(LDKCResult_NonePaymentSendFailureZ)); return res; }
4214 ~CResult_NonePaymentSendFailureZ() { CResult_NonePaymentSendFailureZ_free(self); }
4215 CResult_NonePaymentSendFailureZ& operator=(CResult_NonePaymentSendFailureZ&& o) { CResult_NonePaymentSendFailureZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NonePaymentSendFailureZ)); return *this; }
4216 LDKCResult_NonePaymentSendFailureZ* operator &() { return &self; }
4217 LDKCResult_NonePaymentSendFailureZ* operator ->() { return &self; }
4218 const LDKCResult_NonePaymentSendFailureZ* operator &() const { return &self; }
4219 const LDKCResult_NonePaymentSendFailureZ* operator ->() const { return &self; }
4221 class CResult_RouteLightningErrorZ {
4223 LDKCResult_RouteLightningErrorZ self;
4225 CResult_RouteLightningErrorZ(const CResult_RouteLightningErrorZ&) = delete;
4226 CResult_RouteLightningErrorZ(CResult_RouteLightningErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_RouteLightningErrorZ)); }
4227 CResult_RouteLightningErrorZ(LDKCResult_RouteLightningErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_RouteLightningErrorZ)); }
4228 operator LDKCResult_RouteLightningErrorZ() && { LDKCResult_RouteLightningErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_RouteLightningErrorZ)); return res; }
4229 ~CResult_RouteLightningErrorZ() { CResult_RouteLightningErrorZ_free(self); }
4230 CResult_RouteLightningErrorZ& operator=(CResult_RouteLightningErrorZ&& o) { CResult_RouteLightningErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_RouteLightningErrorZ)); return *this; }
4231 LDKCResult_RouteLightningErrorZ* operator &() { return &self; }
4232 LDKCResult_RouteLightningErrorZ* operator ->() { return &self; }
4233 const LDKCResult_RouteLightningErrorZ* operator &() const { return &self; }
4234 const LDKCResult_RouteLightningErrorZ* operator ->() const { return &self; }
4236 class CResult_ChannelPublicKeysDecodeErrorZ {
4238 LDKCResult_ChannelPublicKeysDecodeErrorZ self;
4240 CResult_ChannelPublicKeysDecodeErrorZ(const CResult_ChannelPublicKeysDecodeErrorZ&) = delete;
4241 CResult_ChannelPublicKeysDecodeErrorZ(CResult_ChannelPublicKeysDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelPublicKeysDecodeErrorZ)); }
4242 CResult_ChannelPublicKeysDecodeErrorZ(LDKCResult_ChannelPublicKeysDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ)); }
4243 operator LDKCResult_ChannelPublicKeysDecodeErrorZ() && { LDKCResult_ChannelPublicKeysDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelPublicKeysDecodeErrorZ)); return res; }
4244 ~CResult_ChannelPublicKeysDecodeErrorZ() { CResult_ChannelPublicKeysDecodeErrorZ_free(self); }
4245 CResult_ChannelPublicKeysDecodeErrorZ& operator=(CResult_ChannelPublicKeysDecodeErrorZ&& o) { CResult_ChannelPublicKeysDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelPublicKeysDecodeErrorZ)); return *this; }
4246 LDKCResult_ChannelPublicKeysDecodeErrorZ* operator &() { return &self; }
4247 LDKCResult_ChannelPublicKeysDecodeErrorZ* operator ->() { return &self; }
4248 const LDKCResult_ChannelPublicKeysDecodeErrorZ* operator &() const { return &self; }
4249 const LDKCResult_ChannelPublicKeysDecodeErrorZ* operator ->() const { return &self; }
4255 CVec_u8Z(const CVec_u8Z&) = delete;
4256 CVec_u8Z(CVec_u8Z&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_u8Z)); }
4257 CVec_u8Z(LDKCVec_u8Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_u8Z)); }
4258 operator LDKCVec_u8Z() && { LDKCVec_u8Z res = self; memset(&self, 0, sizeof(LDKCVec_u8Z)); return res; }
4259 ~CVec_u8Z() { CVec_u8Z_free(self); }
4260 CVec_u8Z& operator=(CVec_u8Z&& o) { CVec_u8Z_free(self); self = o.self; memset(&o, 0, sizeof(CVec_u8Z)); return *this; }
4261 LDKCVec_u8Z* operator &() { return &self; }
4262 LDKCVec_u8Z* operator ->() { return &self; }
4263 const LDKCVec_u8Z* operator &() const { return &self; }
4264 const LDKCVec_u8Z* operator ->() const { return &self; }
4266 class CResult_NodeInfoDecodeErrorZ {
4268 LDKCResult_NodeInfoDecodeErrorZ self;
4270 CResult_NodeInfoDecodeErrorZ(const CResult_NodeInfoDecodeErrorZ&) = delete;
4271 CResult_NodeInfoDecodeErrorZ(CResult_NodeInfoDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NodeInfoDecodeErrorZ)); }
4272 CResult_NodeInfoDecodeErrorZ(LDKCResult_NodeInfoDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NodeInfoDecodeErrorZ)); }
4273 operator LDKCResult_NodeInfoDecodeErrorZ() && { LDKCResult_NodeInfoDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NodeInfoDecodeErrorZ)); return res; }
4274 ~CResult_NodeInfoDecodeErrorZ() { CResult_NodeInfoDecodeErrorZ_free(self); }
4275 CResult_NodeInfoDecodeErrorZ& operator=(CResult_NodeInfoDecodeErrorZ&& o) { CResult_NodeInfoDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NodeInfoDecodeErrorZ)); return *this; }
4276 LDKCResult_NodeInfoDecodeErrorZ* operator &() { return &self; }
4277 LDKCResult_NodeInfoDecodeErrorZ* operator ->() { return &self; }
4278 const LDKCResult_NodeInfoDecodeErrorZ* operator &() const { return &self; }
4279 const LDKCResult_NodeInfoDecodeErrorZ* operator ->() const { return &self; }
4281 class CResult_ClosingSignedDecodeErrorZ {
4283 LDKCResult_ClosingSignedDecodeErrorZ self;
4285 CResult_ClosingSignedDecodeErrorZ(const CResult_ClosingSignedDecodeErrorZ&) = delete;
4286 CResult_ClosingSignedDecodeErrorZ(CResult_ClosingSignedDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ClosingSignedDecodeErrorZ)); }
4287 CResult_ClosingSignedDecodeErrorZ(LDKCResult_ClosingSignedDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ClosingSignedDecodeErrorZ)); }
4288 operator LDKCResult_ClosingSignedDecodeErrorZ() && { LDKCResult_ClosingSignedDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ClosingSignedDecodeErrorZ)); return res; }
4289 ~CResult_ClosingSignedDecodeErrorZ() { CResult_ClosingSignedDecodeErrorZ_free(self); }
4290 CResult_ClosingSignedDecodeErrorZ& operator=(CResult_ClosingSignedDecodeErrorZ&& o) { CResult_ClosingSignedDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ClosingSignedDecodeErrorZ)); return *this; }
4291 LDKCResult_ClosingSignedDecodeErrorZ* operator &() { return &self; }
4292 LDKCResult_ClosingSignedDecodeErrorZ* operator ->() { return &self; }
4293 const LDKCResult_ClosingSignedDecodeErrorZ* operator &() const { return &self; }
4294 const LDKCResult_ClosingSignedDecodeErrorZ* operator ->() const { return &self; }
4296 class CResult_HolderCommitmentTransactionDecodeErrorZ {
4298 LDKCResult_HolderCommitmentTransactionDecodeErrorZ self;
4300 CResult_HolderCommitmentTransactionDecodeErrorZ(const CResult_HolderCommitmentTransactionDecodeErrorZ&) = delete;
4301 CResult_HolderCommitmentTransactionDecodeErrorZ(CResult_HolderCommitmentTransactionDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_HolderCommitmentTransactionDecodeErrorZ)); }
4302 CResult_HolderCommitmentTransactionDecodeErrorZ(LDKCResult_HolderCommitmentTransactionDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ)); }
4303 operator LDKCResult_HolderCommitmentTransactionDecodeErrorZ() && { LDKCResult_HolderCommitmentTransactionDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_HolderCommitmentTransactionDecodeErrorZ)); return res; }
4304 ~CResult_HolderCommitmentTransactionDecodeErrorZ() { CResult_HolderCommitmentTransactionDecodeErrorZ_free(self); }
4305 CResult_HolderCommitmentTransactionDecodeErrorZ& operator=(CResult_HolderCommitmentTransactionDecodeErrorZ&& o) { CResult_HolderCommitmentTransactionDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_HolderCommitmentTransactionDecodeErrorZ)); return *this; }
4306 LDKCResult_HolderCommitmentTransactionDecodeErrorZ* operator &() { return &self; }
4307 LDKCResult_HolderCommitmentTransactionDecodeErrorZ* operator ->() { return &self; }
4308 const LDKCResult_HolderCommitmentTransactionDecodeErrorZ* operator &() const { return &self; }
4309 const LDKCResult_HolderCommitmentTransactionDecodeErrorZ* operator ->() const { return &self; }
4311 class CVec_CResult_NoneAPIErrorZZ {
4313 LDKCVec_CResult_NoneAPIErrorZZ self;
4315 CVec_CResult_NoneAPIErrorZZ(const CVec_CResult_NoneAPIErrorZZ&) = delete;
4316 CVec_CResult_NoneAPIErrorZZ(CVec_CResult_NoneAPIErrorZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_CResult_NoneAPIErrorZZ)); }
4317 CVec_CResult_NoneAPIErrorZZ(LDKCVec_CResult_NoneAPIErrorZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_CResult_NoneAPIErrorZZ)); }
4318 operator LDKCVec_CResult_NoneAPIErrorZZ() && { LDKCVec_CResult_NoneAPIErrorZZ res = self; memset(&self, 0, sizeof(LDKCVec_CResult_NoneAPIErrorZZ)); return res; }
4319 ~CVec_CResult_NoneAPIErrorZZ() { CVec_CResult_NoneAPIErrorZZ_free(self); }
4320 CVec_CResult_NoneAPIErrorZZ& operator=(CVec_CResult_NoneAPIErrorZZ&& o) { CVec_CResult_NoneAPIErrorZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_CResult_NoneAPIErrorZZ)); return *this; }
4321 LDKCVec_CResult_NoneAPIErrorZZ* operator &() { return &self; }
4322 LDKCVec_CResult_NoneAPIErrorZZ* operator ->() { return &self; }
4323 const LDKCVec_CResult_NoneAPIErrorZZ* operator &() const { return &self; }
4324 const LDKCVec_CResult_NoneAPIErrorZZ* operator ->() const { return &self; }
4326 class CResult_SignatureNoneZ {
4328 LDKCResult_SignatureNoneZ self;
4330 CResult_SignatureNoneZ(const CResult_SignatureNoneZ&) = delete;
4331 CResult_SignatureNoneZ(CResult_SignatureNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_SignatureNoneZ)); }
4332 CResult_SignatureNoneZ(LDKCResult_SignatureNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_SignatureNoneZ)); }
4333 operator LDKCResult_SignatureNoneZ() && { LDKCResult_SignatureNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_SignatureNoneZ)); return res; }
4334 ~CResult_SignatureNoneZ() { CResult_SignatureNoneZ_free(self); }
4335 CResult_SignatureNoneZ& operator=(CResult_SignatureNoneZ&& o) { CResult_SignatureNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_SignatureNoneZ)); return *this; }
4336 LDKCResult_SignatureNoneZ* operator &() { return &self; }
4337 LDKCResult_SignatureNoneZ* operator ->() { return &self; }
4338 const LDKCResult_SignatureNoneZ* operator &() const { return &self; }
4339 const LDKCResult_SignatureNoneZ* operator ->() const { return &self; }
4341 class C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ {
4343 LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ self;
4345 C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ(const C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ&) = delete;
4346 C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ(C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ)); }
4347 C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ)); }
4348 operator LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ() && { LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ)); return res; }
4349 ~C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ() { C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(self); }
4350 C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ& operator=(C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ&& o) { C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ)); return *this; }
4351 LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* operator &() { return &self; }
4352 LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* operator ->() { return &self; }
4353 const LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* operator &() const { return &self; }
4354 const LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ* operator ->() const { return &self; }
4356 class CResult_InitDecodeErrorZ {
4358 LDKCResult_InitDecodeErrorZ self;
4360 CResult_InitDecodeErrorZ(const CResult_InitDecodeErrorZ&) = delete;
4361 CResult_InitDecodeErrorZ(CResult_InitDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InitDecodeErrorZ)); }
4362 CResult_InitDecodeErrorZ(LDKCResult_InitDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InitDecodeErrorZ)); }
4363 operator LDKCResult_InitDecodeErrorZ() && { LDKCResult_InitDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_InitDecodeErrorZ)); return res; }
4364 ~CResult_InitDecodeErrorZ() { CResult_InitDecodeErrorZ_free(self); }
4365 CResult_InitDecodeErrorZ& operator=(CResult_InitDecodeErrorZ&& o) { CResult_InitDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InitDecodeErrorZ)); return *this; }
4366 LDKCResult_InitDecodeErrorZ* operator &() { return &self; }
4367 LDKCResult_InitDecodeErrorZ* operator ->() { return &self; }
4368 const LDKCResult_InitDecodeErrorZ* operator &() const { return &self; }
4369 const LDKCResult_InitDecodeErrorZ* operator ->() const { return &self; }
4371 class CResult_OutPointDecodeErrorZ {
4373 LDKCResult_OutPointDecodeErrorZ self;
4375 CResult_OutPointDecodeErrorZ(const CResult_OutPointDecodeErrorZ&) = delete;
4376 CResult_OutPointDecodeErrorZ(CResult_OutPointDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_OutPointDecodeErrorZ)); }
4377 CResult_OutPointDecodeErrorZ(LDKCResult_OutPointDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_OutPointDecodeErrorZ)); }
4378 operator LDKCResult_OutPointDecodeErrorZ() && { LDKCResult_OutPointDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_OutPointDecodeErrorZ)); return res; }
4379 ~CResult_OutPointDecodeErrorZ() { CResult_OutPointDecodeErrorZ_free(self); }
4380 CResult_OutPointDecodeErrorZ& operator=(CResult_OutPointDecodeErrorZ&& o) { CResult_OutPointDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_OutPointDecodeErrorZ)); return *this; }
4381 LDKCResult_OutPointDecodeErrorZ* operator &() { return &self; }
4382 LDKCResult_OutPointDecodeErrorZ* operator ->() { return &self; }
4383 const LDKCResult_OutPointDecodeErrorZ* operator &() const { return &self; }
4384 const LDKCResult_OutPointDecodeErrorZ* operator ->() const { return &self; }
4386 class CVec_ChannelDetailsZ {
4388 LDKCVec_ChannelDetailsZ self;
4390 CVec_ChannelDetailsZ(const CVec_ChannelDetailsZ&) = delete;
4391 CVec_ChannelDetailsZ(CVec_ChannelDetailsZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_ChannelDetailsZ)); }
4392 CVec_ChannelDetailsZ(LDKCVec_ChannelDetailsZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_ChannelDetailsZ)); }
4393 operator LDKCVec_ChannelDetailsZ() && { LDKCVec_ChannelDetailsZ res = self; memset(&self, 0, sizeof(LDKCVec_ChannelDetailsZ)); return res; }
4394 ~CVec_ChannelDetailsZ() { CVec_ChannelDetailsZ_free(self); }
4395 CVec_ChannelDetailsZ& operator=(CVec_ChannelDetailsZ&& o) { CVec_ChannelDetailsZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_ChannelDetailsZ)); return *this; }
4396 LDKCVec_ChannelDetailsZ* operator &() { return &self; }
4397 LDKCVec_ChannelDetailsZ* operator ->() { return &self; }
4398 const LDKCVec_ChannelDetailsZ* operator &() const { return &self; }
4399 const LDKCVec_ChannelDetailsZ* operator ->() const { return &self; }
4401 class CResult_SignDecodeErrorZ {
4403 LDKCResult_SignDecodeErrorZ self;
4405 CResult_SignDecodeErrorZ(const CResult_SignDecodeErrorZ&) = delete;
4406 CResult_SignDecodeErrorZ(CResult_SignDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_SignDecodeErrorZ)); }
4407 CResult_SignDecodeErrorZ(LDKCResult_SignDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_SignDecodeErrorZ)); }
4408 operator LDKCResult_SignDecodeErrorZ() && { LDKCResult_SignDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_SignDecodeErrorZ)); return res; }
4409 ~CResult_SignDecodeErrorZ() { CResult_SignDecodeErrorZ_free(self); }
4410 CResult_SignDecodeErrorZ& operator=(CResult_SignDecodeErrorZ&& o) { CResult_SignDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_SignDecodeErrorZ)); return *this; }
4411 LDKCResult_SignDecodeErrorZ* operator &() { return &self; }
4412 LDKCResult_SignDecodeErrorZ* operator ->() { return &self; }
4413 const LDKCResult_SignDecodeErrorZ* operator &() const { return &self; }
4414 const LDKCResult_SignDecodeErrorZ* operator ->() const { return &self; }
4416 class CVec_MessageSendEventZ {
4418 LDKCVec_MessageSendEventZ self;
4420 CVec_MessageSendEventZ(const CVec_MessageSendEventZ&) = delete;
4421 CVec_MessageSendEventZ(CVec_MessageSendEventZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_MessageSendEventZ)); }
4422 CVec_MessageSendEventZ(LDKCVec_MessageSendEventZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_MessageSendEventZ)); }
4423 operator LDKCVec_MessageSendEventZ() && { LDKCVec_MessageSendEventZ res = self; memset(&self, 0, sizeof(LDKCVec_MessageSendEventZ)); return res; }
4424 ~CVec_MessageSendEventZ() { CVec_MessageSendEventZ_free(self); }
4425 CVec_MessageSendEventZ& operator=(CVec_MessageSendEventZ&& o) { CVec_MessageSendEventZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_MessageSendEventZ)); return *this; }
4426 LDKCVec_MessageSendEventZ* operator &() { return &self; }
4427 LDKCVec_MessageSendEventZ* operator ->() { return &self; }
4428 const LDKCVec_MessageSendEventZ* operator &() const { return &self; }
4429 const LDKCVec_MessageSendEventZ* operator ->() const { return &self; }
4431 class C2Tuple_OutPointScriptZ {
4433 LDKC2Tuple_OutPointScriptZ self;
4435 C2Tuple_OutPointScriptZ(const C2Tuple_OutPointScriptZ&) = delete;
4436 C2Tuple_OutPointScriptZ(C2Tuple_OutPointScriptZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_OutPointScriptZ)); }
4437 C2Tuple_OutPointScriptZ(LDKC2Tuple_OutPointScriptZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_OutPointScriptZ)); }
4438 operator LDKC2Tuple_OutPointScriptZ() && { LDKC2Tuple_OutPointScriptZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_OutPointScriptZ)); return res; }
4439 ~C2Tuple_OutPointScriptZ() { C2Tuple_OutPointScriptZ_free(self); }
4440 C2Tuple_OutPointScriptZ& operator=(C2Tuple_OutPointScriptZ&& o) { C2Tuple_OutPointScriptZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_OutPointScriptZ)); return *this; }
4441 LDKC2Tuple_OutPointScriptZ* operator &() { return &self; }
4442 LDKC2Tuple_OutPointScriptZ* operator ->() { return &self; }
4443 const LDKC2Tuple_OutPointScriptZ* operator &() const { return &self; }
4444 const LDKC2Tuple_OutPointScriptZ* operator ->() const { return &self; }
4446 class CResult_UpdateFailMalformedHTLCDecodeErrorZ {
4448 LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ self;
4450 CResult_UpdateFailMalformedHTLCDecodeErrorZ(const CResult_UpdateFailMalformedHTLCDecodeErrorZ&) = delete;
4451 CResult_UpdateFailMalformedHTLCDecodeErrorZ(CResult_UpdateFailMalformedHTLCDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UpdateFailMalformedHTLCDecodeErrorZ)); }
4452 CResult_UpdateFailMalformedHTLCDecodeErrorZ(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ)); }
4453 operator LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ() && { LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ)); return res; }
4454 ~CResult_UpdateFailMalformedHTLCDecodeErrorZ() { CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(self); }
4455 CResult_UpdateFailMalformedHTLCDecodeErrorZ& operator=(CResult_UpdateFailMalformedHTLCDecodeErrorZ&& o) { CResult_UpdateFailMalformedHTLCDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UpdateFailMalformedHTLCDecodeErrorZ)); return *this; }
4456 LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* operator &() { return &self; }
4457 LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* operator ->() { return &self; }
4458 const LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* operator &() const { return &self; }
4459 const LDKCResult_UpdateFailMalformedHTLCDecodeErrorZ* operator ->() const { return &self; }
4461 class CVec_NodeAnnouncementZ {
4463 LDKCVec_NodeAnnouncementZ self;
4465 CVec_NodeAnnouncementZ(const CVec_NodeAnnouncementZ&) = delete;
4466 CVec_NodeAnnouncementZ(CVec_NodeAnnouncementZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_NodeAnnouncementZ)); }
4467 CVec_NodeAnnouncementZ(LDKCVec_NodeAnnouncementZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_NodeAnnouncementZ)); }
4468 operator LDKCVec_NodeAnnouncementZ() && { LDKCVec_NodeAnnouncementZ res = self; memset(&self, 0, sizeof(LDKCVec_NodeAnnouncementZ)); return res; }
4469 ~CVec_NodeAnnouncementZ() { CVec_NodeAnnouncementZ_free(self); }
4470 CVec_NodeAnnouncementZ& operator=(CVec_NodeAnnouncementZ&& o) { CVec_NodeAnnouncementZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_NodeAnnouncementZ)); return *this; }
4471 LDKCVec_NodeAnnouncementZ* operator &() { return &self; }
4472 LDKCVec_NodeAnnouncementZ* operator ->() { return &self; }
4473 const LDKCVec_NodeAnnouncementZ* operator &() const { return &self; }
4474 const LDKCVec_NodeAnnouncementZ* operator ->() const { return &self; }
4476 class CResult_UnsignedChannelAnnouncementDecodeErrorZ {
4478 LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ self;
4480 CResult_UnsignedChannelAnnouncementDecodeErrorZ(const CResult_UnsignedChannelAnnouncementDecodeErrorZ&) = delete;
4481 CResult_UnsignedChannelAnnouncementDecodeErrorZ(CResult_UnsignedChannelAnnouncementDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UnsignedChannelAnnouncementDecodeErrorZ)); }
4482 CResult_UnsignedChannelAnnouncementDecodeErrorZ(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ)); }
4483 operator LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ() && { LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ)); return res; }
4484 ~CResult_UnsignedChannelAnnouncementDecodeErrorZ() { CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(self); }
4485 CResult_UnsignedChannelAnnouncementDecodeErrorZ& operator=(CResult_UnsignedChannelAnnouncementDecodeErrorZ&& o) { CResult_UnsignedChannelAnnouncementDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UnsignedChannelAnnouncementDecodeErrorZ)); return *this; }
4486 LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* operator &() { return &self; }
4487 LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* operator ->() { return &self; }
4488 const LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* operator &() const { return &self; }
4489 const LDKCResult_UnsignedChannelAnnouncementDecodeErrorZ* operator ->() const { return &self; }
4495 CVec_TxidZ(const CVec_TxidZ&) = delete;
4496 CVec_TxidZ(CVec_TxidZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_TxidZ)); }
4497 CVec_TxidZ(LDKCVec_TxidZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_TxidZ)); }
4498 operator LDKCVec_TxidZ() && { LDKCVec_TxidZ res = self; memset(&self, 0, sizeof(LDKCVec_TxidZ)); return res; }
4499 ~CVec_TxidZ() { CVec_TxidZ_free(self); }
4500 CVec_TxidZ& operator=(CVec_TxidZ&& o) { CVec_TxidZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_TxidZ)); return *this; }
4501 LDKCVec_TxidZ* operator &() { return &self; }
4502 LDKCVec_TxidZ* operator ->() { return &self; }
4503 const LDKCVec_TxidZ* operator &() const { return &self; }
4504 const LDKCVec_TxidZ* operator ->() const { return &self; }
4506 class CResult_NoneMonitorUpdateErrorZ {
4508 LDKCResult_NoneMonitorUpdateErrorZ self;
4510 CResult_NoneMonitorUpdateErrorZ(const CResult_NoneMonitorUpdateErrorZ&) = delete;
4511 CResult_NoneMonitorUpdateErrorZ(CResult_NoneMonitorUpdateErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneMonitorUpdateErrorZ)); }
4512 CResult_NoneMonitorUpdateErrorZ(LDKCResult_NoneMonitorUpdateErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneMonitorUpdateErrorZ)); }
4513 operator LDKCResult_NoneMonitorUpdateErrorZ() && { LDKCResult_NoneMonitorUpdateErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneMonitorUpdateErrorZ)); return res; }
4514 ~CResult_NoneMonitorUpdateErrorZ() { CResult_NoneMonitorUpdateErrorZ_free(self); }
4515 CResult_NoneMonitorUpdateErrorZ& operator=(CResult_NoneMonitorUpdateErrorZ&& o) { CResult_NoneMonitorUpdateErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneMonitorUpdateErrorZ)); return *this; }
4516 LDKCResult_NoneMonitorUpdateErrorZ* operator &() { return &self; }
4517 LDKCResult_NoneMonitorUpdateErrorZ* operator ->() { return &self; }
4518 const LDKCResult_NoneMonitorUpdateErrorZ* operator &() const { return &self; }
4519 const LDKCResult_NoneMonitorUpdateErrorZ* operator ->() const { return &self; }
4521 class CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ {
4523 LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ self;
4525 CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ(const CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ&) = delete;
4526 CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ(CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ)); }
4527 CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ)); }
4528 operator LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ() && { LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ)); return res; }
4529 ~CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ() { CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(self); }
4530 CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ& operator=(CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ&& o) { CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ)); return *this; }
4531 LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* operator &() { return &self; }
4532 LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* operator ->() { return &self; }
4533 const LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* operator &() const { return &self; }
4534 const LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ* operator ->() const { return &self; }
4536 class CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ {
4538 LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ self;
4540 CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ(const CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ&) = delete;
4541 CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ(CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ)); }
4542 CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ)); }
4543 operator LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ() && { LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ)); return res; }
4544 ~CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ() { CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(self); }
4545 CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ& operator=(CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ&& o) { CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ)); return *this; }
4546 LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* operator &() { return &self; }
4547 LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* operator ->() { return &self; }
4548 const LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* operator &() const { return &self; }
4549 const LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ* operator ->() const { return &self; }
4551 class CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
4553 LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ self;
4555 CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ(const CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ&) = delete;
4556 CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ(CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ)); }
4557 CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ(LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ)); }
4558 operator LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ() && { LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ res = self; memset(&self, 0, sizeof(LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ)); return res; }
4559 ~CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ() { CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(self); }
4560 CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ& operator=(CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ&& o) { CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ)); return *this; }
4561 LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ* operator &() { return &self; }
4562 LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ* operator ->() { return &self; }
4563 const LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ* operator &() const { return &self; }
4564 const LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ* operator ->() const { return &self; }
4566 class CResult_CVec_CVec_u8ZZNoneZ {
4568 LDKCResult_CVec_CVec_u8ZZNoneZ self;
4570 CResult_CVec_CVec_u8ZZNoneZ(const CResult_CVec_CVec_u8ZZNoneZ&) = delete;
4571 CResult_CVec_CVec_u8ZZNoneZ(CResult_CVec_CVec_u8ZZNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CVec_CVec_u8ZZNoneZ)); }
4572 CResult_CVec_CVec_u8ZZNoneZ(LDKCResult_CVec_CVec_u8ZZNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ)); }
4573 operator LDKCResult_CVec_CVec_u8ZZNoneZ() && { LDKCResult_CVec_CVec_u8ZZNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_CVec_CVec_u8ZZNoneZ)); return res; }
4574 ~CResult_CVec_CVec_u8ZZNoneZ() { CResult_CVec_CVec_u8ZZNoneZ_free(self); }
4575 CResult_CVec_CVec_u8ZZNoneZ& operator=(CResult_CVec_CVec_u8ZZNoneZ&& o) { CResult_CVec_CVec_u8ZZNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CVec_CVec_u8ZZNoneZ)); return *this; }
4576 LDKCResult_CVec_CVec_u8ZZNoneZ* operator &() { return &self; }
4577 LDKCResult_CVec_CVec_u8ZZNoneZ* operator ->() { return &self; }
4578 const LDKCResult_CVec_CVec_u8ZZNoneZ* operator &() const { return &self; }
4579 const LDKCResult_CVec_CVec_u8ZZNoneZ* operator ->() const { return &self; }
4581 class C2Tuple_PaymentHashPaymentSecretZ {
4583 LDKC2Tuple_PaymentHashPaymentSecretZ self;
4585 C2Tuple_PaymentHashPaymentSecretZ(const C2Tuple_PaymentHashPaymentSecretZ&) = delete;
4586 C2Tuple_PaymentHashPaymentSecretZ(C2Tuple_PaymentHashPaymentSecretZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_PaymentHashPaymentSecretZ)); }
4587 C2Tuple_PaymentHashPaymentSecretZ(LDKC2Tuple_PaymentHashPaymentSecretZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ)); }
4588 operator LDKC2Tuple_PaymentHashPaymentSecretZ() && { LDKC2Tuple_PaymentHashPaymentSecretZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_PaymentHashPaymentSecretZ)); return res; }
4589 ~C2Tuple_PaymentHashPaymentSecretZ() { C2Tuple_PaymentHashPaymentSecretZ_free(self); }
4590 C2Tuple_PaymentHashPaymentSecretZ& operator=(C2Tuple_PaymentHashPaymentSecretZ&& o) { C2Tuple_PaymentHashPaymentSecretZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_PaymentHashPaymentSecretZ)); return *this; }
4591 LDKC2Tuple_PaymentHashPaymentSecretZ* operator &() { return &self; }
4592 LDKC2Tuple_PaymentHashPaymentSecretZ* operator ->() { return &self; }
4593 const LDKC2Tuple_PaymentHashPaymentSecretZ* operator &() const { return &self; }
4594 const LDKC2Tuple_PaymentHashPaymentSecretZ* operator ->() const { return &self; }
4596 class COption_AccessZ {
4598 LDKCOption_AccessZ self;
4600 COption_AccessZ(const COption_AccessZ&) = delete;
4601 COption_AccessZ(COption_AccessZ&& o) : self(o.self) { memset(&o, 0, sizeof(COption_AccessZ)); }
4602 COption_AccessZ(LDKCOption_AccessZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_AccessZ)); }
4603 operator LDKCOption_AccessZ() && { LDKCOption_AccessZ res = self; memset(&self, 0, sizeof(LDKCOption_AccessZ)); return res; }
4604 ~COption_AccessZ() { COption_AccessZ_free(self); }
4605 COption_AccessZ& operator=(COption_AccessZ&& o) { COption_AccessZ_free(self); self = o.self; memset(&o, 0, sizeof(COption_AccessZ)); return *this; }
4606 LDKCOption_AccessZ* operator &() { return &self; }
4607 LDKCOption_AccessZ* operator ->() { return &self; }
4608 const LDKCOption_AccessZ* operator &() const { return &self; }
4609 const LDKCOption_AccessZ* operator ->() const { return &self; }
4611 class C2Tuple_BlockHashChannelManagerZ {
4613 LDKC2Tuple_BlockHashChannelManagerZ self;
4615 C2Tuple_BlockHashChannelManagerZ(const C2Tuple_BlockHashChannelManagerZ&) = delete;
4616 C2Tuple_BlockHashChannelManagerZ(C2Tuple_BlockHashChannelManagerZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_BlockHashChannelManagerZ)); }
4617 C2Tuple_BlockHashChannelManagerZ(LDKC2Tuple_BlockHashChannelManagerZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_BlockHashChannelManagerZ)); }
4618 operator LDKC2Tuple_BlockHashChannelManagerZ() && { LDKC2Tuple_BlockHashChannelManagerZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_BlockHashChannelManagerZ)); return res; }
4619 ~C2Tuple_BlockHashChannelManagerZ() { C2Tuple_BlockHashChannelManagerZ_free(self); }
4620 C2Tuple_BlockHashChannelManagerZ& operator=(C2Tuple_BlockHashChannelManagerZ&& o) { C2Tuple_BlockHashChannelManagerZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_BlockHashChannelManagerZ)); return *this; }
4621 LDKC2Tuple_BlockHashChannelManagerZ* operator &() { return &self; }
4622 LDKC2Tuple_BlockHashChannelManagerZ* operator ->() { return &self; }
4623 const LDKC2Tuple_BlockHashChannelManagerZ* operator &() const { return &self; }
4624 const LDKC2Tuple_BlockHashChannelManagerZ* operator ->() const { return &self; }
4626 class CResult_ChannelTransactionParametersDecodeErrorZ {
4628 LDKCResult_ChannelTransactionParametersDecodeErrorZ self;
4630 CResult_ChannelTransactionParametersDecodeErrorZ(const CResult_ChannelTransactionParametersDecodeErrorZ&) = delete;
4631 CResult_ChannelTransactionParametersDecodeErrorZ(CResult_ChannelTransactionParametersDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelTransactionParametersDecodeErrorZ)); }
4632 CResult_ChannelTransactionParametersDecodeErrorZ(LDKCResult_ChannelTransactionParametersDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ)); }
4633 operator LDKCResult_ChannelTransactionParametersDecodeErrorZ() && { LDKCResult_ChannelTransactionParametersDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelTransactionParametersDecodeErrorZ)); return res; }
4634 ~CResult_ChannelTransactionParametersDecodeErrorZ() { CResult_ChannelTransactionParametersDecodeErrorZ_free(self); }
4635 CResult_ChannelTransactionParametersDecodeErrorZ& operator=(CResult_ChannelTransactionParametersDecodeErrorZ&& o) { CResult_ChannelTransactionParametersDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelTransactionParametersDecodeErrorZ)); return *this; }
4636 LDKCResult_ChannelTransactionParametersDecodeErrorZ* operator &() { return &self; }
4637 LDKCResult_ChannelTransactionParametersDecodeErrorZ* operator ->() { return &self; }
4638 const LDKCResult_ChannelTransactionParametersDecodeErrorZ* operator &() const { return &self; }
4639 const LDKCResult_ChannelTransactionParametersDecodeErrorZ* operator ->() const { return &self; }
4641 class CResult_AcceptChannelDecodeErrorZ {
4643 LDKCResult_AcceptChannelDecodeErrorZ self;
4645 CResult_AcceptChannelDecodeErrorZ(const CResult_AcceptChannelDecodeErrorZ&) = delete;
4646 CResult_AcceptChannelDecodeErrorZ(CResult_AcceptChannelDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_AcceptChannelDecodeErrorZ)); }
4647 CResult_AcceptChannelDecodeErrorZ(LDKCResult_AcceptChannelDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_AcceptChannelDecodeErrorZ)); }
4648 operator LDKCResult_AcceptChannelDecodeErrorZ() && { LDKCResult_AcceptChannelDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_AcceptChannelDecodeErrorZ)); return res; }
4649 ~CResult_AcceptChannelDecodeErrorZ() { CResult_AcceptChannelDecodeErrorZ_free(self); }
4650 CResult_AcceptChannelDecodeErrorZ& operator=(CResult_AcceptChannelDecodeErrorZ&& o) { CResult_AcceptChannelDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_AcceptChannelDecodeErrorZ)); return *this; }
4651 LDKCResult_AcceptChannelDecodeErrorZ* operator &() { return &self; }
4652 LDKCResult_AcceptChannelDecodeErrorZ* operator ->() { return &self; }
4653 const LDKCResult_AcceptChannelDecodeErrorZ* operator &() const { return &self; }
4654 const LDKCResult_AcceptChannelDecodeErrorZ* operator ->() const { return &self; }
4656 class CVec_SignatureZ {
4658 LDKCVec_SignatureZ self;
4660 CVec_SignatureZ(const CVec_SignatureZ&) = delete;
4661 CVec_SignatureZ(CVec_SignatureZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_SignatureZ)); }
4662 CVec_SignatureZ(LDKCVec_SignatureZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_SignatureZ)); }
4663 operator LDKCVec_SignatureZ() && { LDKCVec_SignatureZ res = self; memset(&self, 0, sizeof(LDKCVec_SignatureZ)); return res; }
4664 ~CVec_SignatureZ() { CVec_SignatureZ_free(self); }
4665 CVec_SignatureZ& operator=(CVec_SignatureZ&& o) { CVec_SignatureZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_SignatureZ)); return *this; }
4666 LDKCVec_SignatureZ* operator &() { return &self; }
4667 LDKCVec_SignatureZ* operator ->() { return &self; }
4668 const LDKCVec_SignatureZ* operator &() const { return &self; }
4669 const LDKCVec_SignatureZ* operator ->() const { return &self; }
4675 CVec_u64Z(const CVec_u64Z&) = delete;
4676 CVec_u64Z(CVec_u64Z&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_u64Z)); }
4677 CVec_u64Z(LDKCVec_u64Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_u64Z)); }
4678 operator LDKCVec_u64Z() && { LDKCVec_u64Z res = self; memset(&self, 0, sizeof(LDKCVec_u64Z)); return res; }
4679 ~CVec_u64Z() { CVec_u64Z_free(self); }
4680 CVec_u64Z& operator=(CVec_u64Z&& o) { CVec_u64Z_free(self); self = o.self; memset(&o, 0, sizeof(CVec_u64Z)); return *this; }
4681 LDKCVec_u64Z* operator &() { return &self; }
4682 LDKCVec_u64Z* operator ->() { return &self; }
4683 const LDKCVec_u64Z* operator &() const { return &self; }
4684 const LDKCVec_u64Z* operator ->() const { return &self; }
4686 class CResult_PongDecodeErrorZ {
4688 LDKCResult_PongDecodeErrorZ self;
4690 CResult_PongDecodeErrorZ(const CResult_PongDecodeErrorZ&) = delete;
4691 CResult_PongDecodeErrorZ(CResult_PongDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PongDecodeErrorZ)); }
4692 CResult_PongDecodeErrorZ(LDKCResult_PongDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PongDecodeErrorZ)); }
4693 operator LDKCResult_PongDecodeErrorZ() && { LDKCResult_PongDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PongDecodeErrorZ)); return res; }
4694 ~CResult_PongDecodeErrorZ() { CResult_PongDecodeErrorZ_free(self); }
4695 CResult_PongDecodeErrorZ& operator=(CResult_PongDecodeErrorZ&& o) { CResult_PongDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PongDecodeErrorZ)); return *this; }
4696 LDKCResult_PongDecodeErrorZ* operator &() { return &self; }
4697 LDKCResult_PongDecodeErrorZ* operator ->() { return &self; }
4698 const LDKCResult_PongDecodeErrorZ* operator &() const { return &self; }
4699 const LDKCResult_PongDecodeErrorZ* operator ->() const { return &self; }
4701 class CResult_DelayedPaymentOutputDescriptorDecodeErrorZ {
4703 LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ self;
4705 CResult_DelayedPaymentOutputDescriptorDecodeErrorZ(const CResult_DelayedPaymentOutputDescriptorDecodeErrorZ&) = delete;
4706 CResult_DelayedPaymentOutputDescriptorDecodeErrorZ(CResult_DelayedPaymentOutputDescriptorDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_DelayedPaymentOutputDescriptorDecodeErrorZ)); }
4707 CResult_DelayedPaymentOutputDescriptorDecodeErrorZ(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ)); }
4708 operator LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ() && { LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ)); return res; }
4709 ~CResult_DelayedPaymentOutputDescriptorDecodeErrorZ() { CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(self); }
4710 CResult_DelayedPaymentOutputDescriptorDecodeErrorZ& operator=(CResult_DelayedPaymentOutputDescriptorDecodeErrorZ&& o) { CResult_DelayedPaymentOutputDescriptorDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_DelayedPaymentOutputDescriptorDecodeErrorZ)); return *this; }
4711 LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* operator &() { return &self; }
4712 LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* operator ->() { return &self; }
4713 const LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* operator &() const { return &self; }
4714 const LDKCResult_DelayedPaymentOutputDescriptorDecodeErrorZ* operator ->() const { return &self; }
4716 class CResult_StringErrorZ {
4718 LDKCResult_StringErrorZ self;
4720 CResult_StringErrorZ(const CResult_StringErrorZ&) = delete;
4721 CResult_StringErrorZ(CResult_StringErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_StringErrorZ)); }
4722 CResult_StringErrorZ(LDKCResult_StringErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_StringErrorZ)); }
4723 operator LDKCResult_StringErrorZ() && { LDKCResult_StringErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_StringErrorZ)); return res; }
4724 ~CResult_StringErrorZ() { CResult_StringErrorZ_free(self); }
4725 CResult_StringErrorZ& operator=(CResult_StringErrorZ&& o) { CResult_StringErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_StringErrorZ)); return *this; }
4726 LDKCResult_StringErrorZ* operator &() { return &self; }
4727 LDKCResult_StringErrorZ* operator ->() { return &self; }
4728 const LDKCResult_StringErrorZ* operator &() const { return &self; }
4729 const LDKCResult_StringErrorZ* operator ->() const { return &self; }
4731 class CResult_NoneErrorZ {
4733 LDKCResult_NoneErrorZ self;
4735 CResult_NoneErrorZ(const CResult_NoneErrorZ&) = delete;
4736 CResult_NoneErrorZ(CResult_NoneErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneErrorZ)); }
4737 CResult_NoneErrorZ(LDKCResult_NoneErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneErrorZ)); }
4738 operator LDKCResult_NoneErrorZ() && { LDKCResult_NoneErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneErrorZ)); return res; }
4739 ~CResult_NoneErrorZ() { CResult_NoneErrorZ_free(self); }
4740 CResult_NoneErrorZ& operator=(CResult_NoneErrorZ&& o) { CResult_NoneErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneErrorZ)); return *this; }
4741 LDKCResult_NoneErrorZ* operator &() { return &self; }
4742 LDKCResult_NoneErrorZ* operator ->() { return &self; }
4743 const LDKCResult_NoneErrorZ* operator &() const { return &self; }
4744 const LDKCResult_NoneErrorZ* operator ->() const { return &self; }
4746 class C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ {
4748 LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ self;
4750 C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ(const C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ&) = delete;
4751 C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ(C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ)); }
4752 C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ)); }
4753 operator LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ() && { LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ)); return res; }
4754 ~C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ() { C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(self); }
4755 C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ& operator=(C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ&& o) { C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ)); return *this; }
4756 LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* operator &() { return &self; }
4757 LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* operator ->() { return &self; }
4758 const LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* operator &() const { return &self; }
4759 const LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ* operator ->() const { return &self; }
4761 class CVec_RouteHintZ {
4763 LDKCVec_RouteHintZ self;
4765 CVec_RouteHintZ(const CVec_RouteHintZ&) = delete;
4766 CVec_RouteHintZ(CVec_RouteHintZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_RouteHintZ)); }
4767 CVec_RouteHintZ(LDKCVec_RouteHintZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_RouteHintZ)); }
4768 operator LDKCVec_RouteHintZ() && { LDKCVec_RouteHintZ res = self; memset(&self, 0, sizeof(LDKCVec_RouteHintZ)); return res; }
4769 ~CVec_RouteHintZ() { CVec_RouteHintZ_free(self); }
4770 CVec_RouteHintZ& operator=(CVec_RouteHintZ&& o) { CVec_RouteHintZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_RouteHintZ)); return *this; }
4771 LDKCVec_RouteHintZ* operator &() { return &self; }
4772 LDKCVec_RouteHintZ* operator ->() { return &self; }
4773 const LDKCVec_RouteHintZ* operator &() const { return &self; }
4774 const LDKCVec_RouteHintZ* operator ->() const { return &self; }
4776 class COption_u16Z {
4778 LDKCOption_u16Z self;
4780 COption_u16Z(const COption_u16Z&) = delete;
4781 COption_u16Z(COption_u16Z&& o) : self(o.self) { memset(&o, 0, sizeof(COption_u16Z)); }
4782 COption_u16Z(LDKCOption_u16Z&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_u16Z)); }
4783 operator LDKCOption_u16Z() && { LDKCOption_u16Z res = self; memset(&self, 0, sizeof(LDKCOption_u16Z)); return res; }
4784 ~COption_u16Z() { COption_u16Z_free(self); }
4785 COption_u16Z& operator=(COption_u16Z&& o) { COption_u16Z_free(self); self = o.self; memset(&o, 0, sizeof(COption_u16Z)); return *this; }
4786 LDKCOption_u16Z* operator &() { return &self; }
4787 LDKCOption_u16Z* operator ->() { return &self; }
4788 const LDKCOption_u16Z* operator &() const { return &self; }
4789 const LDKCOption_u16Z* operator ->() const { return &self; }
4791 class CVec_CVec_RouteHopZZ {
4793 LDKCVec_CVec_RouteHopZZ self;
4795 CVec_CVec_RouteHopZZ(const CVec_CVec_RouteHopZZ&) = delete;
4796 CVec_CVec_RouteHopZZ(CVec_CVec_RouteHopZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_CVec_RouteHopZZ)); }
4797 CVec_CVec_RouteHopZZ(LDKCVec_CVec_RouteHopZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_CVec_RouteHopZZ)); }
4798 operator LDKCVec_CVec_RouteHopZZ() && { LDKCVec_CVec_RouteHopZZ res = self; memset(&self, 0, sizeof(LDKCVec_CVec_RouteHopZZ)); return res; }
4799 ~CVec_CVec_RouteHopZZ() { CVec_CVec_RouteHopZZ_free(self); }
4800 CVec_CVec_RouteHopZZ& operator=(CVec_CVec_RouteHopZZ&& o) { CVec_CVec_RouteHopZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_CVec_RouteHopZZ)); return *this; }
4801 LDKCVec_CVec_RouteHopZZ* operator &() { return &self; }
4802 LDKCVec_CVec_RouteHopZZ* operator ->() { return &self; }
4803 const LDKCVec_CVec_RouteHopZZ* operator &() const { return &self; }
4804 const LDKCVec_CVec_RouteHopZZ* operator ->() const { return &self; }
4806 class CResult_TrustedCommitmentTransactionNoneZ {
4808 LDKCResult_TrustedCommitmentTransactionNoneZ self;
4810 CResult_TrustedCommitmentTransactionNoneZ(const CResult_TrustedCommitmentTransactionNoneZ&) = delete;
4811 CResult_TrustedCommitmentTransactionNoneZ(CResult_TrustedCommitmentTransactionNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_TrustedCommitmentTransactionNoneZ)); }
4812 CResult_TrustedCommitmentTransactionNoneZ(LDKCResult_TrustedCommitmentTransactionNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ)); }
4813 operator LDKCResult_TrustedCommitmentTransactionNoneZ() && { LDKCResult_TrustedCommitmentTransactionNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_TrustedCommitmentTransactionNoneZ)); return res; }
4814 ~CResult_TrustedCommitmentTransactionNoneZ() { CResult_TrustedCommitmentTransactionNoneZ_free(self); }
4815 CResult_TrustedCommitmentTransactionNoneZ& operator=(CResult_TrustedCommitmentTransactionNoneZ&& o) { CResult_TrustedCommitmentTransactionNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_TrustedCommitmentTransactionNoneZ)); return *this; }
4816 LDKCResult_TrustedCommitmentTransactionNoneZ* operator &() { return &self; }
4817 LDKCResult_TrustedCommitmentTransactionNoneZ* operator ->() { return &self; }
4818 const LDKCResult_TrustedCommitmentTransactionNoneZ* operator &() const { return &self; }
4819 const LDKCResult_TrustedCommitmentTransactionNoneZ* operator ->() const { return &self; }
4821 class CResult_NoneLightningErrorZ {
4823 LDKCResult_NoneLightningErrorZ self;
4825 CResult_NoneLightningErrorZ(const CResult_NoneLightningErrorZ&) = delete;
4826 CResult_NoneLightningErrorZ(CResult_NoneLightningErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneLightningErrorZ)); }
4827 CResult_NoneLightningErrorZ(LDKCResult_NoneLightningErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneLightningErrorZ)); }
4828 operator LDKCResult_NoneLightningErrorZ() && { LDKCResult_NoneLightningErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneLightningErrorZ)); return res; }
4829 ~CResult_NoneLightningErrorZ() { CResult_NoneLightningErrorZ_free(self); }
4830 CResult_NoneLightningErrorZ& operator=(CResult_NoneLightningErrorZ&& o) { CResult_NoneLightningErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneLightningErrorZ)); return *this; }
4831 LDKCResult_NoneLightningErrorZ* operator &() { return &self; }
4832 LDKCResult_NoneLightningErrorZ* operator ->() { return &self; }
4833 const LDKCResult_NoneLightningErrorZ* operator &() const { return &self; }
4834 const LDKCResult_NoneLightningErrorZ* operator ->() const { return &self; }
4836 class CResult_NonePeerHandleErrorZ {
4838 LDKCResult_NonePeerHandleErrorZ self;
4840 CResult_NonePeerHandleErrorZ(const CResult_NonePeerHandleErrorZ&) = delete;
4841 CResult_NonePeerHandleErrorZ(CResult_NonePeerHandleErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NonePeerHandleErrorZ)); }
4842 CResult_NonePeerHandleErrorZ(LDKCResult_NonePeerHandleErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NonePeerHandleErrorZ)); }
4843 operator LDKCResult_NonePeerHandleErrorZ() && { LDKCResult_NonePeerHandleErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NonePeerHandleErrorZ)); return res; }
4844 ~CResult_NonePeerHandleErrorZ() { CResult_NonePeerHandleErrorZ_free(self); }
4845 CResult_NonePeerHandleErrorZ& operator=(CResult_NonePeerHandleErrorZ&& o) { CResult_NonePeerHandleErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NonePeerHandleErrorZ)); return *this; }
4846 LDKCResult_NonePeerHandleErrorZ* operator &() { return &self; }
4847 LDKCResult_NonePeerHandleErrorZ* operator ->() { return &self; }
4848 const LDKCResult_NonePeerHandleErrorZ* operator &() const { return &self; }
4849 const LDKCResult_NonePeerHandleErrorZ* operator ->() const { return &self; }
4851 class CResult_CVec_SignatureZNoneZ {
4853 LDKCResult_CVec_SignatureZNoneZ self;
4855 CResult_CVec_SignatureZNoneZ(const CResult_CVec_SignatureZNoneZ&) = delete;
4856 CResult_CVec_SignatureZNoneZ(CResult_CVec_SignatureZNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CVec_SignatureZNoneZ)); }
4857 CResult_CVec_SignatureZNoneZ(LDKCResult_CVec_SignatureZNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CVec_SignatureZNoneZ)); }
4858 operator LDKCResult_CVec_SignatureZNoneZ() && { LDKCResult_CVec_SignatureZNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_CVec_SignatureZNoneZ)); return res; }
4859 ~CResult_CVec_SignatureZNoneZ() { CResult_CVec_SignatureZNoneZ_free(self); }
4860 CResult_CVec_SignatureZNoneZ& operator=(CResult_CVec_SignatureZNoneZ&& o) { CResult_CVec_SignatureZNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CVec_SignatureZNoneZ)); return *this; }
4861 LDKCResult_CVec_SignatureZNoneZ* operator &() { return &self; }
4862 LDKCResult_CVec_SignatureZNoneZ* operator ->() { return &self; }
4863 const LDKCResult_CVec_SignatureZNoneZ* operator &() const { return &self; }
4864 const LDKCResult_CVec_SignatureZNoneZ* operator ->() const { return &self; }
4866 class CResult_DescriptionCreationErrorZ {
4868 LDKCResult_DescriptionCreationErrorZ self;
4870 CResult_DescriptionCreationErrorZ(const CResult_DescriptionCreationErrorZ&) = delete;
4871 CResult_DescriptionCreationErrorZ(CResult_DescriptionCreationErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_DescriptionCreationErrorZ)); }
4872 CResult_DescriptionCreationErrorZ(LDKCResult_DescriptionCreationErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_DescriptionCreationErrorZ)); }
4873 operator LDKCResult_DescriptionCreationErrorZ() && { LDKCResult_DescriptionCreationErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_DescriptionCreationErrorZ)); return res; }
4874 ~CResult_DescriptionCreationErrorZ() { CResult_DescriptionCreationErrorZ_free(self); }
4875 CResult_DescriptionCreationErrorZ& operator=(CResult_DescriptionCreationErrorZ&& o) { CResult_DescriptionCreationErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_DescriptionCreationErrorZ)); return *this; }
4876 LDKCResult_DescriptionCreationErrorZ* operator &() { return &self; }
4877 LDKCResult_DescriptionCreationErrorZ* operator ->() { return &self; }
4878 const LDKCResult_DescriptionCreationErrorZ* operator &() const { return &self; }
4879 const LDKCResult_DescriptionCreationErrorZ* operator ->() const { return &self; }
4881 class CVec_C2Tuple_PublicKeyTypeZZ {
4883 LDKCVec_C2Tuple_PublicKeyTypeZZ self;
4885 CVec_C2Tuple_PublicKeyTypeZZ(const CVec_C2Tuple_PublicKeyTypeZZ&) = delete;
4886 CVec_C2Tuple_PublicKeyTypeZZ(CVec_C2Tuple_PublicKeyTypeZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C2Tuple_PublicKeyTypeZZ)); }
4887 CVec_C2Tuple_PublicKeyTypeZZ(LDKCVec_C2Tuple_PublicKeyTypeZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C2Tuple_PublicKeyTypeZZ)); }
4888 operator LDKCVec_C2Tuple_PublicKeyTypeZZ() && { LDKCVec_C2Tuple_PublicKeyTypeZZ res = self; memset(&self, 0, sizeof(LDKCVec_C2Tuple_PublicKeyTypeZZ)); return res; }
4889 ~CVec_C2Tuple_PublicKeyTypeZZ() { CVec_C2Tuple_PublicKeyTypeZZ_free(self); }
4890 CVec_C2Tuple_PublicKeyTypeZZ& operator=(CVec_C2Tuple_PublicKeyTypeZZ&& o) { CVec_C2Tuple_PublicKeyTypeZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C2Tuple_PublicKeyTypeZZ)); return *this; }
4891 LDKCVec_C2Tuple_PublicKeyTypeZZ* operator &() { return &self; }
4892 LDKCVec_C2Tuple_PublicKeyTypeZZ* operator ->() { return &self; }
4893 const LDKCVec_C2Tuple_PublicKeyTypeZZ* operator &() const { return &self; }
4894 const LDKCVec_C2Tuple_PublicKeyTypeZZ* operator ->() const { return &self; }
4896 class CResult_RoutingFeesDecodeErrorZ {
4898 LDKCResult_RoutingFeesDecodeErrorZ self;
4900 CResult_RoutingFeesDecodeErrorZ(const CResult_RoutingFeesDecodeErrorZ&) = delete;
4901 CResult_RoutingFeesDecodeErrorZ(CResult_RoutingFeesDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_RoutingFeesDecodeErrorZ)); }
4902 CResult_RoutingFeesDecodeErrorZ(LDKCResult_RoutingFeesDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_RoutingFeesDecodeErrorZ)); }
4903 operator LDKCResult_RoutingFeesDecodeErrorZ() && { LDKCResult_RoutingFeesDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_RoutingFeesDecodeErrorZ)); return res; }
4904 ~CResult_RoutingFeesDecodeErrorZ() { CResult_RoutingFeesDecodeErrorZ_free(self); }
4905 CResult_RoutingFeesDecodeErrorZ& operator=(CResult_RoutingFeesDecodeErrorZ&& o) { CResult_RoutingFeesDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_RoutingFeesDecodeErrorZ)); return *this; }
4906 LDKCResult_RoutingFeesDecodeErrorZ* operator &() { return &self; }
4907 LDKCResult_RoutingFeesDecodeErrorZ* operator ->() { return &self; }
4908 const LDKCResult_RoutingFeesDecodeErrorZ* operator &() const { return &self; }
4909 const LDKCResult_RoutingFeesDecodeErrorZ* operator ->() const { return &self; }
4911 class CResult_PayeePubKeyErrorZ {
4913 LDKCResult_PayeePubKeyErrorZ self;
4915 CResult_PayeePubKeyErrorZ(const CResult_PayeePubKeyErrorZ&) = delete;
4916 CResult_PayeePubKeyErrorZ(CResult_PayeePubKeyErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PayeePubKeyErrorZ)); }
4917 CResult_PayeePubKeyErrorZ(LDKCResult_PayeePubKeyErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PayeePubKeyErrorZ)); }
4918 operator LDKCResult_PayeePubKeyErrorZ() && { LDKCResult_PayeePubKeyErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PayeePubKeyErrorZ)); return res; }
4919 ~CResult_PayeePubKeyErrorZ() { CResult_PayeePubKeyErrorZ_free(self); }
4920 CResult_PayeePubKeyErrorZ& operator=(CResult_PayeePubKeyErrorZ&& o) { CResult_PayeePubKeyErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PayeePubKeyErrorZ)); return *this; }
4921 LDKCResult_PayeePubKeyErrorZ* operator &() { return &self; }
4922 LDKCResult_PayeePubKeyErrorZ* operator ->() { return &self; }
4923 const LDKCResult_PayeePubKeyErrorZ* operator &() const { return &self; }
4924 const LDKCResult_PayeePubKeyErrorZ* operator ->() const { return &self; }
4926 class CResult_QueryShortChannelIdsDecodeErrorZ {
4928 LDKCResult_QueryShortChannelIdsDecodeErrorZ self;
4930 CResult_QueryShortChannelIdsDecodeErrorZ(const CResult_QueryShortChannelIdsDecodeErrorZ&) = delete;
4931 CResult_QueryShortChannelIdsDecodeErrorZ(CResult_QueryShortChannelIdsDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_QueryShortChannelIdsDecodeErrorZ)); }
4932 CResult_QueryShortChannelIdsDecodeErrorZ(LDKCResult_QueryShortChannelIdsDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ)); }
4933 operator LDKCResult_QueryShortChannelIdsDecodeErrorZ() && { LDKCResult_QueryShortChannelIdsDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_QueryShortChannelIdsDecodeErrorZ)); return res; }
4934 ~CResult_QueryShortChannelIdsDecodeErrorZ() { CResult_QueryShortChannelIdsDecodeErrorZ_free(self); }
4935 CResult_QueryShortChannelIdsDecodeErrorZ& operator=(CResult_QueryShortChannelIdsDecodeErrorZ&& o) { CResult_QueryShortChannelIdsDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_QueryShortChannelIdsDecodeErrorZ)); return *this; }
4936 LDKCResult_QueryShortChannelIdsDecodeErrorZ* operator &() { return &self; }
4937 LDKCResult_QueryShortChannelIdsDecodeErrorZ* operator ->() { return &self; }
4938 const LDKCResult_QueryShortChannelIdsDecodeErrorZ* operator &() const { return &self; }
4939 const LDKCResult_QueryShortChannelIdsDecodeErrorZ* operator ->() const { return &self; }
4941 class CResult_InvoiceSemanticErrorZ {
4943 LDKCResult_InvoiceSemanticErrorZ self;
4945 CResult_InvoiceSemanticErrorZ(const CResult_InvoiceSemanticErrorZ&) = delete;
4946 CResult_InvoiceSemanticErrorZ(CResult_InvoiceSemanticErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InvoiceSemanticErrorZ)); }
4947 CResult_InvoiceSemanticErrorZ(LDKCResult_InvoiceSemanticErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InvoiceSemanticErrorZ)); }
4948 operator LDKCResult_InvoiceSemanticErrorZ() && { LDKCResult_InvoiceSemanticErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_InvoiceSemanticErrorZ)); return res; }
4949 ~CResult_InvoiceSemanticErrorZ() { CResult_InvoiceSemanticErrorZ_free(self); }
4950 CResult_InvoiceSemanticErrorZ& operator=(CResult_InvoiceSemanticErrorZ&& o) { CResult_InvoiceSemanticErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InvoiceSemanticErrorZ)); return *this; }
4951 LDKCResult_InvoiceSemanticErrorZ* operator &() { return &self; }
4952 LDKCResult_InvoiceSemanticErrorZ* operator ->() { return &self; }
4953 const LDKCResult_InvoiceSemanticErrorZ* operator &() const { return &self; }
4954 const LDKCResult_InvoiceSemanticErrorZ* operator ->() const { return &self; }
4956 class CResult_UpdateAddHTLCDecodeErrorZ {
4958 LDKCResult_UpdateAddHTLCDecodeErrorZ self;
4960 CResult_UpdateAddHTLCDecodeErrorZ(const CResult_UpdateAddHTLCDecodeErrorZ&) = delete;
4961 CResult_UpdateAddHTLCDecodeErrorZ(CResult_UpdateAddHTLCDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UpdateAddHTLCDecodeErrorZ)); }
4962 CResult_UpdateAddHTLCDecodeErrorZ(LDKCResult_UpdateAddHTLCDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ)); }
4963 operator LDKCResult_UpdateAddHTLCDecodeErrorZ() && { LDKCResult_UpdateAddHTLCDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UpdateAddHTLCDecodeErrorZ)); return res; }
4964 ~CResult_UpdateAddHTLCDecodeErrorZ() { CResult_UpdateAddHTLCDecodeErrorZ_free(self); }
4965 CResult_UpdateAddHTLCDecodeErrorZ& operator=(CResult_UpdateAddHTLCDecodeErrorZ&& o) { CResult_UpdateAddHTLCDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UpdateAddHTLCDecodeErrorZ)); return *this; }
4966 LDKCResult_UpdateAddHTLCDecodeErrorZ* operator &() { return &self; }
4967 LDKCResult_UpdateAddHTLCDecodeErrorZ* operator ->() { return &self; }
4968 const LDKCResult_UpdateAddHTLCDecodeErrorZ* operator &() const { return &self; }
4969 const LDKCResult_UpdateAddHTLCDecodeErrorZ* operator ->() const { return &self; }
4971 class CResult_CounterpartyChannelTransactionParametersDecodeErrorZ {
4973 LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ self;
4975 CResult_CounterpartyChannelTransactionParametersDecodeErrorZ(const CResult_CounterpartyChannelTransactionParametersDecodeErrorZ&) = delete;
4976 CResult_CounterpartyChannelTransactionParametersDecodeErrorZ(CResult_CounterpartyChannelTransactionParametersDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CounterpartyChannelTransactionParametersDecodeErrorZ)); }
4977 CResult_CounterpartyChannelTransactionParametersDecodeErrorZ(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ)); }
4978 operator LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ() && { LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ)); return res; }
4979 ~CResult_CounterpartyChannelTransactionParametersDecodeErrorZ() { CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(self); }
4980 CResult_CounterpartyChannelTransactionParametersDecodeErrorZ& operator=(CResult_CounterpartyChannelTransactionParametersDecodeErrorZ&& o) { CResult_CounterpartyChannelTransactionParametersDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CounterpartyChannelTransactionParametersDecodeErrorZ)); return *this; }
4981 LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* operator &() { return &self; }
4982 LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* operator ->() { return &self; }
4983 const LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* operator &() const { return &self; }
4984 const LDKCResult_CounterpartyChannelTransactionParametersDecodeErrorZ* operator ->() const { return &self; }
4986 class CResult_NoneAPIErrorZ {
4988 LDKCResult_NoneAPIErrorZ self;
4990 CResult_NoneAPIErrorZ(const CResult_NoneAPIErrorZ&) = delete;
4991 CResult_NoneAPIErrorZ(CResult_NoneAPIErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneAPIErrorZ)); }
4992 CResult_NoneAPIErrorZ(LDKCResult_NoneAPIErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneAPIErrorZ)); }
4993 operator LDKCResult_NoneAPIErrorZ() && { LDKCResult_NoneAPIErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneAPIErrorZ)); return res; }
4994 ~CResult_NoneAPIErrorZ() { CResult_NoneAPIErrorZ_free(self); }
4995 CResult_NoneAPIErrorZ& operator=(CResult_NoneAPIErrorZ&& o) { CResult_NoneAPIErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneAPIErrorZ)); return *this; }
4996 LDKCResult_NoneAPIErrorZ* operator &() { return &self; }
4997 LDKCResult_NoneAPIErrorZ* operator ->() { return &self; }
4998 const LDKCResult_NoneAPIErrorZ* operator &() const { return &self; }
4999 const LDKCResult_NoneAPIErrorZ* operator ->() const { return &self; }
5001 class CVec_NetAddressZ {
5003 LDKCVec_NetAddressZ self;
5005 CVec_NetAddressZ(const CVec_NetAddressZ&) = delete;
5006 CVec_NetAddressZ(CVec_NetAddressZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_NetAddressZ)); }
5007 CVec_NetAddressZ(LDKCVec_NetAddressZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_NetAddressZ)); }
5008 operator LDKCVec_NetAddressZ() && { LDKCVec_NetAddressZ res = self; memset(&self, 0, sizeof(LDKCVec_NetAddressZ)); return res; }
5009 ~CVec_NetAddressZ() { CVec_NetAddressZ_free(self); }
5010 CVec_NetAddressZ& operator=(CVec_NetAddressZ&& o) { CVec_NetAddressZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_NetAddressZ)); return *this; }
5011 LDKCVec_NetAddressZ* operator &() { return &self; }
5012 LDKCVec_NetAddressZ* operator ->() { return &self; }
5013 const LDKCVec_NetAddressZ* operator &() const { return &self; }
5014 const LDKCVec_NetAddressZ* operator ->() const { return &self; }
5016 class CVec_C2Tuple_usizeTransactionZZ {
5018 LDKCVec_C2Tuple_usizeTransactionZZ self;
5020 CVec_C2Tuple_usizeTransactionZZ(const CVec_C2Tuple_usizeTransactionZZ&) = delete;
5021 CVec_C2Tuple_usizeTransactionZZ(CVec_C2Tuple_usizeTransactionZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C2Tuple_usizeTransactionZZ)); }
5022 CVec_C2Tuple_usizeTransactionZZ(LDKCVec_C2Tuple_usizeTransactionZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C2Tuple_usizeTransactionZZ)); }
5023 operator LDKCVec_C2Tuple_usizeTransactionZZ() && { LDKCVec_C2Tuple_usizeTransactionZZ res = self; memset(&self, 0, sizeof(LDKCVec_C2Tuple_usizeTransactionZZ)); return res; }
5024 ~CVec_C2Tuple_usizeTransactionZZ() { CVec_C2Tuple_usizeTransactionZZ_free(self); }
5025 CVec_C2Tuple_usizeTransactionZZ& operator=(CVec_C2Tuple_usizeTransactionZZ&& o) { CVec_C2Tuple_usizeTransactionZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C2Tuple_usizeTransactionZZ)); return *this; }
5026 LDKCVec_C2Tuple_usizeTransactionZZ* operator &() { return &self; }
5027 LDKCVec_C2Tuple_usizeTransactionZZ* operator ->() { return &self; }
5028 const LDKCVec_C2Tuple_usizeTransactionZZ* operator &() const { return &self; }
5029 const LDKCVec_C2Tuple_usizeTransactionZZ* operator ->() const { return &self; }
5031 class CVec_PublicKeyZ {
5033 LDKCVec_PublicKeyZ self;
5035 CVec_PublicKeyZ(const CVec_PublicKeyZ&) = delete;
5036 CVec_PublicKeyZ(CVec_PublicKeyZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_PublicKeyZ)); }
5037 CVec_PublicKeyZ(LDKCVec_PublicKeyZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_PublicKeyZ)); }
5038 operator LDKCVec_PublicKeyZ() && { LDKCVec_PublicKeyZ res = self; memset(&self, 0, sizeof(LDKCVec_PublicKeyZ)); return res; }
5039 ~CVec_PublicKeyZ() { CVec_PublicKeyZ_free(self); }
5040 CVec_PublicKeyZ& operator=(CVec_PublicKeyZ&& o) { CVec_PublicKeyZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_PublicKeyZ)); return *this; }
5041 LDKCVec_PublicKeyZ* operator &() { return &self; }
5042 LDKCVec_PublicKeyZ* operator ->() { return &self; }
5043 const LDKCVec_PublicKeyZ* operator &() const { return &self; }
5044 const LDKCVec_PublicKeyZ* operator ->() const { return &self; }
5046 class COption_TypeZ {
5048 LDKCOption_TypeZ self;
5050 COption_TypeZ(const COption_TypeZ&) = delete;
5051 COption_TypeZ(COption_TypeZ&& o) : self(o.self) { memset(&o, 0, sizeof(COption_TypeZ)); }
5052 COption_TypeZ(LDKCOption_TypeZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCOption_TypeZ)); }
5053 operator LDKCOption_TypeZ() && { LDKCOption_TypeZ res = self; memset(&self, 0, sizeof(LDKCOption_TypeZ)); return res; }
5054 ~COption_TypeZ() { COption_TypeZ_free(self); }
5055 COption_TypeZ& operator=(COption_TypeZ&& o) { COption_TypeZ_free(self); self = o.self; memset(&o, 0, sizeof(COption_TypeZ)); return *this; }
5056 LDKCOption_TypeZ* operator &() { return &self; }
5057 LDKCOption_TypeZ* operator ->() { return &self; }
5058 const LDKCOption_TypeZ* operator &() const { return &self; }
5059 const LDKCOption_TypeZ* operator ->() const { return &self; }
5061 class CResult_COption_TypeZDecodeErrorZ {
5063 LDKCResult_COption_TypeZDecodeErrorZ self;
5065 CResult_COption_TypeZDecodeErrorZ(const CResult_COption_TypeZDecodeErrorZ&) = delete;
5066 CResult_COption_TypeZDecodeErrorZ(CResult_COption_TypeZDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_COption_TypeZDecodeErrorZ)); }
5067 CResult_COption_TypeZDecodeErrorZ(LDKCResult_COption_TypeZDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_COption_TypeZDecodeErrorZ)); }
5068 operator LDKCResult_COption_TypeZDecodeErrorZ() && { LDKCResult_COption_TypeZDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_COption_TypeZDecodeErrorZ)); return res; }
5069 ~CResult_COption_TypeZDecodeErrorZ() { CResult_COption_TypeZDecodeErrorZ_free(self); }
5070 CResult_COption_TypeZDecodeErrorZ& operator=(CResult_COption_TypeZDecodeErrorZ&& o) { CResult_COption_TypeZDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_COption_TypeZDecodeErrorZ)); return *this; }
5071 LDKCResult_COption_TypeZDecodeErrorZ* operator &() { return &self; }
5072 LDKCResult_COption_TypeZDecodeErrorZ* operator ->() { return &self; }
5073 const LDKCResult_COption_TypeZDecodeErrorZ* operator &() const { return &self; }
5074 const LDKCResult_COption_TypeZDecodeErrorZ* operator ->() const { return &self; }
5076 class CResult_DirectionalChannelInfoDecodeErrorZ {
5078 LDKCResult_DirectionalChannelInfoDecodeErrorZ self;
5080 CResult_DirectionalChannelInfoDecodeErrorZ(const CResult_DirectionalChannelInfoDecodeErrorZ&) = delete;
5081 CResult_DirectionalChannelInfoDecodeErrorZ(CResult_DirectionalChannelInfoDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_DirectionalChannelInfoDecodeErrorZ)); }
5082 CResult_DirectionalChannelInfoDecodeErrorZ(LDKCResult_DirectionalChannelInfoDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_DirectionalChannelInfoDecodeErrorZ)); }
5083 operator LDKCResult_DirectionalChannelInfoDecodeErrorZ() && { LDKCResult_DirectionalChannelInfoDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_DirectionalChannelInfoDecodeErrorZ)); return res; }
5084 ~CResult_DirectionalChannelInfoDecodeErrorZ() { CResult_DirectionalChannelInfoDecodeErrorZ_free(self); }
5085 CResult_DirectionalChannelInfoDecodeErrorZ& operator=(CResult_DirectionalChannelInfoDecodeErrorZ&& o) { CResult_DirectionalChannelInfoDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_DirectionalChannelInfoDecodeErrorZ)); return *this; }
5086 LDKCResult_DirectionalChannelInfoDecodeErrorZ* operator &() { return &self; }
5087 LDKCResult_DirectionalChannelInfoDecodeErrorZ* operator ->() { return &self; }
5088 const LDKCResult_DirectionalChannelInfoDecodeErrorZ* operator &() const { return &self; }
5089 const LDKCResult_DirectionalChannelInfoDecodeErrorZ* operator ->() const { return &self; }
5091 class C2Tuple_u32TxOutZ {
5093 LDKC2Tuple_u32TxOutZ self;
5095 C2Tuple_u32TxOutZ(const C2Tuple_u32TxOutZ&) = delete;
5096 C2Tuple_u32TxOutZ(C2Tuple_u32TxOutZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_u32TxOutZ)); }
5097 C2Tuple_u32TxOutZ(LDKC2Tuple_u32TxOutZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_u32TxOutZ)); }
5098 operator LDKC2Tuple_u32TxOutZ() && { LDKC2Tuple_u32TxOutZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_u32TxOutZ)); return res; }
5099 ~C2Tuple_u32TxOutZ() { C2Tuple_u32TxOutZ_free(self); }
5100 C2Tuple_u32TxOutZ& operator=(C2Tuple_u32TxOutZ&& o) { C2Tuple_u32TxOutZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_u32TxOutZ)); return *this; }
5101 LDKC2Tuple_u32TxOutZ* operator &() { return &self; }
5102 LDKC2Tuple_u32TxOutZ* operator ->() { return &self; }
5103 const LDKC2Tuple_u32TxOutZ* operator &() const { return &self; }
5104 const LDKC2Tuple_u32TxOutZ* operator ->() const { return &self; }
5106 class CResult_UpdateFailHTLCDecodeErrorZ {
5108 LDKCResult_UpdateFailHTLCDecodeErrorZ self;
5110 CResult_UpdateFailHTLCDecodeErrorZ(const CResult_UpdateFailHTLCDecodeErrorZ&) = delete;
5111 CResult_UpdateFailHTLCDecodeErrorZ(CResult_UpdateFailHTLCDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UpdateFailHTLCDecodeErrorZ)); }
5112 CResult_UpdateFailHTLCDecodeErrorZ(LDKCResult_UpdateFailHTLCDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ)); }
5113 operator LDKCResult_UpdateFailHTLCDecodeErrorZ() && { LDKCResult_UpdateFailHTLCDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UpdateFailHTLCDecodeErrorZ)); return res; }
5114 ~CResult_UpdateFailHTLCDecodeErrorZ() { CResult_UpdateFailHTLCDecodeErrorZ_free(self); }
5115 CResult_UpdateFailHTLCDecodeErrorZ& operator=(CResult_UpdateFailHTLCDecodeErrorZ&& o) { CResult_UpdateFailHTLCDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UpdateFailHTLCDecodeErrorZ)); return *this; }
5116 LDKCResult_UpdateFailHTLCDecodeErrorZ* operator &() { return &self; }
5117 LDKCResult_UpdateFailHTLCDecodeErrorZ* operator ->() { return &self; }
5118 const LDKCResult_UpdateFailHTLCDecodeErrorZ* operator &() const { return &self; }
5119 const LDKCResult_UpdateFailHTLCDecodeErrorZ* operator ->() const { return &self; }
5121 class CResult_ChannelConfigDecodeErrorZ {
5123 LDKCResult_ChannelConfigDecodeErrorZ self;
5125 CResult_ChannelConfigDecodeErrorZ(const CResult_ChannelConfigDecodeErrorZ&) = delete;
5126 CResult_ChannelConfigDecodeErrorZ(CResult_ChannelConfigDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelConfigDecodeErrorZ)); }
5127 CResult_ChannelConfigDecodeErrorZ(LDKCResult_ChannelConfigDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelConfigDecodeErrorZ)); }
5128 operator LDKCResult_ChannelConfigDecodeErrorZ() && { LDKCResult_ChannelConfigDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelConfigDecodeErrorZ)); return res; }
5129 ~CResult_ChannelConfigDecodeErrorZ() { CResult_ChannelConfigDecodeErrorZ_free(self); }
5130 CResult_ChannelConfigDecodeErrorZ& operator=(CResult_ChannelConfigDecodeErrorZ&& o) { CResult_ChannelConfigDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelConfigDecodeErrorZ)); return *this; }
5131 LDKCResult_ChannelConfigDecodeErrorZ* operator &() { return &self; }
5132 LDKCResult_ChannelConfigDecodeErrorZ* operator ->() { return &self; }
5133 const LDKCResult_ChannelConfigDecodeErrorZ* operator &() const { return &self; }
5134 const LDKCResult_ChannelConfigDecodeErrorZ* operator ->() const { return &self; }
5136 class CVec_PrivateRouteZ {
5138 LDKCVec_PrivateRouteZ self;
5140 CVec_PrivateRouteZ(const CVec_PrivateRouteZ&) = delete;
5141 CVec_PrivateRouteZ(CVec_PrivateRouteZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_PrivateRouteZ)); }
5142 CVec_PrivateRouteZ(LDKCVec_PrivateRouteZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_PrivateRouteZ)); }
5143 operator LDKCVec_PrivateRouteZ() && { LDKCVec_PrivateRouteZ res = self; memset(&self, 0, sizeof(LDKCVec_PrivateRouteZ)); return res; }
5144 ~CVec_PrivateRouteZ() { CVec_PrivateRouteZ_free(self); }
5145 CVec_PrivateRouteZ& operator=(CVec_PrivateRouteZ&& o) { CVec_PrivateRouteZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_PrivateRouteZ)); return *this; }
5146 LDKCVec_PrivateRouteZ* operator &() { return &self; }
5147 LDKCVec_PrivateRouteZ* operator ->() { return &self; }
5148 const LDKCVec_PrivateRouteZ* operator &() const { return &self; }
5149 const LDKCVec_PrivateRouteZ* operator ->() const { return &self; }
5151 class CResult_SpendableOutputDescriptorDecodeErrorZ {
5153 LDKCResult_SpendableOutputDescriptorDecodeErrorZ self;
5155 CResult_SpendableOutputDescriptorDecodeErrorZ(const CResult_SpendableOutputDescriptorDecodeErrorZ&) = delete;
5156 CResult_SpendableOutputDescriptorDecodeErrorZ(CResult_SpendableOutputDescriptorDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_SpendableOutputDescriptorDecodeErrorZ)); }
5157 CResult_SpendableOutputDescriptorDecodeErrorZ(LDKCResult_SpendableOutputDescriptorDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ)); }
5158 operator LDKCResult_SpendableOutputDescriptorDecodeErrorZ() && { LDKCResult_SpendableOutputDescriptorDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_SpendableOutputDescriptorDecodeErrorZ)); return res; }
5159 ~CResult_SpendableOutputDescriptorDecodeErrorZ() { CResult_SpendableOutputDescriptorDecodeErrorZ_free(self); }
5160 CResult_SpendableOutputDescriptorDecodeErrorZ& operator=(CResult_SpendableOutputDescriptorDecodeErrorZ&& o) { CResult_SpendableOutputDescriptorDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_SpendableOutputDescriptorDecodeErrorZ)); return *this; }
5161 LDKCResult_SpendableOutputDescriptorDecodeErrorZ* operator &() { return &self; }
5162 LDKCResult_SpendableOutputDescriptorDecodeErrorZ* operator ->() { return &self; }
5163 const LDKCResult_SpendableOutputDescriptorDecodeErrorZ* operator &() const { return &self; }
5164 const LDKCResult_SpendableOutputDescriptorDecodeErrorZ* operator ->() const { return &self; }
5166 class CResult_RevokeAndACKDecodeErrorZ {
5168 LDKCResult_RevokeAndACKDecodeErrorZ self;
5170 CResult_RevokeAndACKDecodeErrorZ(const CResult_RevokeAndACKDecodeErrorZ&) = delete;
5171 CResult_RevokeAndACKDecodeErrorZ(CResult_RevokeAndACKDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_RevokeAndACKDecodeErrorZ)); }
5172 CResult_RevokeAndACKDecodeErrorZ(LDKCResult_RevokeAndACKDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_RevokeAndACKDecodeErrorZ)); }
5173 operator LDKCResult_RevokeAndACKDecodeErrorZ() && { LDKCResult_RevokeAndACKDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_RevokeAndACKDecodeErrorZ)); return res; }
5174 ~CResult_RevokeAndACKDecodeErrorZ() { CResult_RevokeAndACKDecodeErrorZ_free(self); }
5175 CResult_RevokeAndACKDecodeErrorZ& operator=(CResult_RevokeAndACKDecodeErrorZ&& o) { CResult_RevokeAndACKDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_RevokeAndACKDecodeErrorZ)); return *this; }
5176 LDKCResult_RevokeAndACKDecodeErrorZ* operator &() { return &self; }
5177 LDKCResult_RevokeAndACKDecodeErrorZ* operator ->() { return &self; }
5178 const LDKCResult_RevokeAndACKDecodeErrorZ* operator &() const { return &self; }
5179 const LDKCResult_RevokeAndACKDecodeErrorZ* operator ->() const { return &self; }
5181 class CResult_UnsignedChannelUpdateDecodeErrorZ {
5183 LDKCResult_UnsignedChannelUpdateDecodeErrorZ self;
5185 CResult_UnsignedChannelUpdateDecodeErrorZ(const CResult_UnsignedChannelUpdateDecodeErrorZ&) = delete;
5186 CResult_UnsignedChannelUpdateDecodeErrorZ(CResult_UnsignedChannelUpdateDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UnsignedChannelUpdateDecodeErrorZ)); }
5187 CResult_UnsignedChannelUpdateDecodeErrorZ(LDKCResult_UnsignedChannelUpdateDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ)); }
5188 operator LDKCResult_UnsignedChannelUpdateDecodeErrorZ() && { LDKCResult_UnsignedChannelUpdateDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UnsignedChannelUpdateDecodeErrorZ)); return res; }
5189 ~CResult_UnsignedChannelUpdateDecodeErrorZ() { CResult_UnsignedChannelUpdateDecodeErrorZ_free(self); }
5190 CResult_UnsignedChannelUpdateDecodeErrorZ& operator=(CResult_UnsignedChannelUpdateDecodeErrorZ&& o) { CResult_UnsignedChannelUpdateDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UnsignedChannelUpdateDecodeErrorZ)); return *this; }
5191 LDKCResult_UnsignedChannelUpdateDecodeErrorZ* operator &() { return &self; }
5192 LDKCResult_UnsignedChannelUpdateDecodeErrorZ* operator ->() { return &self; }
5193 const LDKCResult_UnsignedChannelUpdateDecodeErrorZ* operator &() const { return &self; }
5194 const LDKCResult_UnsignedChannelUpdateDecodeErrorZ* operator ->() const { return &self; }
5196 class CResult_ShutdownDecodeErrorZ {
5198 LDKCResult_ShutdownDecodeErrorZ self;
5200 CResult_ShutdownDecodeErrorZ(const CResult_ShutdownDecodeErrorZ&) = delete;
5201 CResult_ShutdownDecodeErrorZ(CResult_ShutdownDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ShutdownDecodeErrorZ)); }
5202 CResult_ShutdownDecodeErrorZ(LDKCResult_ShutdownDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ShutdownDecodeErrorZ)); }
5203 operator LDKCResult_ShutdownDecodeErrorZ() && { LDKCResult_ShutdownDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ShutdownDecodeErrorZ)); return res; }
5204 ~CResult_ShutdownDecodeErrorZ() { CResult_ShutdownDecodeErrorZ_free(self); }
5205 CResult_ShutdownDecodeErrorZ& operator=(CResult_ShutdownDecodeErrorZ&& o) { CResult_ShutdownDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ShutdownDecodeErrorZ)); return *this; }
5206 LDKCResult_ShutdownDecodeErrorZ* operator &() { return &self; }
5207 LDKCResult_ShutdownDecodeErrorZ* operator ->() { return &self; }
5208 const LDKCResult_ShutdownDecodeErrorZ* operator &() const { return &self; }
5209 const LDKCResult_ShutdownDecodeErrorZ* operator ->() const { return &self; }
5213 LDKCVec_EventZ self;
5215 CVec_EventZ(const CVec_EventZ&) = delete;
5216 CVec_EventZ(CVec_EventZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_EventZ)); }
5217 CVec_EventZ(LDKCVec_EventZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_EventZ)); }
5218 operator LDKCVec_EventZ() && { LDKCVec_EventZ res = self; memset(&self, 0, sizeof(LDKCVec_EventZ)); return res; }
5219 ~CVec_EventZ() { CVec_EventZ_free(self); }
5220 CVec_EventZ& operator=(CVec_EventZ&& o) { CVec_EventZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_EventZ)); return *this; }
5221 LDKCVec_EventZ* operator &() { return &self; }
5222 LDKCVec_EventZ* operator ->() { return &self; }
5223 const LDKCVec_EventZ* operator &() const { return &self; }
5224 const LDKCVec_EventZ* operator ->() const { return &self; }
5226 class CResult_NoneSemanticErrorZ {
5228 LDKCResult_NoneSemanticErrorZ self;
5230 CResult_NoneSemanticErrorZ(const CResult_NoneSemanticErrorZ&) = delete;
5231 CResult_NoneSemanticErrorZ(CResult_NoneSemanticErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneSemanticErrorZ)); }
5232 CResult_NoneSemanticErrorZ(LDKCResult_NoneSemanticErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneSemanticErrorZ)); }
5233 operator LDKCResult_NoneSemanticErrorZ() && { LDKCResult_NoneSemanticErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneSemanticErrorZ)); return res; }
5234 ~CResult_NoneSemanticErrorZ() { CResult_NoneSemanticErrorZ_free(self); }
5235 CResult_NoneSemanticErrorZ& operator=(CResult_NoneSemanticErrorZ&& o) { CResult_NoneSemanticErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneSemanticErrorZ)); return *this; }
5236 LDKCResult_NoneSemanticErrorZ* operator &() { return &self; }
5237 LDKCResult_NoneSemanticErrorZ* operator ->() { return &self; }
5238 const LDKCResult_NoneSemanticErrorZ* operator &() const { return &self; }
5239 const LDKCResult_NoneSemanticErrorZ* operator ->() const { return &self; }
5241 class CVec_MonitorEventZ {
5243 LDKCVec_MonitorEventZ self;
5245 CVec_MonitorEventZ(const CVec_MonitorEventZ&) = delete;
5246 CVec_MonitorEventZ(CVec_MonitorEventZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_MonitorEventZ)); }
5247 CVec_MonitorEventZ(LDKCVec_MonitorEventZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_MonitorEventZ)); }
5248 operator LDKCVec_MonitorEventZ() && { LDKCVec_MonitorEventZ res = self; memset(&self, 0, sizeof(LDKCVec_MonitorEventZ)); return res; }
5249 ~CVec_MonitorEventZ() { CVec_MonitorEventZ_free(self); }
5250 CVec_MonitorEventZ& operator=(CVec_MonitorEventZ&& o) { CVec_MonitorEventZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_MonitorEventZ)); return *this; }
5251 LDKCVec_MonitorEventZ* operator &() { return &self; }
5252 LDKCVec_MonitorEventZ* operator ->() { return &self; }
5253 const LDKCVec_MonitorEventZ* operator &() const { return &self; }
5254 const LDKCVec_MonitorEventZ* operator ->() const { return &self; }
5256 class CVec_C2Tuple_u32ScriptZZ {
5258 LDKCVec_C2Tuple_u32ScriptZZ self;
5260 CVec_C2Tuple_u32ScriptZZ(const CVec_C2Tuple_u32ScriptZZ&) = delete;
5261 CVec_C2Tuple_u32ScriptZZ(CVec_C2Tuple_u32ScriptZZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_C2Tuple_u32ScriptZZ)); }
5262 CVec_C2Tuple_u32ScriptZZ(LDKCVec_C2Tuple_u32ScriptZZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_C2Tuple_u32ScriptZZ)); }
5263 operator LDKCVec_C2Tuple_u32ScriptZZ() && { LDKCVec_C2Tuple_u32ScriptZZ res = self; memset(&self, 0, sizeof(LDKCVec_C2Tuple_u32ScriptZZ)); return res; }
5264 ~CVec_C2Tuple_u32ScriptZZ() { CVec_C2Tuple_u32ScriptZZ_free(self); }
5265 CVec_C2Tuple_u32ScriptZZ& operator=(CVec_C2Tuple_u32ScriptZZ&& o) { CVec_C2Tuple_u32ScriptZZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_C2Tuple_u32ScriptZZ)); return *this; }
5266 LDKCVec_C2Tuple_u32ScriptZZ* operator &() { return &self; }
5267 LDKCVec_C2Tuple_u32ScriptZZ* operator ->() { return &self; }
5268 const LDKCVec_C2Tuple_u32ScriptZZ* operator &() const { return &self; }
5269 const LDKCVec_C2Tuple_u32ScriptZZ* operator ->() const { return &self; }
5271 class CResult_NoneChannelMonitorUpdateErrZ {
5273 LDKCResult_NoneChannelMonitorUpdateErrZ self;
5275 CResult_NoneChannelMonitorUpdateErrZ(const CResult_NoneChannelMonitorUpdateErrZ&) = delete;
5276 CResult_NoneChannelMonitorUpdateErrZ(CResult_NoneChannelMonitorUpdateErrZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneChannelMonitorUpdateErrZ)); }
5277 CResult_NoneChannelMonitorUpdateErrZ(LDKCResult_NoneChannelMonitorUpdateErrZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ)); }
5278 operator LDKCResult_NoneChannelMonitorUpdateErrZ() && { LDKCResult_NoneChannelMonitorUpdateErrZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneChannelMonitorUpdateErrZ)); return res; }
5279 ~CResult_NoneChannelMonitorUpdateErrZ() { CResult_NoneChannelMonitorUpdateErrZ_free(self); }
5280 CResult_NoneChannelMonitorUpdateErrZ& operator=(CResult_NoneChannelMonitorUpdateErrZ&& o) { CResult_NoneChannelMonitorUpdateErrZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneChannelMonitorUpdateErrZ)); return *this; }
5281 LDKCResult_NoneChannelMonitorUpdateErrZ* operator &() { return &self; }
5282 LDKCResult_NoneChannelMonitorUpdateErrZ* operator ->() { return &self; }
5283 const LDKCResult_NoneChannelMonitorUpdateErrZ* operator &() const { return &self; }
5284 const LDKCResult_NoneChannelMonitorUpdateErrZ* operator ->() const { return &self; }
5286 class CResult_PaymentHashPaymentSendFailureZ {
5288 LDKCResult_PaymentHashPaymentSendFailureZ self;
5290 CResult_PaymentHashPaymentSendFailureZ(const CResult_PaymentHashPaymentSendFailureZ&) = delete;
5291 CResult_PaymentHashPaymentSendFailureZ(CResult_PaymentHashPaymentSendFailureZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PaymentHashPaymentSendFailureZ)); }
5292 CResult_PaymentHashPaymentSendFailureZ(LDKCResult_PaymentHashPaymentSendFailureZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PaymentHashPaymentSendFailureZ)); }
5293 operator LDKCResult_PaymentHashPaymentSendFailureZ() && { LDKCResult_PaymentHashPaymentSendFailureZ res = self; memset(&self, 0, sizeof(LDKCResult_PaymentHashPaymentSendFailureZ)); return res; }
5294 ~CResult_PaymentHashPaymentSendFailureZ() { CResult_PaymentHashPaymentSendFailureZ_free(self); }
5295 CResult_PaymentHashPaymentSendFailureZ& operator=(CResult_PaymentHashPaymentSendFailureZ&& o) { CResult_PaymentHashPaymentSendFailureZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PaymentHashPaymentSendFailureZ)); return *this; }
5296 LDKCResult_PaymentHashPaymentSendFailureZ* operator &() { return &self; }
5297 LDKCResult_PaymentHashPaymentSendFailureZ* operator ->() { return &self; }
5298 const LDKCResult_PaymentHashPaymentSendFailureZ* operator &() const { return &self; }
5299 const LDKCResult_PaymentHashPaymentSendFailureZ* operator ->() const { return &self; }
5301 class CResult_SiPrefixNoneZ {
5303 LDKCResult_SiPrefixNoneZ self;
5305 CResult_SiPrefixNoneZ(const CResult_SiPrefixNoneZ&) = delete;
5306 CResult_SiPrefixNoneZ(CResult_SiPrefixNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_SiPrefixNoneZ)); }
5307 CResult_SiPrefixNoneZ(LDKCResult_SiPrefixNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_SiPrefixNoneZ)); }
5308 operator LDKCResult_SiPrefixNoneZ() && { LDKCResult_SiPrefixNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_SiPrefixNoneZ)); return res; }
5309 ~CResult_SiPrefixNoneZ() { CResult_SiPrefixNoneZ_free(self); }
5310 CResult_SiPrefixNoneZ& operator=(CResult_SiPrefixNoneZ&& o) { CResult_SiPrefixNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_SiPrefixNoneZ)); return *this; }
5311 LDKCResult_SiPrefixNoneZ* operator &() { return &self; }
5312 LDKCResult_SiPrefixNoneZ* operator ->() { return &self; }
5313 const LDKCResult_SiPrefixNoneZ* operator &() const { return &self; }
5314 const LDKCResult_SiPrefixNoneZ* operator ->() const { return &self; }
5316 class CResult_PublicKeyErrorZ {
5318 LDKCResult_PublicKeyErrorZ self;
5320 CResult_PublicKeyErrorZ(const CResult_PublicKeyErrorZ&) = delete;
5321 CResult_PublicKeyErrorZ(CResult_PublicKeyErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PublicKeyErrorZ)); }
5322 CResult_PublicKeyErrorZ(LDKCResult_PublicKeyErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PublicKeyErrorZ)); }
5323 operator LDKCResult_PublicKeyErrorZ() && { LDKCResult_PublicKeyErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PublicKeyErrorZ)); return res; }
5324 ~CResult_PublicKeyErrorZ() { CResult_PublicKeyErrorZ_free(self); }
5325 CResult_PublicKeyErrorZ& operator=(CResult_PublicKeyErrorZ&& o) { CResult_PublicKeyErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PublicKeyErrorZ)); return *this; }
5326 LDKCResult_PublicKeyErrorZ* operator &() { return &self; }
5327 LDKCResult_PublicKeyErrorZ* operator ->() { return &self; }
5328 const LDKCResult_PublicKeyErrorZ* operator &() const { return &self; }
5329 const LDKCResult_PublicKeyErrorZ* operator ->() const { return &self; }
5331 class C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ {
5333 LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ self;
5335 C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ(const C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ&) = delete;
5336 C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ(C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ&& o) : self(o.self) { memset(&o, 0, sizeof(C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ)); }
5337 C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ)); }
5338 operator LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ() && { LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ res = self; memset(&self, 0, sizeof(LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ)); return res; }
5339 ~C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ() { C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(self); }
5340 C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ& operator=(C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ&& o) { C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(self); self = o.self; memset(&o, 0, sizeof(C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ)); return *this; }
5341 LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* operator &() { return &self; }
5342 LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* operator ->() { return &self; }
5343 const LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* operator &() const { return &self; }
5344 const LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ* operator ->() const { return &self; }
5346 class CResult_NoneNoneZ {
5348 LDKCResult_NoneNoneZ self;
5350 CResult_NoneNoneZ(const CResult_NoneNoneZ&) = delete;
5351 CResult_NoneNoneZ(CResult_NoneNoneZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NoneNoneZ)); }
5352 CResult_NoneNoneZ(LDKCResult_NoneNoneZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NoneNoneZ)); }
5353 operator LDKCResult_NoneNoneZ() && { LDKCResult_NoneNoneZ res = self; memset(&self, 0, sizeof(LDKCResult_NoneNoneZ)); return res; }
5354 ~CResult_NoneNoneZ() { CResult_NoneNoneZ_free(self); }
5355 CResult_NoneNoneZ& operator=(CResult_NoneNoneZ&& o) { CResult_NoneNoneZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NoneNoneZ)); return *this; }
5356 LDKCResult_NoneNoneZ* operator &() { return &self; }
5357 LDKCResult_NoneNoneZ* operator ->() { return &self; }
5358 const LDKCResult_NoneNoneZ* operator &() const { return &self; }
5359 const LDKCResult_NoneNoneZ* operator ->() const { return &self; }
5361 class CResult_PrivateRouteCreationErrorZ {
5363 LDKCResult_PrivateRouteCreationErrorZ self;
5365 CResult_PrivateRouteCreationErrorZ(const CResult_PrivateRouteCreationErrorZ&) = delete;
5366 CResult_PrivateRouteCreationErrorZ(CResult_PrivateRouteCreationErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PrivateRouteCreationErrorZ)); }
5367 CResult_PrivateRouteCreationErrorZ(LDKCResult_PrivateRouteCreationErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PrivateRouteCreationErrorZ)); }
5368 operator LDKCResult_PrivateRouteCreationErrorZ() && { LDKCResult_PrivateRouteCreationErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PrivateRouteCreationErrorZ)); return res; }
5369 ~CResult_PrivateRouteCreationErrorZ() { CResult_PrivateRouteCreationErrorZ_free(self); }
5370 CResult_PrivateRouteCreationErrorZ& operator=(CResult_PrivateRouteCreationErrorZ&& o) { CResult_PrivateRouteCreationErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PrivateRouteCreationErrorZ)); return *this; }
5371 LDKCResult_PrivateRouteCreationErrorZ* operator &() { return &self; }
5372 LDKCResult_PrivateRouteCreationErrorZ* operator ->() { return &self; }
5373 const LDKCResult_PrivateRouteCreationErrorZ* operator &() const { return &self; }
5374 const LDKCResult_PrivateRouteCreationErrorZ* operator ->() const { return &self; }
5376 class CResult_boolPeerHandleErrorZ {
5378 LDKCResult_boolPeerHandleErrorZ self;
5380 CResult_boolPeerHandleErrorZ(const CResult_boolPeerHandleErrorZ&) = delete;
5381 CResult_boolPeerHandleErrorZ(CResult_boolPeerHandleErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_boolPeerHandleErrorZ)); }
5382 CResult_boolPeerHandleErrorZ(LDKCResult_boolPeerHandleErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_boolPeerHandleErrorZ)); }
5383 operator LDKCResult_boolPeerHandleErrorZ() && { LDKCResult_boolPeerHandleErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_boolPeerHandleErrorZ)); return res; }
5384 ~CResult_boolPeerHandleErrorZ() { CResult_boolPeerHandleErrorZ_free(self); }
5385 CResult_boolPeerHandleErrorZ& operator=(CResult_boolPeerHandleErrorZ&& o) { CResult_boolPeerHandleErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_boolPeerHandleErrorZ)); return *this; }
5386 LDKCResult_boolPeerHandleErrorZ* operator &() { return &self; }
5387 LDKCResult_boolPeerHandleErrorZ* operator ->() { return &self; }
5388 const LDKCResult_boolPeerHandleErrorZ* operator &() const { return &self; }
5389 const LDKCResult_boolPeerHandleErrorZ* operator ->() const { return &self; }
5391 class CVec_APIErrorZ {
5393 LDKCVec_APIErrorZ self;
5395 CVec_APIErrorZ(const CVec_APIErrorZ&) = delete;
5396 CVec_APIErrorZ(CVec_APIErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_APIErrorZ)); }
5397 CVec_APIErrorZ(LDKCVec_APIErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_APIErrorZ)); }
5398 operator LDKCVec_APIErrorZ() && { LDKCVec_APIErrorZ res = self; memset(&self, 0, sizeof(LDKCVec_APIErrorZ)); return res; }
5399 ~CVec_APIErrorZ() { CVec_APIErrorZ_free(self); }
5400 CVec_APIErrorZ& operator=(CVec_APIErrorZ&& o) { CVec_APIErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_APIErrorZ)); return *this; }
5401 LDKCVec_APIErrorZ* operator &() { return &self; }
5402 LDKCVec_APIErrorZ* operator ->() { return &self; }
5403 const LDKCVec_APIErrorZ* operator &() const { return &self; }
5404 const LDKCVec_APIErrorZ* operator ->() const { return &self; }
5406 class CResult_ChannelUpdateDecodeErrorZ {
5408 LDKCResult_ChannelUpdateDecodeErrorZ self;
5410 CResult_ChannelUpdateDecodeErrorZ(const CResult_ChannelUpdateDecodeErrorZ&) = delete;
5411 CResult_ChannelUpdateDecodeErrorZ(CResult_ChannelUpdateDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ChannelUpdateDecodeErrorZ)); }
5412 CResult_ChannelUpdateDecodeErrorZ(LDKCResult_ChannelUpdateDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ChannelUpdateDecodeErrorZ)); }
5413 operator LDKCResult_ChannelUpdateDecodeErrorZ() && { LDKCResult_ChannelUpdateDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ChannelUpdateDecodeErrorZ)); return res; }
5414 ~CResult_ChannelUpdateDecodeErrorZ() { CResult_ChannelUpdateDecodeErrorZ_free(self); }
5415 CResult_ChannelUpdateDecodeErrorZ& operator=(CResult_ChannelUpdateDecodeErrorZ&& o) { CResult_ChannelUpdateDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ChannelUpdateDecodeErrorZ)); return *this; }
5416 LDKCResult_ChannelUpdateDecodeErrorZ* operator &() { return &self; }
5417 LDKCResult_ChannelUpdateDecodeErrorZ* operator ->() { return &self; }
5418 const LDKCResult_ChannelUpdateDecodeErrorZ* operator &() const { return &self; }
5419 const LDKCResult_ChannelUpdateDecodeErrorZ* operator ->() const { return &self; }
5421 class CVec_UpdateFulfillHTLCZ {
5423 LDKCVec_UpdateFulfillHTLCZ self;
5425 CVec_UpdateFulfillHTLCZ(const CVec_UpdateFulfillHTLCZ&) = delete;
5426 CVec_UpdateFulfillHTLCZ(CVec_UpdateFulfillHTLCZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_UpdateFulfillHTLCZ)); }
5427 CVec_UpdateFulfillHTLCZ(LDKCVec_UpdateFulfillHTLCZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_UpdateFulfillHTLCZ)); }
5428 operator LDKCVec_UpdateFulfillHTLCZ() && { LDKCVec_UpdateFulfillHTLCZ res = self; memset(&self, 0, sizeof(LDKCVec_UpdateFulfillHTLCZ)); return res; }
5429 ~CVec_UpdateFulfillHTLCZ() { CVec_UpdateFulfillHTLCZ_free(self); }
5430 CVec_UpdateFulfillHTLCZ& operator=(CVec_UpdateFulfillHTLCZ&& o) { CVec_UpdateFulfillHTLCZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_UpdateFulfillHTLCZ)); return *this; }
5431 LDKCVec_UpdateFulfillHTLCZ* operator &() { return &self; }
5432 LDKCVec_UpdateFulfillHTLCZ* operator ->() { return &self; }
5433 const LDKCVec_UpdateFulfillHTLCZ* operator &() const { return &self; }
5434 const LDKCVec_UpdateFulfillHTLCZ* operator ->() const { return &self; }
5436 class CResult_AnnouncementSignaturesDecodeErrorZ {
5438 LDKCResult_AnnouncementSignaturesDecodeErrorZ self;
5440 CResult_AnnouncementSignaturesDecodeErrorZ(const CResult_AnnouncementSignaturesDecodeErrorZ&) = delete;
5441 CResult_AnnouncementSignaturesDecodeErrorZ(CResult_AnnouncementSignaturesDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_AnnouncementSignaturesDecodeErrorZ)); }
5442 CResult_AnnouncementSignaturesDecodeErrorZ(LDKCResult_AnnouncementSignaturesDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ)); }
5443 operator LDKCResult_AnnouncementSignaturesDecodeErrorZ() && { LDKCResult_AnnouncementSignaturesDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_AnnouncementSignaturesDecodeErrorZ)); return res; }
5444 ~CResult_AnnouncementSignaturesDecodeErrorZ() { CResult_AnnouncementSignaturesDecodeErrorZ_free(self); }
5445 CResult_AnnouncementSignaturesDecodeErrorZ& operator=(CResult_AnnouncementSignaturesDecodeErrorZ&& o) { CResult_AnnouncementSignaturesDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_AnnouncementSignaturesDecodeErrorZ)); return *this; }
5446 LDKCResult_AnnouncementSignaturesDecodeErrorZ* operator &() { return &self; }
5447 LDKCResult_AnnouncementSignaturesDecodeErrorZ* operator ->() { return &self; }
5448 const LDKCResult_AnnouncementSignaturesDecodeErrorZ* operator &() const { return &self; }
5449 const LDKCResult_AnnouncementSignaturesDecodeErrorZ* operator ->() const { return &self; }
5451 class CResult_UpdateFulfillHTLCDecodeErrorZ {
5453 LDKCResult_UpdateFulfillHTLCDecodeErrorZ self;
5455 CResult_UpdateFulfillHTLCDecodeErrorZ(const CResult_UpdateFulfillHTLCDecodeErrorZ&) = delete;
5456 CResult_UpdateFulfillHTLCDecodeErrorZ(CResult_UpdateFulfillHTLCDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_UpdateFulfillHTLCDecodeErrorZ)); }
5457 CResult_UpdateFulfillHTLCDecodeErrorZ(LDKCResult_UpdateFulfillHTLCDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ)); }
5458 operator LDKCResult_UpdateFulfillHTLCDecodeErrorZ() && { LDKCResult_UpdateFulfillHTLCDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_UpdateFulfillHTLCDecodeErrorZ)); return res; }
5459 ~CResult_UpdateFulfillHTLCDecodeErrorZ() { CResult_UpdateFulfillHTLCDecodeErrorZ_free(self); }
5460 CResult_UpdateFulfillHTLCDecodeErrorZ& operator=(CResult_UpdateFulfillHTLCDecodeErrorZ&& o) { CResult_UpdateFulfillHTLCDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_UpdateFulfillHTLCDecodeErrorZ)); return *this; }
5461 LDKCResult_UpdateFulfillHTLCDecodeErrorZ* operator &() { return &self; }
5462 LDKCResult_UpdateFulfillHTLCDecodeErrorZ* operator ->() { return &self; }
5463 const LDKCResult_UpdateFulfillHTLCDecodeErrorZ* operator &() const { return &self; }
5464 const LDKCResult_UpdateFulfillHTLCDecodeErrorZ* operator ->() const { return &self; }
5466 class CResult_NodeFeaturesDecodeErrorZ {
5468 LDKCResult_NodeFeaturesDecodeErrorZ self;
5470 CResult_NodeFeaturesDecodeErrorZ(const CResult_NodeFeaturesDecodeErrorZ&) = delete;
5471 CResult_NodeFeaturesDecodeErrorZ(CResult_NodeFeaturesDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_NodeFeaturesDecodeErrorZ)); }
5472 CResult_NodeFeaturesDecodeErrorZ(LDKCResult_NodeFeaturesDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_NodeFeaturesDecodeErrorZ)); }
5473 operator LDKCResult_NodeFeaturesDecodeErrorZ() && { LDKCResult_NodeFeaturesDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_NodeFeaturesDecodeErrorZ)); return res; }
5474 ~CResult_NodeFeaturesDecodeErrorZ() { CResult_NodeFeaturesDecodeErrorZ_free(self); }
5475 CResult_NodeFeaturesDecodeErrorZ& operator=(CResult_NodeFeaturesDecodeErrorZ&& o) { CResult_NodeFeaturesDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_NodeFeaturesDecodeErrorZ)); return *this; }
5476 LDKCResult_NodeFeaturesDecodeErrorZ* operator &() { return &self; }
5477 LDKCResult_NodeFeaturesDecodeErrorZ* operator ->() { return &self; }
5478 const LDKCResult_NodeFeaturesDecodeErrorZ* operator &() const { return &self; }
5479 const LDKCResult_NodeFeaturesDecodeErrorZ* operator ->() const { return &self; }
5481 class CResult_InMemorySignerDecodeErrorZ {
5483 LDKCResult_InMemorySignerDecodeErrorZ self;
5485 CResult_InMemorySignerDecodeErrorZ(const CResult_InMemorySignerDecodeErrorZ&) = delete;
5486 CResult_InMemorySignerDecodeErrorZ(CResult_InMemorySignerDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_InMemorySignerDecodeErrorZ)); }
5487 CResult_InMemorySignerDecodeErrorZ(LDKCResult_InMemorySignerDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_InMemorySignerDecodeErrorZ)); }
5488 operator LDKCResult_InMemorySignerDecodeErrorZ() && { LDKCResult_InMemorySignerDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_InMemorySignerDecodeErrorZ)); return res; }
5489 ~CResult_InMemorySignerDecodeErrorZ() { CResult_InMemorySignerDecodeErrorZ_free(self); }
5490 CResult_InMemorySignerDecodeErrorZ& operator=(CResult_InMemorySignerDecodeErrorZ&& o) { CResult_InMemorySignerDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_InMemorySignerDecodeErrorZ)); return *this; }
5491 LDKCResult_InMemorySignerDecodeErrorZ* operator &() { return &self; }
5492 LDKCResult_InMemorySignerDecodeErrorZ* operator ->() { return &self; }
5493 const LDKCResult_InMemorySignerDecodeErrorZ* operator &() const { return &self; }
5494 const LDKCResult_InMemorySignerDecodeErrorZ* operator ->() const { return &self; }
5496 class CResult_PaymentSecretAPIErrorZ {
5498 LDKCResult_PaymentSecretAPIErrorZ self;
5500 CResult_PaymentSecretAPIErrorZ(const CResult_PaymentSecretAPIErrorZ&) = delete;
5501 CResult_PaymentSecretAPIErrorZ(CResult_PaymentSecretAPIErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_PaymentSecretAPIErrorZ)); }
5502 CResult_PaymentSecretAPIErrorZ(LDKCResult_PaymentSecretAPIErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_PaymentSecretAPIErrorZ)); }
5503 operator LDKCResult_PaymentSecretAPIErrorZ() && { LDKCResult_PaymentSecretAPIErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_PaymentSecretAPIErrorZ)); return res; }
5504 ~CResult_PaymentSecretAPIErrorZ() { CResult_PaymentSecretAPIErrorZ_free(self); }
5505 CResult_PaymentSecretAPIErrorZ& operator=(CResult_PaymentSecretAPIErrorZ&& o) { CResult_PaymentSecretAPIErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_PaymentSecretAPIErrorZ)); return *this; }
5506 LDKCResult_PaymentSecretAPIErrorZ* operator &() { return &self; }
5507 LDKCResult_PaymentSecretAPIErrorZ* operator ->() { return &self; }
5508 const LDKCResult_PaymentSecretAPIErrorZ* operator &() const { return &self; }
5509 const LDKCResult_PaymentSecretAPIErrorZ* operator ->() const { return &self; }
5511 class C2Tuple_u32ScriptZ {
5513 LDKC2Tuple_u32ScriptZ self;
5515 C2Tuple_u32ScriptZ(const C2Tuple_u32ScriptZ&) = delete;
5516 C2Tuple_u32ScriptZ(C2Tuple_u32ScriptZ&& o) : self(o.self) { memset(&o, 0, sizeof(C2Tuple_u32ScriptZ)); }
5517 C2Tuple_u32ScriptZ(LDKC2Tuple_u32ScriptZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKC2Tuple_u32ScriptZ)); }
5518 operator LDKC2Tuple_u32ScriptZ() && { LDKC2Tuple_u32ScriptZ res = self; memset(&self, 0, sizeof(LDKC2Tuple_u32ScriptZ)); return res; }
5519 ~C2Tuple_u32ScriptZ() { C2Tuple_u32ScriptZ_free(self); }
5520 C2Tuple_u32ScriptZ& operator=(C2Tuple_u32ScriptZ&& o) { C2Tuple_u32ScriptZ_free(self); self = o.self; memset(&o, 0, sizeof(C2Tuple_u32ScriptZ)); return *this; }
5521 LDKC2Tuple_u32ScriptZ* operator &() { return &self; }
5522 LDKC2Tuple_u32ScriptZ* operator ->() { return &self; }
5523 const LDKC2Tuple_u32ScriptZ* operator &() const { return &self; }
5524 const LDKC2Tuple_u32ScriptZ* operator ->() const { return &self; }
5526 class CResult_CResult_NetAddressu8ZDecodeErrorZ {
5528 LDKCResult_CResult_NetAddressu8ZDecodeErrorZ self;
5530 CResult_CResult_NetAddressu8ZDecodeErrorZ(const CResult_CResult_NetAddressu8ZDecodeErrorZ&) = delete;
5531 CResult_CResult_NetAddressu8ZDecodeErrorZ(CResult_CResult_NetAddressu8ZDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_CResult_NetAddressu8ZDecodeErrorZ)); }
5532 CResult_CResult_NetAddressu8ZDecodeErrorZ(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ)); }
5533 operator LDKCResult_CResult_NetAddressu8ZDecodeErrorZ() && { LDKCResult_CResult_NetAddressu8ZDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_CResult_NetAddressu8ZDecodeErrorZ)); return res; }
5534 ~CResult_CResult_NetAddressu8ZDecodeErrorZ() { CResult_CResult_NetAddressu8ZDecodeErrorZ_free(self); }
5535 CResult_CResult_NetAddressu8ZDecodeErrorZ& operator=(CResult_CResult_NetAddressu8ZDecodeErrorZ&& o) { CResult_CResult_NetAddressu8ZDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_CResult_NetAddressu8ZDecodeErrorZ)); return *this; }
5536 LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator &() { return &self; }
5537 LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator ->() { return &self; }
5538 const LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator &() const { return &self; }
5539 const LDKCResult_CResult_NetAddressu8ZDecodeErrorZ* operator ->() const { return &self; }
5541 class CResult_ReplyShortChannelIdsEndDecodeErrorZ {
5543 LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ self;
5545 CResult_ReplyShortChannelIdsEndDecodeErrorZ(const CResult_ReplyShortChannelIdsEndDecodeErrorZ&) = delete;
5546 CResult_ReplyShortChannelIdsEndDecodeErrorZ(CResult_ReplyShortChannelIdsEndDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_ReplyShortChannelIdsEndDecodeErrorZ)); }
5547 CResult_ReplyShortChannelIdsEndDecodeErrorZ(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ)); }
5548 operator LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ() && { LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ)); return res; }
5549 ~CResult_ReplyShortChannelIdsEndDecodeErrorZ() { CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(self); }
5550 CResult_ReplyShortChannelIdsEndDecodeErrorZ& operator=(CResult_ReplyShortChannelIdsEndDecodeErrorZ&& o) { CResult_ReplyShortChannelIdsEndDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_ReplyShortChannelIdsEndDecodeErrorZ)); return *this; }
5551 LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* operator &() { return &self; }
5552 LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* operator ->() { return &self; }
5553 const LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* operator &() const { return &self; }
5554 const LDKCResult_ReplyShortChannelIdsEndDecodeErrorZ* operator ->() const { return &self; }
5556 class CResult_RouteDecodeErrorZ {
5558 LDKCResult_RouteDecodeErrorZ self;
5560 CResult_RouteDecodeErrorZ(const CResult_RouteDecodeErrorZ&) = delete;
5561 CResult_RouteDecodeErrorZ(CResult_RouteDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_RouteDecodeErrorZ)); }
5562 CResult_RouteDecodeErrorZ(LDKCResult_RouteDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_RouteDecodeErrorZ)); }
5563 operator LDKCResult_RouteDecodeErrorZ() && { LDKCResult_RouteDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_RouteDecodeErrorZ)); return res; }
5564 ~CResult_RouteDecodeErrorZ() { CResult_RouteDecodeErrorZ_free(self); }
5565 CResult_RouteDecodeErrorZ& operator=(CResult_RouteDecodeErrorZ&& o) { CResult_RouteDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_RouteDecodeErrorZ)); return *this; }
5566 LDKCResult_RouteDecodeErrorZ* operator &() { return &self; }
5567 LDKCResult_RouteDecodeErrorZ* operator ->() { return &self; }
5568 const LDKCResult_RouteDecodeErrorZ* operator &() const { return &self; }
5569 const LDKCResult_RouteDecodeErrorZ* operator ->() const { return &self; }
5571 class CResult_BuiltCommitmentTransactionDecodeErrorZ {
5573 LDKCResult_BuiltCommitmentTransactionDecodeErrorZ self;
5575 CResult_BuiltCommitmentTransactionDecodeErrorZ(const CResult_BuiltCommitmentTransactionDecodeErrorZ&) = delete;
5576 CResult_BuiltCommitmentTransactionDecodeErrorZ(CResult_BuiltCommitmentTransactionDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_BuiltCommitmentTransactionDecodeErrorZ)); }
5577 CResult_BuiltCommitmentTransactionDecodeErrorZ(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ)); }
5578 operator LDKCResult_BuiltCommitmentTransactionDecodeErrorZ() && { LDKCResult_BuiltCommitmentTransactionDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_BuiltCommitmentTransactionDecodeErrorZ)); return res; }
5579 ~CResult_BuiltCommitmentTransactionDecodeErrorZ() { CResult_BuiltCommitmentTransactionDecodeErrorZ_free(self); }
5580 CResult_BuiltCommitmentTransactionDecodeErrorZ& operator=(CResult_BuiltCommitmentTransactionDecodeErrorZ&& o) { CResult_BuiltCommitmentTransactionDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_BuiltCommitmentTransactionDecodeErrorZ)); return *this; }
5581 LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* operator &() { return &self; }
5582 LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* operator ->() { return &self; }
5583 const LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* operator &() const { return &self; }
5584 const LDKCResult_BuiltCommitmentTransactionDecodeErrorZ* operator ->() const { return &self; }
5586 class CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ {
5588 LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ self;
5590 CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ(const CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ&) = delete;
5591 CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ(CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ)); }
5592 CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ)); }
5593 operator LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ() && { LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ)); return res; }
5594 ~CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ() { CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(self); }
5595 CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ& operator=(CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ&& o) { CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ)); return *this; }
5596 LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* operator &() { return &self; }
5597 LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* operator ->() { return &self; }
5598 const LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* operator &() const { return &self; }
5599 const LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ* operator ->() const { return &self; }
5603 LDKCVec_TxOutZ self;
5605 CVec_TxOutZ(const CVec_TxOutZ&) = delete;
5606 CVec_TxOutZ(CVec_TxOutZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_TxOutZ)); }
5607 CVec_TxOutZ(LDKCVec_TxOutZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_TxOutZ)); }
5608 operator LDKCVec_TxOutZ() && { LDKCVec_TxOutZ res = self; memset(&self, 0, sizeof(LDKCVec_TxOutZ)); return res; }
5609 ~CVec_TxOutZ() { CVec_TxOutZ_free(self); }
5610 CVec_TxOutZ& operator=(CVec_TxOutZ&& o) { CVec_TxOutZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_TxOutZ)); return *this; }
5611 LDKCVec_TxOutZ* operator &() { return &self; }
5612 LDKCVec_TxOutZ* operator ->() { return &self; }
5613 const LDKCVec_TxOutZ* operator &() const { return &self; }
5614 const LDKCVec_TxOutZ* operator ->() const { return &self; }
5616 class CVec_UpdateFailHTLCZ {
5618 LDKCVec_UpdateFailHTLCZ self;
5620 CVec_UpdateFailHTLCZ(const CVec_UpdateFailHTLCZ&) = delete;
5621 CVec_UpdateFailHTLCZ(CVec_UpdateFailHTLCZ&& o) : self(o.self) { memset(&o, 0, sizeof(CVec_UpdateFailHTLCZ)); }
5622 CVec_UpdateFailHTLCZ(LDKCVec_UpdateFailHTLCZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCVec_UpdateFailHTLCZ)); }
5623 operator LDKCVec_UpdateFailHTLCZ() && { LDKCVec_UpdateFailHTLCZ res = self; memset(&self, 0, sizeof(LDKCVec_UpdateFailHTLCZ)); return res; }
5624 ~CVec_UpdateFailHTLCZ() { CVec_UpdateFailHTLCZ_free(self); }
5625 CVec_UpdateFailHTLCZ& operator=(CVec_UpdateFailHTLCZ&& o) { CVec_UpdateFailHTLCZ_free(self); self = o.self; memset(&o, 0, sizeof(CVec_UpdateFailHTLCZ)); return *this; }
5626 LDKCVec_UpdateFailHTLCZ* operator &() { return &self; }
5627 LDKCVec_UpdateFailHTLCZ* operator ->() { return &self; }
5628 const LDKCVec_UpdateFailHTLCZ* operator &() const { return &self; }
5629 const LDKCVec_UpdateFailHTLCZ* operator ->() const { return &self; }
5631 class CResult_FundingLockedDecodeErrorZ {
5633 LDKCResult_FundingLockedDecodeErrorZ self;
5635 CResult_FundingLockedDecodeErrorZ(const CResult_FundingLockedDecodeErrorZ&) = delete;
5636 CResult_FundingLockedDecodeErrorZ(CResult_FundingLockedDecodeErrorZ&& o) : self(o.self) { memset(&o, 0, sizeof(CResult_FundingLockedDecodeErrorZ)); }
5637 CResult_FundingLockedDecodeErrorZ(LDKCResult_FundingLockedDecodeErrorZ&& m_self) : self(m_self) { memset(&m_self, 0, sizeof(LDKCResult_FundingLockedDecodeErrorZ)); }
5638 operator LDKCResult_FundingLockedDecodeErrorZ() && { LDKCResult_FundingLockedDecodeErrorZ res = self; memset(&self, 0, sizeof(LDKCResult_FundingLockedDecodeErrorZ)); return res; }
5639 ~CResult_FundingLockedDecodeErrorZ() { CResult_FundingLockedDecodeErrorZ_free(self); }
5640 CResult_FundingLockedDecodeErrorZ& operator=(CResult_FundingLockedDecodeErrorZ&& o) { CResult_FundingLockedDecodeErrorZ_free(self); self = o.self; memset(&o, 0, sizeof(CResult_FundingLockedDecodeErrorZ)); return *this; }
5641 LDKCResult_FundingLockedDecodeErrorZ* operator &() { return &self; }
5642 LDKCResult_FundingLockedDecodeErrorZ* operator ->() { return &self; }
5643 const LDKCResult_FundingLockedDecodeErrorZ* operator &() const { return &self; }
5644 const LDKCResult_FundingLockedDecodeErrorZ* operator ->() const { return &self; }
5647 inline LDK::CResult_NoneErrorZ ChannelManagerPersister::persist_manager(const struct LDKChannelManager *NONNULL_PTR channel_manager) {
5648 LDK::CResult_NoneErrorZ ret = (self.persist_manager)(self.this_arg, channel_manager);
5651 inline void BroadcasterInterface::broadcast_transaction(struct LDKTransaction tx) {
5652 (self.broadcast_transaction)(self.this_arg, tx);
5654 inline uint32_t FeeEstimator::get_est_sat_per_1000_weight(enum LDKConfirmationTarget confirmation_target) {
5655 uint32_t ret = (self.get_est_sat_per_1000_weight)(self.this_arg, confirmation_target);
5658 inline LDK::CResult_TxOutAccessErrorZ Access::get_utxo(const uint8_t (*genesis_hash)[32], uint64_t short_channel_id) {
5659 LDK::CResult_TxOutAccessErrorZ ret = (self.get_utxo)(self.this_arg, genesis_hash, short_channel_id);
5662 inline void Listen::block_connected(struct LDKu8slice block, uint32_t height) {
5663 (self.block_connected)(self.this_arg, block, height);
5665 inline void Listen::block_disconnected(const uint8_t (*header)[80], uint32_t height) {
5666 (self.block_disconnected)(self.this_arg, header, height);
5668 inline void Confirm::transactions_confirmed(const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height) {
5669 (self.transactions_confirmed)(self.this_arg, header, txdata, height);
5671 inline void Confirm::transaction_unconfirmed(const uint8_t (*txid)[32]) {
5672 (self.transaction_unconfirmed)(self.this_arg, txid);
5674 inline void Confirm::best_block_updated(const uint8_t (*header)[80], uint32_t height) {
5675 (self.best_block_updated)(self.this_arg, header, height);
5677 inline LDK::CVec_TxidZ Confirm::get_relevant_txids() {
5678 LDK::CVec_TxidZ ret = (self.get_relevant_txids)(self.this_arg);
5681 inline LDK::CResult_NoneChannelMonitorUpdateErrZ Watch::watch_channel(struct LDKOutPoint funding_txo, struct LDKChannelMonitor monitor) {
5682 LDK::CResult_NoneChannelMonitorUpdateErrZ ret = (self.watch_channel)(self.this_arg, funding_txo, monitor);
5685 inline LDK::CResult_NoneChannelMonitorUpdateErrZ Watch::update_channel(struct LDKOutPoint funding_txo, struct LDKChannelMonitorUpdate update) {
5686 LDK::CResult_NoneChannelMonitorUpdateErrZ ret = (self.update_channel)(self.this_arg, funding_txo, update);
5689 inline LDK::CVec_MonitorEventZ Watch::release_pending_monitor_events() {
5690 LDK::CVec_MonitorEventZ ret = (self.release_pending_monitor_events)(self.this_arg);
5693 inline void Filter::register_tx(const uint8_t (*txid)[32], struct LDKu8slice script_pubkey) {
5694 (self.register_tx)(self.this_arg, txid, script_pubkey);
5696 inline LDK::COption_C2Tuple_usizeTransactionZZ Filter::register_output(struct LDKWatchedOutput output) {
5697 LDK::COption_C2Tuple_usizeTransactionZZ ret = (self.register_output)(self.this_arg, output);
5700 inline LDK::CVec_MessageSendEventZ MessageSendEventsProvider::get_and_clear_pending_msg_events() {
5701 LDK::CVec_MessageSendEventZ ret = (self.get_and_clear_pending_msg_events)(self.this_arg);
5704 inline void EventsProvider::process_pending_events(struct LDKEventHandler handler) {
5705 (self.process_pending_events)(self.this_arg, handler);
5707 inline void EventHandler::handle_event(const struct LDKEvent *NONNULL_PTR event) {
5708 (self.handle_event)(self.this_arg, event);
5710 inline LDKPublicKey BaseSign::get_per_commitment_point(uint64_t idx) {
5711 LDKPublicKey ret = (self.get_per_commitment_point)(self.this_arg, idx);
5714 inline LDKThirtyTwoBytes BaseSign::release_commitment_secret(uint64_t idx) {
5715 LDKThirtyTwoBytes ret = (self.release_commitment_secret)(self.this_arg, idx);
5718 inline LDK::CResult_NoneNoneZ BaseSign::validate_holder_commitment(const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx) {
5719 LDK::CResult_NoneNoneZ ret = (self.validate_holder_commitment)(self.this_arg, holder_tx);
5722 inline LDKThirtyTwoBytes BaseSign::channel_keys_id() {
5723 LDKThirtyTwoBytes ret = (self.channel_keys_id)(self.this_arg);
5726 inline LDK::CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign::sign_counterparty_commitment(const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx) {
5727 LDK::CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret = (self.sign_counterparty_commitment)(self.this_arg, commitment_tx);
5730 inline LDK::CResult_NoneNoneZ BaseSign::validate_counterparty_revocation(uint64_t idx, const uint8_t (*secret)[32]) {
5731 LDK::CResult_NoneNoneZ ret = (self.validate_counterparty_revocation)(self.this_arg, idx, secret);
5734 inline LDK::CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign::sign_holder_commitment_and_htlcs(const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx) {
5735 LDK::CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ ret = (self.sign_holder_commitment_and_htlcs)(self.this_arg, commitment_tx);
5738 inline LDK::CResult_SignatureNoneZ BaseSign::sign_justice_revoked_output(struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32]) {
5739 LDK::CResult_SignatureNoneZ ret = (self.sign_justice_revoked_output)(self.this_arg, justice_tx, input, amount, per_commitment_key);
5742 inline LDK::CResult_SignatureNoneZ BaseSign::sign_justice_revoked_htlc(struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32], const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc) {
5743 LDK::CResult_SignatureNoneZ ret = (self.sign_justice_revoked_htlc)(self.this_arg, justice_tx, input, amount, per_commitment_key, htlc);
5746 inline LDK::CResult_SignatureNoneZ BaseSign::sign_counterparty_htlc_transaction(struct LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, struct LDKPublicKey per_commitment_point, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc) {
5747 LDK::CResult_SignatureNoneZ ret = (self.sign_counterparty_htlc_transaction)(self.this_arg, htlc_tx, input, amount, per_commitment_point, htlc);
5750 inline LDK::CResult_SignatureNoneZ BaseSign::sign_closing_transaction(const struct LDKClosingTransaction *NONNULL_PTR closing_tx) {
5751 LDK::CResult_SignatureNoneZ ret = (self.sign_closing_transaction)(self.this_arg, closing_tx);
5754 inline LDK::CResult_SignatureNoneZ BaseSign::sign_channel_announcement(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg) {
5755 LDK::CResult_SignatureNoneZ ret = (self.sign_channel_announcement)(self.this_arg, msg);
5758 inline void BaseSign::ready_channel(const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters) {
5759 (self.ready_channel)(self.this_arg, channel_parameters);
5761 inline LDKSecretKey KeysInterface::get_node_secret() {
5762 LDKSecretKey ret = (self.get_node_secret)(self.this_arg);
5765 inline LDK::CVec_u8Z KeysInterface::get_destination_script() {
5766 LDK::CVec_u8Z ret = (self.get_destination_script)(self.this_arg);
5769 inline LDK::ShutdownScript KeysInterface::get_shutdown_scriptpubkey() {
5770 LDK::ShutdownScript ret = (self.get_shutdown_scriptpubkey)(self.this_arg);
5773 inline LDK::Sign KeysInterface::get_channel_signer(bool inbound, uint64_t channel_value_satoshis) {
5774 LDK::Sign ret = (self.get_channel_signer)(self.this_arg, inbound, channel_value_satoshis);
5777 inline LDKThirtyTwoBytes KeysInterface::get_secure_random_bytes() {
5778 LDKThirtyTwoBytes ret = (self.get_secure_random_bytes)(self.this_arg);
5781 inline LDK::CResult_SignDecodeErrorZ KeysInterface::read_chan_signer(struct LDKu8slice reader) {
5782 LDK::CResult_SignDecodeErrorZ ret = (self.read_chan_signer)(self.this_arg, reader);
5785 inline LDK::CResult_RecoverableSignatureNoneZ KeysInterface::sign_invoice(struct LDKCVec_u8Z invoice_preimage) {
5786 LDK::CResult_RecoverableSignatureNoneZ ret = (self.sign_invoice)(self.this_arg, invoice_preimage);
5789 inline LDK::CResult_COption_TypeZDecodeErrorZ CustomMessageReader::read(uint16_t message_type, struct LDKu8slice buffer) {
5790 LDK::CResult_COption_TypeZDecodeErrorZ ret = (self.read)(self.this_arg, message_type, buffer);
5793 inline uint16_t Type::type_id() {
5794 uint16_t ret = (self.type_id)(self.this_arg);
5797 inline LDK::Str Type::debug_str() {
5798 LDK::Str ret = (self.debug_str)(self.this_arg);
5801 inline LDK::CResult_NoneChannelMonitorUpdateErrZ Persist::persist_new_channel(struct LDKOutPoint id, const struct LDKChannelMonitor *NONNULL_PTR data) {
5802 LDK::CResult_NoneChannelMonitorUpdateErrZ ret = (self.persist_new_channel)(self.this_arg, id, data);
5805 inline LDK::CResult_NoneChannelMonitorUpdateErrZ Persist::update_persisted_channel(struct LDKOutPoint id, const struct LDKChannelMonitorUpdate *NONNULL_PTR update, const struct LDKChannelMonitor *NONNULL_PTR data) {
5806 LDK::CResult_NoneChannelMonitorUpdateErrZ ret = (self.update_persisted_channel)(self.this_arg, id, update, data);
5809 inline LDK::CResult_NoneLightningErrorZ CustomMessageHandler::handle_custom_message(struct LDKType msg, struct LDKPublicKey sender_node_id) {
5810 LDK::CResult_NoneLightningErrorZ ret = (self.handle_custom_message)(self.this_arg, msg, sender_node_id);
5813 inline LDK::CVec_C2Tuple_PublicKeyTypeZZ CustomMessageHandler::get_and_clear_pending_msg() {
5814 LDK::CVec_C2Tuple_PublicKeyTypeZZ ret = (self.get_and_clear_pending_msg)(self.this_arg);
5817 inline uintptr_t SocketDescriptor::send_data(struct LDKu8slice data, bool resume_read) {
5818 uintptr_t ret = (self.send_data)(self.this_arg, data, resume_read);
5821 inline void SocketDescriptor::disconnect_socket() {
5822 (self.disconnect_socket)(self.this_arg);
5824 inline bool SocketDescriptor::eq(const struct LDKSocketDescriptor *NONNULL_PTR other_arg) {
5825 bool ret = (self.eq)(self.this_arg, other_arg);
5828 inline uint64_t SocketDescriptor::hash() {
5829 uint64_t ret = (self.hash)(self.this_arg);
5832 inline void ChannelMessageHandler::handle_open_channel(struct LDKPublicKey their_node_id, struct LDKInitFeatures their_features, const struct LDKOpenChannel *NONNULL_PTR msg) {
5833 (self.handle_open_channel)(self.this_arg, their_node_id, their_features, msg);
5835 inline void ChannelMessageHandler::handle_accept_channel(struct LDKPublicKey their_node_id, struct LDKInitFeatures their_features, const struct LDKAcceptChannel *NONNULL_PTR msg) {
5836 (self.handle_accept_channel)(self.this_arg, their_node_id, their_features, msg);
5838 inline void ChannelMessageHandler::handle_funding_created(struct LDKPublicKey their_node_id, const struct LDKFundingCreated *NONNULL_PTR msg) {
5839 (self.handle_funding_created)(self.this_arg, their_node_id, msg);
5841 inline void ChannelMessageHandler::handle_funding_signed(struct LDKPublicKey their_node_id, const struct LDKFundingSigned *NONNULL_PTR msg) {
5842 (self.handle_funding_signed)(self.this_arg, their_node_id, msg);
5844 inline void ChannelMessageHandler::handle_funding_locked(struct LDKPublicKey their_node_id, const struct LDKFundingLocked *NONNULL_PTR msg) {
5845 (self.handle_funding_locked)(self.this_arg, their_node_id, msg);
5847 inline void ChannelMessageHandler::handle_shutdown(struct LDKPublicKey their_node_id, const struct LDKInitFeatures *NONNULL_PTR their_features, const struct LDKShutdown *NONNULL_PTR msg) {
5848 (self.handle_shutdown)(self.this_arg, their_node_id, their_features, msg);
5850 inline void ChannelMessageHandler::handle_closing_signed(struct LDKPublicKey their_node_id, const struct LDKClosingSigned *NONNULL_PTR msg) {
5851 (self.handle_closing_signed)(self.this_arg, their_node_id, msg);
5853 inline void ChannelMessageHandler::handle_update_add_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateAddHTLC *NONNULL_PTR msg) {
5854 (self.handle_update_add_htlc)(self.this_arg, their_node_id, msg);
5856 inline void ChannelMessageHandler::handle_update_fulfill_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateFulfillHTLC *NONNULL_PTR msg) {
5857 (self.handle_update_fulfill_htlc)(self.this_arg, their_node_id, msg);
5859 inline void ChannelMessageHandler::handle_update_fail_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateFailHTLC *NONNULL_PTR msg) {
5860 (self.handle_update_fail_htlc)(self.this_arg, their_node_id, msg);
5862 inline void ChannelMessageHandler::handle_update_fail_malformed_htlc(struct LDKPublicKey their_node_id, const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR msg) {
5863 (self.handle_update_fail_malformed_htlc)(self.this_arg, their_node_id, msg);
5865 inline void ChannelMessageHandler::handle_commitment_signed(struct LDKPublicKey their_node_id, const struct LDKCommitmentSigned *NONNULL_PTR msg) {
5866 (self.handle_commitment_signed)(self.this_arg, their_node_id, msg);
5868 inline void ChannelMessageHandler::handle_revoke_and_ack(struct LDKPublicKey their_node_id, const struct LDKRevokeAndACK *NONNULL_PTR msg) {
5869 (self.handle_revoke_and_ack)(self.this_arg, their_node_id, msg);
5871 inline void ChannelMessageHandler::handle_update_fee(struct LDKPublicKey their_node_id, const struct LDKUpdateFee *NONNULL_PTR msg) {
5872 (self.handle_update_fee)(self.this_arg, their_node_id, msg);
5874 inline void ChannelMessageHandler::handle_announcement_signatures(struct LDKPublicKey their_node_id, const struct LDKAnnouncementSignatures *NONNULL_PTR msg) {
5875 (self.handle_announcement_signatures)(self.this_arg, their_node_id, msg);
5877 inline void ChannelMessageHandler::peer_disconnected(struct LDKPublicKey their_node_id, bool no_connection_possible) {
5878 (self.peer_disconnected)(self.this_arg, their_node_id, no_connection_possible);
5880 inline void ChannelMessageHandler::peer_connected(struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR msg) {
5881 (self.peer_connected)(self.this_arg, their_node_id, msg);
5883 inline void ChannelMessageHandler::handle_channel_reestablish(struct LDKPublicKey their_node_id, const struct LDKChannelReestablish *NONNULL_PTR msg) {
5884 (self.handle_channel_reestablish)(self.this_arg, their_node_id, msg);
5886 inline void ChannelMessageHandler::handle_channel_update(struct LDKPublicKey their_node_id, const struct LDKChannelUpdate *NONNULL_PTR msg) {
5887 (self.handle_channel_update)(self.this_arg, their_node_id, msg);
5889 inline void ChannelMessageHandler::handle_error(struct LDKPublicKey their_node_id, const struct LDKErrorMessage *NONNULL_PTR msg) {
5890 (self.handle_error)(self.this_arg, their_node_id, msg);
5892 inline LDK::CResult_boolLightningErrorZ RoutingMessageHandler::handle_node_announcement(const struct LDKNodeAnnouncement *NONNULL_PTR msg) {
5893 LDK::CResult_boolLightningErrorZ ret = (self.handle_node_announcement)(self.this_arg, msg);
5896 inline LDK::CResult_boolLightningErrorZ RoutingMessageHandler::handle_channel_announcement(const struct LDKChannelAnnouncement *NONNULL_PTR msg) {
5897 LDK::CResult_boolLightningErrorZ ret = (self.handle_channel_announcement)(self.this_arg, msg);
5900 inline LDK::CResult_boolLightningErrorZ RoutingMessageHandler::handle_channel_update(const struct LDKChannelUpdate *NONNULL_PTR msg) {
5901 LDK::CResult_boolLightningErrorZ ret = (self.handle_channel_update)(self.this_arg, msg);
5904 inline LDK::CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ RoutingMessageHandler::get_next_channel_announcements(uint64_t starting_point, uint8_t batch_amount) {
5905 LDK::CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ ret = (self.get_next_channel_announcements)(self.this_arg, starting_point, batch_amount);
5908 inline LDK::CVec_NodeAnnouncementZ RoutingMessageHandler::get_next_node_announcements(struct LDKPublicKey starting_point, uint8_t batch_amount) {
5909 LDK::CVec_NodeAnnouncementZ ret = (self.get_next_node_announcements)(self.this_arg, starting_point, batch_amount);
5912 inline void RoutingMessageHandler::sync_routing_table(struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init) {
5913 (self.sync_routing_table)(self.this_arg, their_node_id, init);
5915 inline LDK::CResult_NoneLightningErrorZ RoutingMessageHandler::handle_reply_channel_range(struct LDKPublicKey their_node_id, struct LDKReplyChannelRange msg) {
5916 LDK::CResult_NoneLightningErrorZ ret = (self.handle_reply_channel_range)(self.this_arg, their_node_id, msg);
5919 inline LDK::CResult_NoneLightningErrorZ RoutingMessageHandler::handle_reply_short_channel_ids_end(struct LDKPublicKey their_node_id, struct LDKReplyShortChannelIdsEnd msg) {
5920 LDK::CResult_NoneLightningErrorZ ret = (self.handle_reply_short_channel_ids_end)(self.this_arg, their_node_id, msg);
5923 inline LDK::CResult_NoneLightningErrorZ RoutingMessageHandler::handle_query_channel_range(struct LDKPublicKey their_node_id, struct LDKQueryChannelRange msg) {
5924 LDK::CResult_NoneLightningErrorZ ret = (self.handle_query_channel_range)(self.this_arg, their_node_id, msg);
5927 inline LDK::CResult_NoneLightningErrorZ RoutingMessageHandler::handle_query_short_channel_ids(struct LDKPublicKey their_node_id, struct LDKQueryShortChannelIds msg) {
5928 LDK::CResult_NoneLightningErrorZ ret = (self.handle_query_short_channel_ids)(self.this_arg, their_node_id, msg);
5931 inline void Logger::log(const char *record) {
5932 (self.log)(self.this_arg, record);