Avatar
サブタイプとして振る舞うなら何もしなくてもconformしてほしいし(そうすれば当然 Sequence として振る舞うときは Optional を返し、 ClosedRange として振る舞うときは non-Otional を返す)、それができないならサブタイプのフリをするのやめてほしいなぁ。今更どうしようもないけど。 (edited)
3:36 PM
あれ?↓これもできないんだっけ? class Animal {} class Cat: Animal {} protocol P { func foo() -> Animal } struct S: P { func foo() -> Cat { Cat() } } let s = S() print(s.foo())
3:36 PM
@swift-6.0.3 class Animal {} class Cat: Animal {} protocol P { func foo() -> Animal } struct S: P { func foo() -> Cat { Cat() } } let s = S() print(s.foo())