react-nitro-networking 0.0.0-stage → 0.0.1-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/Package.swift +102 -0
- package/README.md +58 -2
- package/Sources/ReactNitroNetworking/HybridNetworking.swift +17 -0
- package/Sources/ReactNitroNetworking/HybridResponse.swift +87 -0
- package/Sources/ReactNitroNetworking/HybridWebSocket.swift +188 -0
- package/Sources/ReactNitroNetworking/NetworkingTaskDelegate.swift +16 -0
- package/Sources/ReactNitroNetworking/WebSocketListeners.swift +49 -0
- package/Sources/ReactNitroNetworking/WebSocketTaskDelegate.swift +26 -0
- package/Sources/ReactNitroNetworking/WebSocketURL.swift +18 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/apple/ReactNitroNetworking-Swift-Cxx-Bridge.cpp +171 -0
- package/nitrogen/generated/apple/ReactNitroNetworkingAppleCxx/ReactNitroNetworkingAppleCxx.cpp +9 -0
- package/nitrogen/generated/apple/ReactNitroNetworkingAppleCxx/include/ReactNitroNetworkingAppleCxx/ReactNitroNetworkingAppleCxx.h +97 -0
- package/nitrogen/generated/apple/ReactNitroNetworkingAutolinking.cpp +24 -0
- package/nitrogen/generated/apple/ReactNitroNetworkingAutolinking.mm +24 -0
- package/nitrogen/generated/apple/c++/HybridNetworkingSpecSwift.cpp +42 -0
- package/nitrogen/generated/apple/c++/HybridNetworkingSpec_cxx-Swift.cpp +28 -0
- package/nitrogen/generated/apple/c++/HybridResponseSpecSwift.cpp +102 -0
- package/nitrogen/generated/apple/c++/HybridResponseSpec_cxx-Swift.cpp +28 -0
- package/nitrogen/generated/apple/c++/HybridWebSocketSpecSwift.cpp +111 -0
- package/nitrogen/generated/apple/c++/HybridWebSocketSpec_cxx-Swift.cpp +28 -0
- package/nitrogen/generated/apple/c++/ListenerSubscription-Swift.cpp +37 -0
- package/nitrogen/generated/apple/c++/Record_swift__String_swift__String-Swift.cpp +26 -0
- package/nitrogen/generated/apple/c++/ResponseType-Swift.cpp +58 -0
- package/nitrogen/generated/apple/c++/Variant_ArrayBuffer_String-Swift.cpp +41 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/ReactNitroNetworkingAutolinking.hpp +13 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/HybridNetworkingSpecSwift.hpp +72 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/HybridNetworkingSpec_cxx-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/HybridResponseSpecSwift.hpp +81 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/HybridResponseSpec_cxx-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/HybridWebSocketSpecSwift.hpp +78 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/HybridWebSocketSpec_cxx-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/ListenerSubscription-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/ReactNitroNetworking-Swift-Cxx-Umbrella.hpp +44 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/Record_swift__String_swift__String-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/ResponseType-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/ReactNitroNetworking/private/Variant_ArrayBuffer_String-Swift.hpp +23 -0
- package/nitrogen/generated/apple/c++/include/module.modulemap +12 -0
- package/nitrogen/generated/apple/swift/Callback_void.swift +60 -0
- package/nitrogen/generated/apple/swift/Callback_void___ReactNitroNetworking__Variant_ArrayBuffer_String_cxx.swift +66 -0
- package/nitrogen/generated/apple/swift/Callback_void_std__exception_ptr.swift +60 -0
- package/nitrogen/generated/apple/swift/HybridNetworkingSpec.swift +65 -0
- package/nitrogen/generated/apple/swift/HybridNetworkingSpec_cxx.swift +143 -0
- package/nitrogen/generated/apple/swift/HybridResponseSpec.swift +74 -0
- package/nitrogen/generated/apple/swift/HybridResponseSpec_cxx.swift +201 -0
- package/nitrogen/generated/apple/swift/HybridWebSocketSpec.swift +70 -0
- package/nitrogen/generated/apple/swift/HybridWebSocketSpec_cxx.swift +201 -0
- package/nitrogen/generated/apple/swift/ListenerSubscription.swift +29 -0
- package/nitrogen/generated/apple/swift/Promise_ArrayBuffer.swift +100 -0
- package/nitrogen/generated/apple/swift/Promise_NitroModules__AnyJSON.swift +102 -0
- package/nitrogen/generated/apple/swift/Promise___ReactNitroNetworking__HybridResponseSpec_cxx.swift +102 -0
- package/nitrogen/generated/apple/swift/Promise_swift__String.swift +102 -0
- package/nitrogen/generated/apple/swift/Promise_void.swift +100 -0
- package/nitrogen/generated/apple/swift/Record_swift__String_swift__String.swift +48 -0
- package/nitrogen/generated/apple/swift/ResponseType.swift +74 -0
- package/nitrogen/generated/apple/swift/Variant_ArrayBuffer_String.swift +69 -0
- package/nitrogen/generated/hybrid-classes.json +29 -0
- package/nitrogen/generated/shared/c++/ReactNitroNetworkingCxxModule.cpp +2 -0
- package/nitrogen/generated/shared/c++/include/ReactNitroNetworking/ReactNitroNetworkingCxxModule.hpp +2 -0
- package/nitrogen/generated/shared/javascript/Networking.cjs +19 -0
- package/nitrogen/generated/shared/javascript/Networking.d.cts +9 -0
- package/nitrogen/generated/shared/javascript/Response.cjs +19 -0
- package/nitrogen/generated/shared/javascript/Response.d.cts +9 -0
- package/nitrogen/generated/shared/javascript/WebSocket.cjs +19 -0
- package/nitrogen/generated/shared/javascript/WebSocket.d.cts +9 -0
- package/package.json +34 -4
- package/src/ListenerSubscription.ts +7 -0
- package/src/ResponseType.ts +8 -0
- package/src/index.ts +5 -0
- package/src/specs/Networking.nitro.ts +18 -0
- package/src/specs/Response.nitro.ts +37 -0
- package/src/specs/WebSocket.nitro.ts +62 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridWebSocketSpec.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/margelo/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
public import NitroModules
|
|
9
|
+
|
|
10
|
+
/// See ``HybridWebSocketSpec``
|
|
11
|
+
public protocol HybridWebSocketSpec_protocol: HybridWebSocketSpec_base, HybridObject {
|
|
12
|
+
// Constructor
|
|
13
|
+
init(url: String) throws
|
|
14
|
+
|
|
15
|
+
// Properties
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
// Methods
|
|
19
|
+
func send(data: Variant_ArrayBuffer_String) throws -> any Promise<Void>
|
|
20
|
+
func close() throws -> Void
|
|
21
|
+
func addOnOpenedListener(listener: any Callback<(), Void>) throws -> ListenerSubscription
|
|
22
|
+
func addOnMessageReceivedListener(listener: any Callback<(/* data */ Variant_ArrayBuffer_String), Void>) throws -> ListenerSubscription
|
|
23
|
+
func addOnClosedListener(listener: any Callback<(), Void>) throws -> ListenerSubscription
|
|
24
|
+
func addOnErrorListener(listener: any Callback<(/* error */ any Error), Void>) throws -> ListenerSubscription
|
|
25
|
+
|
|
26
|
+
// Static Properties
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
// Static Methods
|
|
30
|
+
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public extension HybridWebSocketSpec_protocol {
|
|
34
|
+
/// Default implementation of ``HybridObject.toString``
|
|
35
|
+
func toString() -> String {
|
|
36
|
+
return "[HybridObject WebSocket]"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/// See ``HybridWebSocketSpec``
|
|
41
|
+
open class HybridWebSocketSpec_base {
|
|
42
|
+
private weak var cxxWrapper: HybridWebSocketSpec_cxx? = nil
|
|
43
|
+
public init() throws {
|
|
44
|
+
}
|
|
45
|
+
public final func getCxxWrapper() -> HybridWebSocketSpec_cxx {
|
|
46
|
+
#if DEBUG
|
|
47
|
+
guard self is any HybridWebSocketSpec else {
|
|
48
|
+
fatalError("`self` is not a `HybridWebSocketSpec`! Did you accidentally inherit from `HybridWebSocketSpec_base` instead of `HybridWebSocketSpec`?")
|
|
49
|
+
}
|
|
50
|
+
#endif
|
|
51
|
+
if let cxxWrapper = self.cxxWrapper {
|
|
52
|
+
return cxxWrapper
|
|
53
|
+
} else {
|
|
54
|
+
let cxxWrapper = HybridWebSocketSpec_cxx(self as! any HybridWebSocketSpec)
|
|
55
|
+
self.cxxWrapper = cxxWrapper
|
|
56
|
+
return cxxWrapper
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* A Swift base-protocol representing the WebSocket HybridObject.
|
|
63
|
+
* Implement this protocol to create Swift-based instances of WebSocket.
|
|
64
|
+
* ```swift
|
|
65
|
+
* class HybridWebSocket : HybridWebSocketSpec {
|
|
66
|
+
* // ...
|
|
67
|
+
* }
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
public typealias HybridWebSocketSpec = HybridWebSocketSpec_protocol & HybridWebSocketSpec_base
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridWebSocketSpec_cxx.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/margelo/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
internal import NitroModules
|
|
8
|
+
internal import CxxStdlib
|
|
9
|
+
internal import ReactNitroNetworkingAppleCxx
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* A class implementation that bridges HybridWebSocketSpec over to C++.
|
|
13
|
+
* In C++, we cannot use Swift protocols - so we need to wrap it in a class to make it strongly defined.
|
|
14
|
+
*/
|
|
15
|
+
@_expose(Cxx)
|
|
16
|
+
public final class HybridWebSocketSpec_cxx {
|
|
17
|
+
/**
|
|
18
|
+
* The Swift <> C++ bridge's namespace (`margelo::nitro::networking::swift_bridge`)
|
|
19
|
+
* from `ReactNitroNetworkingAppleCxx/ReactNitroNetworkingAppleCxx.h`.
|
|
20
|
+
* This contains specialized C++ templates, and C++ helper functions that can be accessed from Swift.
|
|
21
|
+
*/
|
|
22
|
+
public typealias bridge = margelo.nitro.networking.swift_bridge
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Holds the Swift implementation of `HybridWebSocketSpec`.
|
|
26
|
+
*/
|
|
27
|
+
private let __implementation: HybridWebSocket
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Holds a weak pointer to the C++ class that wraps the Swift class.
|
|
31
|
+
*/
|
|
32
|
+
private var __cxxPart: bridge.std__weak_ptr_margelo__nitro__networking__HybridWebSocketSpec_ = .init()
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Create a new `HybridWebSocketSpec_cxx` that wraps the given `HybridWebSocketSpec`.
|
|
36
|
+
*/
|
|
37
|
+
public init(_ implementation: any HybridWebSocketSpec) {
|
|
38
|
+
guard let implementation = implementation as? HybridWebSocket else {
|
|
39
|
+
preconditionFailure("WebSocket selects HybridWebSocket as its Swift implementation. Every instance must inherit HybridWebSocket.")
|
|
40
|
+
}
|
|
41
|
+
self.__implementation = implementation
|
|
42
|
+
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Get the actual `HybridWebSocketSpec` instance this class wraps.
|
|
47
|
+
*/
|
|
48
|
+
@inline(__always)
|
|
49
|
+
public func getHybridWebSocketSpec() -> any HybridWebSocketSpec {
|
|
50
|
+
return __implementation
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Casts this instance to a retained unsafe raw pointer.
|
|
55
|
+
* This acquires one additional strong reference on the object!
|
|
56
|
+
*/
|
|
57
|
+
public func toUnsafe() -> UnsafeMutableRawPointer {
|
|
58
|
+
return Unmanaged.passRetained(self).toOpaque()
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Casts an unsafe pointer to a `HybridWebSocketSpec_cxx`.
|
|
63
|
+
* The pointer has to be a retained opaque `Unmanaged<HybridWebSocketSpec_cxx>`.
|
|
64
|
+
* This removes one strong reference from the object!
|
|
65
|
+
*/
|
|
66
|
+
public class func fromUnsafe(pointer: UnsafeMutableRawPointer) -> HybridWebSocketSpec_cxx {
|
|
67
|
+
return Unmanaged<HybridWebSocketSpec_cxx>.fromOpaque(pointer).takeRetainedValue()
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Gets (or creates) the C++ part of this Hybrid Object.
|
|
72
|
+
* This handle keeps the original native object alive.
|
|
73
|
+
*/
|
|
74
|
+
public func getCxxPart() -> bridge.std__shared_ptr_margelo__nitro__networking__HybridWebSocketSpec_ {
|
|
75
|
+
let cached = __cxxPart.lock()
|
|
76
|
+
if cached.use_count() > 0 {
|
|
77
|
+
return cached
|
|
78
|
+
}
|
|
79
|
+
let value = bridge.create_std__shared_ptr_margelo__nitro__networking__HybridWebSocketSpec_(self.toUnsafe())
|
|
80
|
+
__cxxPart = bridge.weakify_std__shared_ptr_margelo__nitro__networking__HybridWebSocketSpec_(value)
|
|
81
|
+
return value
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
// A static borrowing accessor lets C++ pass a const reference without copying it.
|
|
87
|
+
// TODO: Remove this adapter and call the instance method directly once
|
|
88
|
+
// https://github.com/swiftlang/swift/pull/92862 is merged and supported by our Swift toolchain.
|
|
89
|
+
@_spi(NitroCxx)
|
|
90
|
+
public static func getCxxPart(_ value: borrowing HybridWebSocketSpec_cxx) -> bridge.std__shared_ptr_margelo__nitro__networking__HybridWebSocketSpec_ {
|
|
91
|
+
return value.getCxxPart()
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Get the memory size of the Swift class (plus size of any other allocations)
|
|
96
|
+
* so the JS VM can properly track it and garbage-collect the JS object if needed.
|
|
97
|
+
*/
|
|
98
|
+
@inline(__always)
|
|
99
|
+
public var memorySize: Int {
|
|
100
|
+
return MemoryHelper.getSizeOf(__implementation) + __implementation.memorySize
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Compares this object with the given [other] object for reference equality.
|
|
105
|
+
*/
|
|
106
|
+
@inline(__always)
|
|
107
|
+
public func equals(other: HybridWebSocketSpec_cxx) -> Bool {
|
|
108
|
+
return __implementation === other.__implementation
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Call dispose() on the Swift class.
|
|
113
|
+
* This _may_ be called manually from JS.
|
|
114
|
+
*/
|
|
115
|
+
@inline(__always)
|
|
116
|
+
public func dispose() {
|
|
117
|
+
__implementation.dispose()
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Call toString() on the Swift class.
|
|
122
|
+
*/
|
|
123
|
+
@inline(__always)
|
|
124
|
+
public func toString() -> String {
|
|
125
|
+
return __implementation.toString()
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// Properties
|
|
129
|
+
|
|
130
|
+
// Methods
|
|
131
|
+
|
|
132
|
+
public final func send(data: Variant_ArrayBuffer_String_cxx, __outResult: UnsafeMutableRawPointer) -> bridge.Result_void {
|
|
133
|
+
do {
|
|
134
|
+
let value = try __implementation.send(data: data.value)
|
|
135
|
+
__outResult.initializeMemory(as: margelo.nitro.networking.swift_bridge.Promise_void.self, repeating: value.toCpp(), count: 1)
|
|
136
|
+
return bridge.Result_void.withValue()
|
|
137
|
+
} catch {
|
|
138
|
+
return bridge.Result_void.withError(error.toCpp())
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
public final func close() -> bridge.Result_void {
|
|
143
|
+
do {
|
|
144
|
+
try __implementation.close()
|
|
145
|
+
return bridge.Result_void.withValue()
|
|
146
|
+
} catch {
|
|
147
|
+
return bridge.Result_void.withError(error.toCpp())
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
public final func addOnOpenedListener(listener: UnsafeRawPointer, __outResult: UnsafeMutableRawPointer) -> bridge.Result_void {
|
|
152
|
+
do {
|
|
153
|
+
let value = try __implementation.addOnOpenedListener(listener: listener.load(as: margelo.nitro.networking.swift_bridge.Callback_void.self))
|
|
154
|
+
__outResult.assumingMemoryBound(to: ListenerSubscription.self).initialize(to: value)
|
|
155
|
+
return bridge.Result_void.withValue()
|
|
156
|
+
} catch {
|
|
157
|
+
return bridge.Result_void.withError(error.toCpp())
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
public final func addOnMessageReceivedListener(listener: UnsafeRawPointer, __outResult: UnsafeMutableRawPointer) -> bridge.Result_void {
|
|
162
|
+
do {
|
|
163
|
+
let value = try __implementation.addOnMessageReceivedListener(listener: listener.load(as: margelo.nitro.networking.swift_bridge.Callback_void___ReactNitroNetworking__Variant_ArrayBuffer_String_cxx.self))
|
|
164
|
+
__outResult.assumingMemoryBound(to: ListenerSubscription.self).initialize(to: value)
|
|
165
|
+
return bridge.Result_void.withValue()
|
|
166
|
+
} catch {
|
|
167
|
+
return bridge.Result_void.withError(error.toCpp())
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
public final func addOnClosedListener(listener: UnsafeRawPointer, __outResult: UnsafeMutableRawPointer) -> bridge.Result_void {
|
|
172
|
+
do {
|
|
173
|
+
let value = try __implementation.addOnClosedListener(listener: listener.load(as: margelo.nitro.networking.swift_bridge.Callback_void.self))
|
|
174
|
+
__outResult.assumingMemoryBound(to: ListenerSubscription.self).initialize(to: value)
|
|
175
|
+
return bridge.Result_void.withValue()
|
|
176
|
+
} catch {
|
|
177
|
+
return bridge.Result_void.withError(error.toCpp())
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
public final func addOnErrorListener(listener: UnsafeRawPointer, __outResult: UnsafeMutableRawPointer) -> bridge.Result_void {
|
|
182
|
+
do {
|
|
183
|
+
let value = try __implementation.addOnErrorListener(listener: listener.load(as: margelo.nitro.networking.swift_bridge.Callback_void_std__exception_ptr.self))
|
|
184
|
+
__outResult.assumingMemoryBound(to: ListenerSubscription.self).initialize(to: value)
|
|
185
|
+
return bridge.Result_void.withValue()
|
|
186
|
+
} catch {
|
|
187
|
+
return bridge.Result_void.withError(error.toCpp())
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
// Constructor
|
|
192
|
+
|
|
193
|
+
public class func constructor(url: String) -> bridge.Result_void_ {
|
|
194
|
+
do {
|
|
195
|
+
let value = try HybridWebSocket(url: url)
|
|
196
|
+
return bridge.Result_void_.withValue(value.getCxxWrapper().toUnsafe())
|
|
197
|
+
} catch {
|
|
198
|
+
return bridge.Result_void_.withError(error.toCpp())
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// ListenerSubscription.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/margelo/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
public import NitroModules
|
|
9
|
+
internal import ReactNitroNetworkingAppleCxx
|
|
10
|
+
internal import CxxStdlib
|
|
11
|
+
|
|
12
|
+
@_expose(Cxx)
|
|
13
|
+
public struct ListenerSubscription: Sendable {
|
|
14
|
+
public let remove: any Callback<(), Void>
|
|
15
|
+
|
|
16
|
+
public init(remove: any Callback<(), Void>) {
|
|
17
|
+
self.remove = remove
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@_spi(NitroCxx)
|
|
21
|
+
public static func init_cxx(_ remove: UnsafeRawPointer) -> Self {
|
|
22
|
+
return Self(remove: remove.load(as: margelo.nitro.networking.swift_bridge.Callback_void.self))
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@_spi(NitroCxx)
|
|
26
|
+
public borrowing func getRemove_cxx(_ __outResult: UnsafeMutableRawPointer) -> Void {
|
|
27
|
+
__outResult.initializeMemory(as: margelo.nitro.networking.swift_bridge.Callback_void.self, repeating: self.remove.toCpp(), count: 1)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Promise_ArrayBuffer.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/margelo/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
public import NitroModules
|
|
9
|
+
internal import CxxStdlib
|
|
10
|
+
public import Dispatch
|
|
11
|
+
internal import ReactNitroNetworkingAppleCxx
|
|
12
|
+
|
|
13
|
+
public typealias Promise_ArrayBuffer = margelo.nitro.networking.swift_bridge.Promise_ArrayBuffer
|
|
14
|
+
|
|
15
|
+
extension Promise_ArrayBuffer {
|
|
16
|
+
public typealias T = ArrayBuffer
|
|
17
|
+
private typealias bridge = margelo.nitro.networking.swift_bridge
|
|
18
|
+
|
|
19
|
+
public func __nitroResolve(result: ArrayBuffer) {
|
|
20
|
+
resolve(consuming: result)
|
|
21
|
+
}
|
|
22
|
+
public func __nitroReject(error: any Error) {
|
|
23
|
+
reject(consuming: error.toCpp())
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public func __nitroAddOnResolvedListener(_ listener: @escaping @Sendable (ArrayBuffer) -> Void) {
|
|
27
|
+
addOnResolvedListener(.init { (value: ArrayBuffer) -> Void in
|
|
28
|
+
listener(value)
|
|
29
|
+
})
|
|
30
|
+
}
|
|
31
|
+
public func __nitroAddOnRejectedListener(_ listener: @escaping @Sendable (any Error) -> Void) {
|
|
32
|
+
addOnRejectedListener(.init { (exceptionPtr: std.exception_ptr) -> Void in
|
|
33
|
+
listener(RuntimeError.from(cppError: exceptionPtr))
|
|
34
|
+
})
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
extension Promise<ArrayBuffer> where Self == Promise_ArrayBuffer {
|
|
39
|
+
public static func pending() -> Self {
|
|
40
|
+
return Promise_ArrayBuffer.__pending()
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
public static func resolved(with result: ArrayBuffer) -> Self {
|
|
44
|
+
let promise = Promise_ArrayBuffer.pending()
|
|
45
|
+
promise.resolve(result: result)
|
|
46
|
+
return promise
|
|
47
|
+
}
|
|
48
|
+
public static func rejected(with error: any Error) -> Self {
|
|
49
|
+
let promise = Promise_ArrayBuffer.pending()
|
|
50
|
+
promise.reject(error: error)
|
|
51
|
+
return promise
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public static func `async`(
|
|
55
|
+
_ priority: TaskPriority? = nil,
|
|
56
|
+
_ run: sending @escaping @isolated(any) () async throws -> sending ArrayBuffer
|
|
57
|
+
) -> Self {
|
|
58
|
+
let promise = Promise_ArrayBuffer.pending()
|
|
59
|
+
Task(priority: priority) { () async -> Void in
|
|
60
|
+
do {
|
|
61
|
+
promise.resolve(result: try await run())
|
|
62
|
+
} catch {
|
|
63
|
+
promise.reject(error: error)
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return promise
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
public static func parallel(
|
|
70
|
+
_ queue: DispatchQueue = .global(),
|
|
71
|
+
_ run: @escaping @Sendable () throws -> ArrayBuffer
|
|
72
|
+
) -> Self {
|
|
73
|
+
let promise = Promise_ArrayBuffer.pending()
|
|
74
|
+
queue.async { () -> Void in
|
|
75
|
+
do {
|
|
76
|
+
promise.resolve(result: try run())
|
|
77
|
+
} catch {
|
|
78
|
+
promise.reject(error: error)
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return promise
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
extension Promise<ArrayBuffer> {
|
|
86
|
+
func toCpp() -> Promise_ArrayBuffer {
|
|
87
|
+
if let self = self as? Promise_ArrayBuffer {
|
|
88
|
+
return self
|
|
89
|
+
} else {
|
|
90
|
+
let promise = Promise_ArrayBuffer.pending()
|
|
91
|
+
self.addOnResolvedListener { (result: ArrayBuffer) -> Void in
|
|
92
|
+
promise.resolve(result: result)
|
|
93
|
+
}
|
|
94
|
+
self.addOnRejectedListener { (error: any Error) -> Void in
|
|
95
|
+
promise.reject(error: error)
|
|
96
|
+
}
|
|
97
|
+
return promise
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Promise_NitroModules__AnyJSON.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/margelo/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
public import NitroModules
|
|
9
|
+
internal import CxxStdlib
|
|
10
|
+
public import Dispatch
|
|
11
|
+
internal import ReactNitroNetworkingAppleCxx
|
|
12
|
+
|
|
13
|
+
public typealias Promise_NitroModules__AnyJSON = margelo.nitro.networking.swift_bridge.Promise_NitroModules__AnyJSON
|
|
14
|
+
|
|
15
|
+
extension Promise_NitroModules__AnyJSON {
|
|
16
|
+
public typealias T = AnyJSON
|
|
17
|
+
private typealias bridge = margelo.nitro.networking.swift_bridge
|
|
18
|
+
|
|
19
|
+
public func __nitroResolve(result: AnyJSON) {
|
|
20
|
+
withUnsafePointer(to: result) { (pointer: UnsafePointer<AnyJSON>) -> Void in
|
|
21
|
+
bridge.resolve_Promise_NitroModules__AnyJSON(self, pointer)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
public func __nitroReject(error: any Error) {
|
|
25
|
+
bridge.reject_Promise_NitroModules__AnyJSON(self, error.toCpp())
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
public func __nitroAddOnResolvedListener(_ listener: @escaping @Sendable (AnyJSON) -> Void) {
|
|
29
|
+
bridge.listen_Promise_NitroModules__AnyJSON(self, .init { (value: UnsafeRawPointer!) -> Void in
|
|
30
|
+
listener(value.load(as: AnyJSON.self))
|
|
31
|
+
})
|
|
32
|
+
}
|
|
33
|
+
public func __nitroAddOnRejectedListener(_ listener: @escaping @Sendable (any Error) -> Void) {
|
|
34
|
+
bridge.listenRejected_Promise_NitroModules__AnyJSON(self, .init { (exceptionPtr: std.exception_ptr) -> Void in
|
|
35
|
+
listener(RuntimeError.from(cppError: exceptionPtr))
|
|
36
|
+
})
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
extension Promise<AnyJSON> where Self == Promise_NitroModules__AnyJSON {
|
|
41
|
+
public static func pending() -> Self {
|
|
42
|
+
return margelo.nitro.networking.swift_bridge.create_Promise_NitroModules__AnyJSON()
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
public static func resolved(with result: AnyJSON) -> Self {
|
|
46
|
+
let promise = Promise_NitroModules__AnyJSON.pending()
|
|
47
|
+
promise.resolve(result: result)
|
|
48
|
+
return promise
|
|
49
|
+
}
|
|
50
|
+
public static func rejected(with error: any Error) -> Self {
|
|
51
|
+
let promise = Promise_NitroModules__AnyJSON.pending()
|
|
52
|
+
promise.reject(error: error)
|
|
53
|
+
return promise
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
public static func `async`(
|
|
57
|
+
_ priority: TaskPriority? = nil,
|
|
58
|
+
_ run: sending @escaping @isolated(any) () async throws -> sending AnyJSON
|
|
59
|
+
) -> Self {
|
|
60
|
+
let promise = Promise_NitroModules__AnyJSON.pending()
|
|
61
|
+
Task(priority: priority) { () async -> Void in
|
|
62
|
+
do {
|
|
63
|
+
promise.resolve(result: try await run())
|
|
64
|
+
} catch {
|
|
65
|
+
promise.reject(error: error)
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return promise
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
public static func parallel(
|
|
72
|
+
_ queue: DispatchQueue = .global(),
|
|
73
|
+
_ run: @escaping @Sendable () throws -> AnyJSON
|
|
74
|
+
) -> Self {
|
|
75
|
+
let promise = Promise_NitroModules__AnyJSON.pending()
|
|
76
|
+
queue.async { () -> Void in
|
|
77
|
+
do {
|
|
78
|
+
promise.resolve(result: try run())
|
|
79
|
+
} catch {
|
|
80
|
+
promise.reject(error: error)
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return promise
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
extension Promise<AnyJSON> {
|
|
88
|
+
func toCpp() -> Promise_NitroModules__AnyJSON {
|
|
89
|
+
if let self = self as? Promise_NitroModules__AnyJSON {
|
|
90
|
+
return self
|
|
91
|
+
} else {
|
|
92
|
+
let promise = Promise_NitroModules__AnyJSON.pending()
|
|
93
|
+
self.addOnResolvedListener { (result: AnyJSON) -> Void in
|
|
94
|
+
promise.resolve(result: result)
|
|
95
|
+
}
|
|
96
|
+
self.addOnRejectedListener { (error: any Error) -> Void in
|
|
97
|
+
promise.reject(error: error)
|
|
98
|
+
}
|
|
99
|
+
return promise
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
package/nitrogen/generated/apple/swift/Promise___ReactNitroNetworking__HybridResponseSpec_cxx.swift
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Promise___ReactNitroNetworking__HybridResponseSpec_cxx.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/margelo/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
public import NitroModules
|
|
9
|
+
internal import CxxStdlib
|
|
10
|
+
public import Dispatch
|
|
11
|
+
internal import ReactNitroNetworkingAppleCxx
|
|
12
|
+
|
|
13
|
+
public typealias Promise___ReactNitroNetworking__HybridResponseSpec_cxx = margelo.nitro.networking.swift_bridge.Promise___ReactNitroNetworking__HybridResponseSpec_cxx
|
|
14
|
+
|
|
15
|
+
extension Promise___ReactNitroNetworking__HybridResponseSpec_cxx {
|
|
16
|
+
public typealias T = (any HybridResponseSpec)
|
|
17
|
+
private typealias bridge = margelo.nitro.networking.swift_bridge
|
|
18
|
+
|
|
19
|
+
public func __nitroResolve(result: (any HybridResponseSpec)) {
|
|
20
|
+
withUnsafePointer(to: result.getCxxWrapper()) { (pointer: UnsafePointer<HybridResponseSpec_cxx>) -> Void in
|
|
21
|
+
bridge.resolve_Promise___ReactNitroNetworking__HybridResponseSpec_cxx(self, pointer)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
public func __nitroReject(error: any Error) {
|
|
25
|
+
bridge.reject_Promise___ReactNitroNetworking__HybridResponseSpec_cxx(self, error.toCpp())
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
public func __nitroAddOnResolvedListener(_ listener: @escaping @Sendable ((any HybridResponseSpec)) -> Void) {
|
|
29
|
+
bridge.listen_Promise___ReactNitroNetworking__HybridResponseSpec_cxx(self, .init { (value: UnsafeRawPointer!) -> Void in
|
|
30
|
+
listener(value.load(as: HybridResponseSpec_cxx.self).getHybridResponseSpec())
|
|
31
|
+
})
|
|
32
|
+
}
|
|
33
|
+
public func __nitroAddOnRejectedListener(_ listener: @escaping @Sendable (any Error) -> Void) {
|
|
34
|
+
bridge.listenRejected_Promise___ReactNitroNetworking__HybridResponseSpec_cxx(self, .init { (exceptionPtr: std.exception_ptr) -> Void in
|
|
35
|
+
listener(RuntimeError.from(cppError: exceptionPtr))
|
|
36
|
+
})
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
extension Promise<(any HybridResponseSpec)> where Self == Promise___ReactNitroNetworking__HybridResponseSpec_cxx {
|
|
41
|
+
public static func pending() -> Self {
|
|
42
|
+
return margelo.nitro.networking.swift_bridge.create_Promise___ReactNitroNetworking__HybridResponseSpec_cxx()
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
public static func resolved(with result: (any HybridResponseSpec)) -> Self {
|
|
46
|
+
let promise = Promise___ReactNitroNetworking__HybridResponseSpec_cxx.pending()
|
|
47
|
+
promise.resolve(result: result)
|
|
48
|
+
return promise
|
|
49
|
+
}
|
|
50
|
+
public static func rejected(with error: any Error) -> Self {
|
|
51
|
+
let promise = Promise___ReactNitroNetworking__HybridResponseSpec_cxx.pending()
|
|
52
|
+
promise.reject(error: error)
|
|
53
|
+
return promise
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
public static func `async`(
|
|
57
|
+
_ priority: TaskPriority? = nil,
|
|
58
|
+
_ run: sending @escaping @isolated(any) () async throws -> sending (any HybridResponseSpec)
|
|
59
|
+
) -> Self {
|
|
60
|
+
let promise = Promise___ReactNitroNetworking__HybridResponseSpec_cxx.pending()
|
|
61
|
+
Task(priority: priority) { () async -> Void in
|
|
62
|
+
do {
|
|
63
|
+
promise.resolve(result: try await run())
|
|
64
|
+
} catch {
|
|
65
|
+
promise.reject(error: error)
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return promise
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
public static func parallel(
|
|
72
|
+
_ queue: DispatchQueue = .global(),
|
|
73
|
+
_ run: @escaping @Sendable () throws -> (any HybridResponseSpec)
|
|
74
|
+
) -> Self {
|
|
75
|
+
let promise = Promise___ReactNitroNetworking__HybridResponseSpec_cxx.pending()
|
|
76
|
+
queue.async { () -> Void in
|
|
77
|
+
do {
|
|
78
|
+
promise.resolve(result: try run())
|
|
79
|
+
} catch {
|
|
80
|
+
promise.reject(error: error)
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return promise
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
extension Promise<(any HybridResponseSpec)> {
|
|
88
|
+
func toCpp() -> Promise___ReactNitroNetworking__HybridResponseSpec_cxx {
|
|
89
|
+
if let self = self as? Promise___ReactNitroNetworking__HybridResponseSpec_cxx {
|
|
90
|
+
return self
|
|
91
|
+
} else {
|
|
92
|
+
let promise = Promise___ReactNitroNetworking__HybridResponseSpec_cxx.pending()
|
|
93
|
+
self.addOnResolvedListener { (result: (any HybridResponseSpec)) -> Void in
|
|
94
|
+
promise.resolve(result: result)
|
|
95
|
+
}
|
|
96
|
+
self.addOnRejectedListener { (error: any Error) -> Void in
|
|
97
|
+
promise.reject(error: error)
|
|
98
|
+
}
|
|
99
|
+
return promise
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|