Avatar
open func encode<T : Encodable>(_ value: T) throws -> Data {
2:51 AM
JSONEncoder側の <T: Encodable> が
2:51 AM
このTって自動生成のerasureは適用できないんだっけ。
2:53 AM
protocol P {} class Cat : P {} func f<X: P>(_ p: X) {} var a: P = Cat() var b: Cat = Cat() f(a) // NG f(b) // OK
2:53 AM
やっぱそうだ
2:53 AM
さっきのCがダメな理由はこれ↑