blob: 5fc16e1d34716ee389a6e6aaeee3a45d6423ee58 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
//
// MullvadApiCompletion.swift
// MullvadVPN
//
// Created by Jon Petersson on 2025-01-16.
// Copyright © 2025 Mullvad VPN AB. All rights reserved.
//
@_cdecl("mullvad_api_completion_finish")
func mullvadApiCompletionFinish(
response: SwiftMullvadApiResponse,
completionCookie: UnsafeMutableRawPointer
) {
let completionBridge = Unmanaged<MullvadApiCompletion>
.fromOpaque(completionCookie)
.takeRetainedValue()
let apiResponse = MullvadApiResponse(response: response)
completionBridge.completion(apiResponse)
}
public class MullvadApiCompletion {
public var completion: (MullvadApiResponse) -> Void
public init(completion: @escaping ((MullvadApiResponse) -> Void)) {
self.completion = completion
}
}
|