Avatar
@swift-main protocol View { } struct FooView: View { } struct BarView: View { } struct TupleView<T>: View { let content: T init(_ content: T) { self.content = content } } func buildBlock<C0, C1>(_ c0: C0, _ c1: C1) -> TupleView<(C0, C1)> where C0 : View, C1 : View { TupleView((c0, c1)) } let view0: any View = FooView() let view1: any View = BarView() print(buildBlock(view0, view1))