Avatar
omochimetaru 10/5/2018 7:10 AM
そうですね
7:10 AM
Swiftで継承とプロトコルとprotocol extensionが絡んだ時に呼び出されるメソッドがわかりづらい事があるのでまとめました。

バージョン

``` $ swift --version Apple Swift v...
7:11 AM
↑ここに書いてるけど、その例の方がシンプルだ
7:11 AM
func r()func o() は、プロトコル定義にエントリがあるから
7:11 AM
プロトコルとして呼び出したときにwitness tableを参照する
7:12 AM
func p() はプロトコル定義にエントリがないから
7:12 AM
witness tableにもエントリがないので
7:12 AM
静的ディスパッチになる。