Avatar
@_specialize(exported: true, where Wrapped == Int, S == [_]) みたいな記述を認めてほしいね。
5:32 AM
この _ が他の構文の where でも書けるなら Parameterized Extension がなくても↓みたいなのもできるし。 extension Optional where Wrapped == _? { func flatten() -> Wrapped.Wrapped? { return flatMap { $0 } } }
5:33 AM
@_specialize(exported: true, where Wrapped == Int, S == [Int]) で警告が出なくなるというのもいいけど、記述が冗長であることは否めない。 Int じゃなくて Foo<Bar<Baz>> とかだと 2 回書くのは大変。