Merge pull request #768 from TheBlueMatt/2020-12-chanman-bindings-deser
[rust-lightning] / lightning-c-bindings / include / rust_types.h
1 #if defined(__GNUC__)
2 #define MUST_USE_STRUCT __attribute__((warn_unused))
3 #define MUST_USE_RES __attribute__((warn_unused_result))
4 #else
5 #define MUST_USE_STRUCT
6 #define MUST_USE_RES
7 #endif
8 #if defined(__clang__)
9 #define NONNULL_PTR _Nonnull
10 #else
11 #define NONNULL_PTR
12 #endif
13 struct nativeChannelHandshakeConfigOpaque;
14 typedef struct nativeChannelHandshakeConfigOpaque LDKnativeChannelHandshakeConfig;
15 struct nativeChannelHandshakeLimitsOpaque;
16 typedef struct nativeChannelHandshakeLimitsOpaque LDKnativeChannelHandshakeLimits;
17 struct nativeChannelConfigOpaque;
18 typedef struct nativeChannelConfigOpaque LDKnativeChannelConfig;
19 struct nativeUserConfigOpaque;
20 typedef struct nativeUserConfigOpaque LDKnativeUserConfig;
21 struct nativeChainMonitorOpaque;
22 typedef struct nativeChainMonitorOpaque LDKnativeChainMonitor;
23 struct nativeChannelMonitorUpdateOpaque;
24 typedef struct nativeChannelMonitorUpdateOpaque LDKnativeChannelMonitorUpdate;
25 struct nativeMonitorUpdateErrorOpaque;
26 typedef struct nativeMonitorUpdateErrorOpaque LDKnativeMonitorUpdateError;
27 struct nativeMonitorEventOpaque;
28 typedef struct nativeMonitorEventOpaque LDKnativeMonitorEvent;
29 struct nativeHTLCUpdateOpaque;
30 typedef struct nativeHTLCUpdateOpaque LDKnativeHTLCUpdate;
31 struct nativeChannelMonitorOpaque;
32 typedef struct nativeChannelMonitorOpaque LDKnativeChannelMonitor;
33 struct nativeOutPointOpaque;
34 typedef struct nativeOutPointOpaque LDKnativeOutPoint;
35 struct LDKChannelKeys;
36 typedef struct LDKChannelKeys LDKChannelKeys;
37 struct nativeInMemoryChannelKeysOpaque;
38 typedef struct nativeInMemoryChannelKeysOpaque LDKnativeInMemoryChannelKeys;
39 struct nativeKeysManagerOpaque;
40 typedef struct nativeKeysManagerOpaque LDKnativeKeysManager;
41 struct nativeChannelManagerOpaque;
42 typedef struct nativeChannelManagerOpaque LDKnativeChannelManager;
43 struct nativeChannelDetailsOpaque;
44 typedef struct nativeChannelDetailsOpaque LDKnativeChannelDetails;
45 struct nativePaymentSendFailureOpaque;
46 typedef struct nativePaymentSendFailureOpaque LDKnativePaymentSendFailure;
47 struct nativeChannelManagerReadArgsOpaque;
48 typedef struct nativeChannelManagerReadArgsOpaque LDKnativeChannelManagerReadArgs;
49 struct nativeDecodeErrorOpaque;
50 typedef struct nativeDecodeErrorOpaque LDKnativeDecodeError;
51 struct nativeInitOpaque;
52 typedef struct nativeInitOpaque LDKnativeInit;
53 struct nativeErrorMessageOpaque;
54 typedef struct nativeErrorMessageOpaque LDKnativeErrorMessage;
55 struct nativePingOpaque;
56 typedef struct nativePingOpaque LDKnativePing;
57 struct nativePongOpaque;
58 typedef struct nativePongOpaque LDKnativePong;
59 struct nativeOpenChannelOpaque;
60 typedef struct nativeOpenChannelOpaque LDKnativeOpenChannel;
61 struct nativeAcceptChannelOpaque;
62 typedef struct nativeAcceptChannelOpaque LDKnativeAcceptChannel;
63 struct nativeFundingCreatedOpaque;
64 typedef struct nativeFundingCreatedOpaque LDKnativeFundingCreated;
65 struct nativeFundingSignedOpaque;
66 typedef struct nativeFundingSignedOpaque LDKnativeFundingSigned;
67 struct nativeFundingLockedOpaque;
68 typedef struct nativeFundingLockedOpaque LDKnativeFundingLocked;
69 struct nativeShutdownOpaque;
70 typedef struct nativeShutdownOpaque LDKnativeShutdown;
71 struct nativeClosingSignedOpaque;
72 typedef struct nativeClosingSignedOpaque LDKnativeClosingSigned;
73 struct nativeUpdateAddHTLCOpaque;
74 typedef struct nativeUpdateAddHTLCOpaque LDKnativeUpdateAddHTLC;
75 struct nativeUpdateFulfillHTLCOpaque;
76 typedef struct nativeUpdateFulfillHTLCOpaque LDKnativeUpdateFulfillHTLC;
77 struct nativeUpdateFailHTLCOpaque;
78 typedef struct nativeUpdateFailHTLCOpaque LDKnativeUpdateFailHTLC;
79 struct nativeUpdateFailMalformedHTLCOpaque;
80 typedef struct nativeUpdateFailMalformedHTLCOpaque LDKnativeUpdateFailMalformedHTLC;
81 struct nativeCommitmentSignedOpaque;
82 typedef struct nativeCommitmentSignedOpaque LDKnativeCommitmentSigned;
83 struct nativeRevokeAndACKOpaque;
84 typedef struct nativeRevokeAndACKOpaque LDKnativeRevokeAndACK;
85 struct nativeUpdateFeeOpaque;
86 typedef struct nativeUpdateFeeOpaque LDKnativeUpdateFee;
87 struct nativeDataLossProtectOpaque;
88 typedef struct nativeDataLossProtectOpaque LDKnativeDataLossProtect;
89 struct nativeChannelReestablishOpaque;
90 typedef struct nativeChannelReestablishOpaque LDKnativeChannelReestablish;
91 struct nativeAnnouncementSignaturesOpaque;
92 typedef struct nativeAnnouncementSignaturesOpaque LDKnativeAnnouncementSignatures;
93 struct nativeUnsignedNodeAnnouncementOpaque;
94 typedef struct nativeUnsignedNodeAnnouncementOpaque LDKnativeUnsignedNodeAnnouncement;
95 struct nativeNodeAnnouncementOpaque;
96 typedef struct nativeNodeAnnouncementOpaque LDKnativeNodeAnnouncement;
97 struct nativeUnsignedChannelAnnouncementOpaque;
98 typedef struct nativeUnsignedChannelAnnouncementOpaque LDKnativeUnsignedChannelAnnouncement;
99 struct nativeChannelAnnouncementOpaque;
100 typedef struct nativeChannelAnnouncementOpaque LDKnativeChannelAnnouncement;
101 struct nativeUnsignedChannelUpdateOpaque;
102 typedef struct nativeUnsignedChannelUpdateOpaque LDKnativeUnsignedChannelUpdate;
103 struct nativeChannelUpdateOpaque;
104 typedef struct nativeChannelUpdateOpaque LDKnativeChannelUpdate;
105 struct nativeQueryChannelRangeOpaque;
106 typedef struct nativeQueryChannelRangeOpaque LDKnativeQueryChannelRange;
107 struct nativeReplyChannelRangeOpaque;
108 typedef struct nativeReplyChannelRangeOpaque LDKnativeReplyChannelRange;
109 struct nativeQueryShortChannelIdsOpaque;
110 typedef struct nativeQueryShortChannelIdsOpaque LDKnativeQueryShortChannelIds;
111 struct nativeReplyShortChannelIdsEndOpaque;
112 typedef struct nativeReplyShortChannelIdsEndOpaque LDKnativeReplyShortChannelIdsEnd;
113 struct nativeGossipTimestampFilterOpaque;
114 typedef struct nativeGossipTimestampFilterOpaque LDKnativeGossipTimestampFilter;
115 struct nativeLightningErrorOpaque;
116 typedef struct nativeLightningErrorOpaque LDKnativeLightningError;
117 struct nativeCommitmentUpdateOpaque;
118 typedef struct nativeCommitmentUpdateOpaque LDKnativeCommitmentUpdate;
119 struct nativeMessageHandlerOpaque;
120 typedef struct nativeMessageHandlerOpaque LDKnativeMessageHandler;
121 typedef struct LDKSocketDescriptor LDKSocketDescriptor;
122 struct nativePeerHandleErrorOpaque;
123 typedef struct nativePeerHandleErrorOpaque LDKnativePeerHandleError;
124 struct nativePeerManagerOpaque;
125 typedef struct nativePeerManagerOpaque LDKnativePeerManager;
126 struct nativeTxCreationKeysOpaque;
127 typedef struct nativeTxCreationKeysOpaque LDKnativeTxCreationKeys;
128 struct nativeChannelPublicKeysOpaque;
129 typedef struct nativeChannelPublicKeysOpaque LDKnativeChannelPublicKeys;
130 struct nativeHTLCOutputInCommitmentOpaque;
131 typedef struct nativeHTLCOutputInCommitmentOpaque LDKnativeHTLCOutputInCommitment;
132 struct nativeChannelTransactionParametersOpaque;
133 typedef struct nativeChannelTransactionParametersOpaque LDKnativeChannelTransactionParameters;
134 struct nativeCounterpartyChannelTransactionParametersOpaque;
135 typedef struct nativeCounterpartyChannelTransactionParametersOpaque LDKnativeCounterpartyChannelTransactionParameters;
136 struct nativeDirectedChannelTransactionParametersOpaque;
137 typedef struct nativeDirectedChannelTransactionParametersOpaque LDKnativeDirectedChannelTransactionParameters;
138 struct nativeHolderCommitmentTransactionOpaque;
139 typedef struct nativeHolderCommitmentTransactionOpaque LDKnativeHolderCommitmentTransaction;
140 struct nativeBuiltCommitmentTransactionOpaque;
141 typedef struct nativeBuiltCommitmentTransactionOpaque LDKnativeBuiltCommitmentTransaction;
142 struct nativeCommitmentTransactionOpaque;
143 typedef struct nativeCommitmentTransactionOpaque LDKnativeCommitmentTransaction;
144 struct nativeTrustedCommitmentTransactionOpaque;
145 typedef struct nativeTrustedCommitmentTransactionOpaque LDKnativeTrustedCommitmentTransaction;
146 struct nativeInitFeaturesOpaque;
147 typedef struct nativeInitFeaturesOpaque LDKnativeInitFeatures;
148 struct nativeNodeFeaturesOpaque;
149 typedef struct nativeNodeFeaturesOpaque LDKnativeNodeFeatures;
150 struct nativeChannelFeaturesOpaque;
151 typedef struct nativeChannelFeaturesOpaque LDKnativeChannelFeatures;
152 struct nativeRouteHopOpaque;
153 typedef struct nativeRouteHopOpaque LDKnativeRouteHop;
154 struct nativeRouteOpaque;
155 typedef struct nativeRouteOpaque LDKnativeRoute;
156 struct nativeRouteHintOpaque;
157 typedef struct nativeRouteHintOpaque LDKnativeRouteHint;
158 struct nativeNetworkGraphOpaque;
159 typedef struct nativeNetworkGraphOpaque LDKnativeNetworkGraph;
160 struct nativeLockedNetworkGraphOpaque;
161 typedef struct nativeLockedNetworkGraphOpaque LDKnativeLockedNetworkGraph;
162 struct nativeNetGraphMsgHandlerOpaque;
163 typedef struct nativeNetGraphMsgHandlerOpaque LDKnativeNetGraphMsgHandler;
164 struct nativeDirectionalChannelInfoOpaque;
165 typedef struct nativeDirectionalChannelInfoOpaque LDKnativeDirectionalChannelInfo;
166 struct nativeChannelInfoOpaque;
167 typedef struct nativeChannelInfoOpaque LDKnativeChannelInfo;
168 struct nativeRoutingFeesOpaque;
169 typedef struct nativeRoutingFeesOpaque LDKnativeRoutingFees;
170 struct nativeNodeAnnouncementInfoOpaque;
171 typedef struct nativeNodeAnnouncementInfoOpaque LDKnativeNodeAnnouncementInfo;
172 struct nativeNodeInfoOpaque;
173 typedef struct nativeNodeInfoOpaque LDKnativeNodeInfo;