[Accepted] SE-0279: Multiple Trailing Closures

Today, you can call that API as Binding(get: { ... }) { ... }, which is obviously terrible, and which we can assume people simply don't do. Under this change, you could also call it as Binding { ... } set: { ... }, which is still fairly obviously terrible (albeit somewhat less so, in my mind), and which we can probably continue to assume that people also simply won't do. I don't see a viable route to a rule that actually forces you to call it as Binding(get: { ... }, set: { ... }) without any sort of new annotation, and if we add such an annotation, it can clearly account for multiple trailing closures as well.

5 Likes