2

C++ アプリケーションのスクリプト言語としてSquirrelを使用する予定です。当然のことながら、C++ コードとやり取りするための API が必要です (C++ プログラムの属性へのアクセスや変更など)。この API は、一連のクラス、列挙型、および関数で構成されます。

Sqrat のように、単一の C++ 関数を Squirrel VM にバインドするのを 1 行のコードの問題にするユーティリティがありますが、それでも満足のいくものではありません。実際にすべてのインターフェースを実行するには、両方の C++ クラスとそれらの関数を作成する必要があります。そして、これらの C++ 関数をスクリプトでも認識できるようにするために、すべてのバインディングを維持する必要があります。私の意図は、この二重のメンテナンス オーバーヘッドを取り除くことです。

だから私が欲しいのは、すべての C++ クラスと関数を含む既存のヘッダー ファイルを取得し、このファイルから API 登録呼び出しを生成するツールです。もちろん、すべての関数のドキュメントを自動的に生成することもできれば便利です (それが HTML であっても、関数定義 + コメントなどを含む単なる Squirrel スクリプトであっても問題ありません)。

SWIG があることは知っていますが、バインディング Squirrel がありません。とにかく、それは私が探しているものとはまったく異なります。結局のところ、Squirrel コードではなく、C++ ラッパー コードを作成する必要があります。Flexを見たことがありますが、それが私が探しているものかどうかもわかりません。それで、私が望むことを行うツールはありますか (C/C++ ヘッダーからのラッパー コードと API ドキュメントの作成を自動化します)。それ以外の場合は、単純な関数とクラスの定義を解析できる独自の小さな C++ パーサーを作成する必要があると思います。

4

0 に答える 0