Swiftのジェネリクスはどうやって動いているのかコンパイラのソースから探る

3781f49ea2c76d6ecf0c6cda46096d49?s=47 omochimetaru
September 02, 2018

 Swiftのジェネリクスはどうやって動いているのかコンパイラのソースから探る

iOSDC2018で発表しました
https://fortee.jp/iosdc-japan-2018/proposal/3d60b2ae-5841-4f60-8dd7-830377dc110e

Swiftにはジェネリクスという言語機能があり、
利用時の型が不確定なコードを書くことできます。
Swiftには厳密な型システムや、余計なメタ情報を持たない値型などがあるのに、
どのようにしてジェネリクスを動作させているのでしょうか。
このトークではそれを実現する言語機能である
witness tableについて、
コンパイラのソースコードを追いながら解説します。

3781f49ea2c76d6ecf0c6cda46096d49?s=128

omochimetaru

September 02, 2018
Tweet