英語版
このページの英語版を見る

dmd.root.response

応答ファイルからコマンドライン引数を解析する。
このファイルは、DMDフロントエンドを使用する他のコンパイラとは共有されない。
Authors:

ソース root/response.d

alias responseExpand = responseExpandFrom!(lookupInEnvironment).responseExpandFrom;
nothrow const(char)* responseExpandFrom(alias lookup)(ref Strings args);
レスポンス・ファイルをコマンドラインで展開する。 レスポンスファイルは、以下のような引数である: NAME 名前はテンプレート化された "lookup"関数を呼び出すことで解決される。 パラメーターとして渡される。この関数はまず環境をチェックし、次にファイルシステムをチェックする。 ファイルシステムをチェックする。 引数はスペース、タブ、改行で区切られる。これらは 引数を""で囲むことにより、引数内に埋め込むことができる。 をエスケープするにはバックスラッシュを使う。 行コメントは#で始めることができる。 ネストしたレスポンス・ファイルを再帰的に展開する。
使用するには、引数をStringsオブジェクトに入れ、それに対してこれを呼び出す。
Digital MarsのMAKEプログラムは、プログラムが環境変数を介して長いコマンドラインを受け入れることができることを通知することができる。 プログラム・ルールの前に*を付けることで、プログラムが環境変数を介して長いコマンド・ラインを受け付けることを通知できる。 行の前に*を付けることで、プログラムが環境変数を介して長いコマンド行を受け付けることを通知することができる。
Parameters:
lookup のエイリアスを使う。 引数を探すために呼び出される関数へのエイリアスである。この関数は、NULLで終端された で終わる変更可能なchar[]を返す。 で終わる mutable char[] を返す。 を返す。
Strings args ヌル終端文字列として引数を含む配列
Returns:
null 成功した場合、あるいは見つからなかった最初のレスポンスファイル
pure nothrow bool insertArgumentsFromResponse(char[] buffer, ref Strings args, ref size_t argIndex);
レスポンスファイルの'buffer'の内容を受け取り、それをパースし、その結果の引数を'argIng'の'args'に入れる。 args'の'argIndex'に入れる。argIndex'は、挿入された引数のすぐ後を指すように更新される。 を指すように更新される。 このロジックは、 setargv()のロジックと一致するはずである。
Parameters:
char[] buffer 応答ファイルを含む変更可能な文字列。
Strings args 引数のリスト
size_t argIndex レスポンス引数が挿入される'args'内の位置
Returns:
別のレスポンス引数が見つかった場合はtrueを返す