Skip to content

Commit a5fdced

Browse files
committed
use correct as methods (temporary workaround)
1 parent 0b1face commit a5fdced

File tree

3 files changed

+31
-3
lines changed

3 files changed

+31
-3
lines changed

bindings/LDK/Bindings.swift

+11
Original file line numberDiff line numberDiff line change
@@ -1382,6 +1382,17 @@ public class Bindings{
13821382

13831383
return LDKStr(chars: nativeType, len: UInt(string.count), chars_is_owned: false)
13841384
}
1385+
1386+
public class func createInvoiceFromChannelManager(channelManager: ChannelManager, keysManager: KeysInterface, network: LDKCurrency, amountMsat: UInt64?, description: String) -> Result_InvoiceSignOrCreationErrorZ {
1387+
let nativeKeysManager = keysManager.cOpaqueStruct!
1388+
let amount = Option_u64Z(value: amountMsat)
1389+
let nativeAmount = amount.cOpaqueStruct!
1390+
let nativeDescription = Self.new_LDKStr(string: description)
1391+
return withUnsafePointer(to: channelManager.cOpaqueStruct!) { (pointer: UnsafePointer<LDKChannelManager>) -> Result_InvoiceSignOrCreationErrorZ in
1392+
let nativeResult = create_invoice_from_channelmanager(pointer, nativeKeysManager, network, nativeAmount, nativeDescription)
1393+
return Result_InvoiceSignOrCreationErrorZ(pointer: nativeResult)
1394+
}
1395+
}
13851396

13861397
}
13871398

bindings/batteries/ChannelManagerConstructor.swift

+9-3
Original file line numberDiff line numberDiff line change
@@ -100,15 +100,19 @@ public class ChannelManagerConstructor {
100100
let chainMonitorWatch = self.chain_monitor.as_Watch()
101101
let fundingTxo = currentChannelMonitor.get_funding_txo()
102102
let outPoint = OutPoint(pointer: fundingTxo.cOpaqueStruct!.a)
103-
chainMonitorWatch.watch_channel(funding_txo: outPoint, monitor: currentChannelMonitor)
103+
104+
chainMonitorWatch.cOpaqueStruct!.watch_channel(chainMonitorWatch.cOpaqueStruct!.this_arg, outPoint.cOpaqueStruct!, currentChannelMonitor.cOpaqueStruct!)
105+
// chainMonitorWatch.watch_channel(funding_txo: outPoint, monitor: currentChannelMonitor)
104106
}
105107

106108
self.persisterWorkItem = DispatchWorkItem {
107109
var lastTimerTick = NSDate().timeIntervalSince1970
108110
while !self.shutdown {
109111
var needsPersist = self.channelManager.await_persistable_update_timeout(max_wait: 1)
110112

111-
let rawManagerEvents = self.channelManager.as_EventsProvider().get_and_clear_pending_events()
113+
let nativeManagerEventsProvider = self.channelManager.as_EventsProvider().cOpaqueStruct!
114+
let rawManagerEvents = Bindings.LDKCVec_EventZ_to_array(nativeType: nativeManagerEventsProvider.get_and_clear_pending_events(nativeManagerEventsProvider.this_arg))
115+
112116
let managerEvents = rawManagerEvents.map { (e: LDKEvent) -> Event in
113117
Event(pointer: e)
114118
}
@@ -117,7 +121,9 @@ public class ChannelManagerConstructor {
117121
needsPersist = true
118122
}
119123

120-
let rawMonitorEvents = self.chain_monitor.as_EventsProvider().get_and_clear_pending_events();
124+
let nativeMonitorEventsProvider = self.chain_monitor.as_EventsProvider().cOpaqueStruct!
125+
let rawMonitorEvents = Bindings.LDKCVec_EventZ_to_array(nativeType: nativeMonitorEventsProvider.get_and_clear_pending_events(nativeMonitorEventsProvider.this_arg))
126+
121127
let monitorEvents = rawMonitorEvents.map { (e: LDKEvent) -> Event in
122128
Event(pointer: e)
123129
}

templates/BindingsTemplate.swift

+11
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,17 @@ public class Bindings{
135135
return LDKStr(chars: nativeType, len: UInt(string.count), chars_is_owned: false)
136136
}
137137

138+
public class func createInvoiceFromChannelManager(channelManager: ChannelManager, keysManager: KeysInterface, network: LDKCurrency, amountMsat: UInt64?, description: String) -> Result_InvoiceSignOrCreationErrorZ {
139+
let nativeKeysManager = keysManager.cOpaqueStruct!
140+
let amount = Option_u64Z(value: amountMsat)
141+
let nativeAmount = amount.cOpaqueStruct!
142+
let nativeDescription = Self.new_LDKStr(string: description)
143+
return withUnsafePointer(to: channelManager.cOpaqueStruct!) { (pointer: UnsafePointer<LDKChannelManager>) -> Result_InvoiceSignOrCreationErrorZ in
144+
let nativeResult = create_invoice_from_channelmanager(pointer, nativeKeysManager, network, nativeAmount, nativeDescription)
145+
return Result_InvoiceSignOrCreationErrorZ(pointer: nativeResult)
146+
}
147+
}
148+
138149
}
139150

140151
public class TxOut {

0 commit comments

Comments
 (0)