Avatar
omochimetaru 9/6/2021 1:48 AM
長かったけど読み終わった
1:49 AM
distributed func は、ビルドすると ローカル/リモート分岐するthunkにラップされて、実装したコードはローカル版の実装になり
1:49 AM
リモート版は _remote_<method name> というクラッシュするだけの関数になっていて (edited)
1:50 AM
これを dynamicReplacement で実装を入れ込むそうな
1:51 AM
ActorTransportライブラリが、SwiftPMのextension packageを使って、コード生成を行う事を想定していて
1:51 AM
これによって、distributedメソッドごとに、メッセージ生成と送信の処理を生成する
1:52 AM
なかなか派手な仕様だけど、
1:52 AM
たしかにSwiftの言語機能だと、メソッド呼び出しそれ自体を抽象化してフックする一級の仕組みは無いから
1:53 AM
とりあえずそうなったっぽい