|
BuilderConfig
コマンドライン引数の解釈.
はじめにlibtaiju を用いるコマンドにおいて, トライの種類やノードの配置順序を容易に切り替えられるように, --taiju- で始まるコマンドラインオプションを解釈するためのクラス taiju::BuilderConfig を taiju/builder-config.h で定義しています. クラスの定義オブジェクトを作成した時点では,すべてデフォルト値です. taiju::BuilderConfig::parse() に argc, argv を渡せば, --taiju- で始まるオプションのみを取り出すことができます. class BuilderConfig
{
public:
BuilderConfig();
~BuilderConfig();
TrieType trie_type() const;
IndexType index_type() const;
NodeOrder node_order() const;
void set_trie_type(TrieType trie_type);
void set_index_type(IndexType index_type);
void set_node_order(NodeOrder node_order);
void parse(int argc, char **argv, int *argc_ptr = NULL);
void clear();
void swap(BuilderConfig *target);
static const char *help();アクセサtaiju::BuilderConfig で設定できる内容は,トライの種類 taiju::TrieType, ビットベクターの索引種別 taiju::IndexType, ノードの配置順序 taiju::IndexType で, それぞれにアクセスするための関数が定義されています. TrieType trie_type() const; IndexType index_type() const; NodeOrder node_order() const; void set_trie_type(TrieType trie_type); void set_index_type(IndexType index_type); void set_node_order(NodeOrder node_order); コマンド引数の解釈コマンド引数を受け取り,--taiju- で始まるオプションのみを切り出します. 該当するオプションは argv から取り除かれるため, 残りの引数を用いる場合,引数の数を argc_ptr で受け取る必要があります. --taiju- で始まる不正なオプションがあれば例外を投げます. void parse(int argc, char **argv, int *argc_ptr = NULL); 指定可能なオプションは以下の通りです. 設定の詳細については,IntTypes を参照してください.
使い方の表示使い方として表示できる文字列を返します. static const char *help(); taiju::BuilderConfig::help() の返す文字列を std::cout や std::cerr に渡せば, 指定できるオプションの一覧が表示されます. |