Initial checkin
[ldk-swift-linux] / LDKSwift / Sources / LDKSwift / traits / Watch.swift
1 import LDKCHeaders
2 import LDKCHeaders
3 open class Watch {
4
5     public var cOpaqueStruct: LDKWatch?;
6
7     public init() {
8
9         /* NATIVE_CALLBACKS_START */
10
11                 func watch_channelCallback(pointer: UnsafeRawPointer?, funding_txo: LDKOutPoint, monitor: LDKChannelMonitor) -> LDKCResult_NoneChannelMonitorUpdateErrZ {
12                         let instance: Watch = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "Watch.swift::watch_channel")
13                         
14                         return instance.watch_channel(funding_txo: OutPoint(pointer: funding_txo), monitor: ChannelMonitor(pointer: monitor)).cOpaqueStruct!;
15                 }
16
17                 func update_channelCallback(pointer: UnsafeRawPointer?, funding_txo: LDKOutPoint, update: LDKChannelMonitorUpdate) -> LDKCResult_NoneChannelMonitorUpdateErrZ {
18                         let instance: Watch = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "Watch.swift::update_channel")
19                         
20                         return instance.update_channel(funding_txo: OutPoint(pointer: funding_txo), update: ChannelMonitorUpdate(pointer: update)).cOpaqueStruct!;
21                 }
22
23                 func release_pending_monitor_eventsCallback(pointer: UnsafeRawPointer?) -> LDKCVec_MonitorEventZ {
24                         let instance: Watch = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "Watch.swift::release_pending_monitor_events")
25                         
26                         return Bindings.new_LDKCVec_MonitorEventZ(array: instance.release_pending_monitor_events());
27                 }
28
29                 func freeCallback(pointer: UnsafeMutableRawPointer?) -> Void {
30                         let instance: Watch = Bindings.pointerToInstance(pointer: pointer!, sourceMarker: "Watch.swift::free")
31                         
32                         return instance.free();
33                 }
34
35                 /* NATIVE_CALLBACKS_END */
36
37         self.cOpaqueStruct = LDKWatch(this_arg: Bindings.instanceToPointer(instance: self), 
38                         watch_channel: watch_channelCallback,
39                         update_channel: update_channelCallback,
40                         release_pending_monitor_events: release_pending_monitor_eventsCallback,
41                         free: freeCallback)
42     }
43
44     public init(pointer: LDKWatch){
45                 self.cOpaqueStruct = pointer
46         }
47
48     /* SWIFT_CALLBACKS_START */
49
50     open func watch_channel(funding_txo: OutPoint, monitor: ChannelMonitor) -> Result_NoneChannelMonitorUpdateErrZ {
51         /* EDIT ME */
52                 return Result_NoneChannelMonitorUpdateErrZ(pointer: LDKCResult_NoneChannelMonitorUpdateErrZ())
53     }
54
55     open func update_channel(funding_txo: OutPoint, update: ChannelMonitorUpdate) -> Result_NoneChannelMonitorUpdateErrZ {
56         /* EDIT ME */
57                 return Result_NoneChannelMonitorUpdateErrZ(pointer: LDKCResult_NoneChannelMonitorUpdateErrZ())
58     }
59
60     open func release_pending_monitor_events() -> [LDKMonitorEvent] {
61         /* EDIT ME */
62                 return [LDKMonitorEvent]()
63     }
64
65     open func free() -> Void {
66         /* EDIT ME */
67                 
68     }
69
70     /* SWIFT_CALLBACKS_END */
71
72 }
73
74
75 public class NativelyImplementedWatch: Watch {
76         /* SWIFT_DEFAULT_CALLBACKS_START */
77
78         public override func watch_channel(funding_txo: OutPoint, monitor: ChannelMonitor) -> Result_NoneChannelMonitorUpdateErrZ {
79                 
80                                 return 
81                                 Result_NoneChannelMonitorUpdateErrZ(pointer: self.cOpaqueStruct!.watch_channel(self.cOpaqueStruct!.this_arg, funding_txo.cOpaqueStruct!, monitor.cOpaqueStruct!))
82                                 
83                         
84         }
85
86         public override func update_channel(funding_txo: OutPoint, update: ChannelMonitorUpdate) -> Result_NoneChannelMonitorUpdateErrZ {
87                 
88                                 return 
89                                 Result_NoneChannelMonitorUpdateErrZ(pointer: self.cOpaqueStruct!.update_channel(self.cOpaqueStruct!.this_arg, funding_txo.cOpaqueStruct!, update.cOpaqueStruct!))
90                                 
91                         
92         }
93
94         public override func release_pending_monitor_events() -> [LDKMonitorEvent] {
95                 
96                                 return 
97                                 Bindings.LDKCVec_MonitorEventZ_to_array(nativeType: self.cOpaqueStruct!.release_pending_monitor_events(self.cOpaqueStruct!.this_arg))
98                                 
99                         
100         }
101
102         public override func free() -> Void {
103                 
104                                 
105                                 self.cOpaqueStruct!.free(self.cOpaqueStruct!.this_arg)
106                                 
107                         
108         }
109
110         /* SWIFT_DEFAULT_CALLBACKS_END */
111 }