Skip to content
Snippets Groups Projects

Use codable models in API

1 file
+ 8
3
Compare changes
  • Side-by-side
  • Inline
import Bindings
import Bindings
public struct ContactFromIdentityProvider {
public struct ContactFromIdentityProvider {
public var get: (Data) throws -> Data
public var get: (Identity) throws -> Data
public func callAsFunction(identity: Data) throws -> Data {
public func callAsFunction(identity: Identity) throws -> Data {
try get(identity)
try get(identity)
}
}
}
}
extension ContactFromIdentityProvider {
extension ContactFromIdentityProvider {
public static func live(bindingsClient: BindingsClient) -> ContactFromIdentityProvider {
public static func live(bindingsClient: BindingsClient) -> ContactFromIdentityProvider {
ContactFromIdentityProvider(get: bindingsClient.getContactFromIdentity(_:))
ContactFromIdentityProvider { identity in
 
let encoder = JSONEncoder()
 
let identityData = try encoder.encode(identity)
 
let contactData = try bindingsClient.getContactFromIdentity(identityData)
 
return contactData
 
}
}
}
}
}
Loading