Open2

UniWebTsbindgenの構想

にー兄さんにー兄さん

UnityWebGLネイティブプラグインをTypeScriptで書きつつ、それのブリッジ実装をSourcegeneratorを使って自動生成する仕組みを作りたい

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