import Bindings import XCTestDynamicOverlay public struct GroupChatMakeGroup { public var run: ([Data], Data?, Data?) throws -> GroupReport public func callAsFunction( membership: [Data], message: Data?, name: Data? ) throws -> GroupReport { try run(membership, message, name) } } extension GroupChatMakeGroup { public static func live(_ bindingsGroupChat: BindingsGroupChat) -> GroupChatMakeGroup { GroupChatMakeGroup { membership, message, name in let reportData = try bindingsGroupChat.makeGroup( try JSONEncoder().encode(membership), message: message, name: name ) return try GroupReport.decode(reportData) } } } extension GroupChatMakeGroup { public static let unimplemented = GroupChatMakeGroup( run: XCTUnimplemented("\(Self.self)") ) }