Skip to content
Snippets Groups Projects

Update Bindings

1 file
+ 39
0
Compare changes
  • Side-by-side
  • Inline
 
import Bindings
 
import XCTestDynamicOverlay
 
 
public struct NewGroupChat {
 
public var run: (Int, GroupRequest, GroupChatProcessor) throws -> GroupChat
 
 
public func callAsFunction(
 
e2eId: Int,
 
groupRequest: GroupRequest,
 
groupChatProcessor: GroupChatProcessor
 
) throws -> GroupChat {
 
try run(e2eId, groupRequest, groupChatProcessor)
 
}
 
}
 
 
extension NewGroupChat {
 
public static let live = NewGroupChat { e2eId, groupRequest, groupChatProcessor in
 
var error: NSError?
 
let bindingsGroupChat = BindingsNewGroupChat(
 
e2eId,
 
groupRequest.makeBindingsGroupRequest(),
 
groupChatProcessor.makeBindingsGroupChatProcessor(),
 
&error
 
)
 
if let error = error {
 
throw error
 
}
 
guard let bindingsGroupChat = bindingsGroupChat else {
 
fatalError("BindingsNewGroupChat returned `nil` without providing error")
 
}
 
return .live(bindingsGroupChat)
 
}
 
}
 
 
extension NewGroupChat {
 
public static let unimplemented = NewGroupChat(
 
run: XCTUnimplemented("\(Self.self)")
 
)
 
}
Loading