wit2waas
の使用
wit2waas
は、WIT で記述されたインターフェース等を C# のインターフェース定義に変換するスタンドアロンツールです。
Binding Generator と組 み合わせることで、WIT で記述されたインターフェースを C# 上で簡単に扱うことができます。
インストール
Rustのツールチェインをインストールしてから、次のコマンドで wit2waas
をインストールします。
cargo install wit2waas
使い方
WIT の構成
あらかじめ、次のようなディレクトリ構成で WIT を保存します。
- wit
- <your wit>.wit
- <your wit>.wit
- <your wit>.wit
- deps
- <dependency package>
- <dependency>.wit
- <dependency>.wit
- <dependency package>
- <dependency package>
備考
wit-deps
などのツールを使用すると、パッケージレジストリ等からパッケージの依存関係を構成することができます。
wit2waas
の実行
次に、wit
フォルダを含むディレクトリで wit2waas
を実行します。
wit2waas
結果が out
フォルダに出力されます。この中に含まれる *.cs
を C# プロジェクトに配置してください。
オプション
$ wit2waas --help
Usage: wit2waas [OPTIONS]
Options:
-w, --wit-dir <WIT_DIR> [default: wit]
-o, --out <OUT> [default: out]
-h, --help Print help
-V, --version Print version
init
アクセサに関する問題
wit2waas
はレコードの型定義を作成する際に init
アクセサを使用します。
Unity など .NET 5 未満の環境ではデフォルトではコンパイルできませんが、以下のコードを追加することでコンパイル可能になります。
namespace System.Runtime.CompilerServices
{
internal static class IsExternalInit { }
}