Open2
UniWebTsbindgenの構想
UnityWebGLネイティブプラグインをTypeScriptで書きつつ、それのブリッジ実装をSourcegeneratorを使って自動生成する仕組みを作りたい
- TypeScriptで書ける環境を提供
- (特に非同期処理の)ボイラープレートの自動化
- TypeScriptコードのビルド
- この時に型定義ファイルも出力
- C#コンパイル時にSourceGeneratorが動作
- 型定義をパースしてASTを得る
- 型定義のパースをどうするか、信頼できそうなC#実装が無い気がする
- OxcのパーサをRustで使用し、ネイティブプラグインを書き、csbindgenで取得するとか
- ASTから関数一覧を取得し、グルー用の.jslibを生成
- 関数のシグネチャからブリッジ実装コードを生成