コマンド ラインとファイルからプログラム オプションを取得できるようにしたいと考えています。
同等のものがない場合、構成ファイルを作成する一般的な方法は何ですか?
boost.po は気に入っていますが、構成ファイルにスクリプトを記述できないのは気に入りません。たとえば、1.41421356 と書く代わりに、sqrt(2) と書くことができます。
コマンド ラインとファイルからプログラム オプションを取得できるようにしたいと考えています。
同等のものがない場合、構成ファイルを作成する一般的な方法は何ですか?
boost.po は気に入っていますが、構成ファイルにスクリプトを記述できないのは気に入りません。たとえば、1.41421356 と書く代わりに、sqrt(2) と書くことができます。
あなたは、お互いにあまり関係がないように思われるいくつかの質問をしています。
Boost.ProgramOptionsは、コマンドラインオプションを解析するためのツールです。このツールの拡張として、ファイル形式からこれらのオプションを取得することもできます。これらは「構成ファイル」ではありません。これらはオプションファイルです。これらには、一連のコマンドラインオプションのように見えるオプションが含まれています。
概念的には、.iniファイル(またはBoost.PropertyTreeから取得できるもの)のように考えることができます。ただし、最終的な形式は、最終的にはコマンドラインオプションの形式のままです--option-name "parameter" -o "next Param"
。
したがって、Boost.ProgramOptionsと同等の「Lua」は、コマンドラインオプションを解析するためのツールになります。このタスクにはいくつかのオプションがあります。
Luaスクリプトに基づいて構築された構成ファイルが必要な場合は、それを行う必要があります。Luaのテーブルコンストラクターは、JavaScriptのJSONによく似た、非常に合理的で人間が読める形式のファイル形式になります。ただし、これらはコマンドラインオプションに直接接続されていません。これは、Luaテーブルとして読み取り、適切と思われる処理を行うLuaスクリプトにすぎません。このテーブルのフラグメントをコピーしてコマンドラインに貼り付けることはできず、Boost.ProgramOptionのオプションファイルの場合と同じように妥当な結果が得られると期待できます。