Foo<UIView>
に対して ==
を UIView
同士の比較に制限し、それが呼び出されたときは NSObject
の ==
(の先にある isEqual
が呼ばれるのはいいとして、その場合 UIView
は Equatable
に準拠していると言えると思うけど、 UIView
のリファレンスに載ってないのはドキュメント上の問題なのかな? (edited)UIView
は Equatable
に準拠している」で合ってると思います。 「親クラスを経由して準拠している」のか「自分で準拠している」のかは、違いをもたらさないはず。 SR-103は、「親クラスで準拠する時にデフォルト実装を選択している」だから「子も準拠している」と考えてよくて、特に↑とは矛盾しない。 (edited)