diff --git a/Sources/ElixxirDAppsSDK/Callbacks/UdNetworkStatus.swift b/Sources/ElixxirDAppsSDK/Callbacks/UdNetworkStatus.swift new file mode 100644 index 0000000000000000000000000000000000000000..70975b7d68ac2a82801bd6365445e7bb476c9940 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/Callbacks/UdNetworkStatus.swift @@ -0,0 +1,34 @@ +import Bindings +import XCTestDynamicOverlay + +public struct UdNetworkStatus { + public init(handle: @escaping () -> Int) { + self.handle = handle + } + + public var handle: () -> Int +} + +extension UdNetworkStatus { + public static let unimplemented = UdNetworkStatus( + handle: XCTUnimplemented("\(Self.self)") + ) +} + +extension UdNetworkStatus { + func makeBindingsUdNetworkStatus() -> BindingsUdNetworkStatusProtocol { + class CallbackObject: NSObject, BindingsUdNetworkStatusProtocol { + init(_ callback: UdNetworkStatus) { + self.callback = callback + } + + let callback: UdNetworkStatus + + func udNetworkStatus() -> Int { + callback.handle() + } + } + + return CallbackObject(self) + } +}