Next: イントロスぺクション, Previous: ソースレジストリのキャッシュ, Up: ASDFがシステムを探す場所を設定する [Contents][Index]
次の関数はasdf
パッケージからエクスポートされています。
設定を読み込み、すべての内部変数を初期化します。その際、引数を与えることで、環境変数や設定ファイルによる設定を上書きしたり拡張したりすることができます。parameterがnil
の時は設定の上書きは起こりません。S式の時はS式によるDSLが適用されます。文字列の時はシェル向けのDSLが適用されます。パス名の時は対応する設定ファイル・設定ディレクトリから設定が読み込まれます。シンボルの時はfuncall
され、返ったオブジェクトの型に応じて同じ処理が適用されます。
ソースレジストリの現在の設定と探索アルゴリズムによるキャッシュをすべて削除します。コアイメージのダンプをする際、そのイメージを別の(ソースレジストリの)設定で復元する予定であれば、その前にこの関数(あるいはclear-configuration
)を呼んで、設定を空にしておく必要があるかもしれません。なお、この関数を呼んでも、現在のイメージにロードされているシステム定義は削除されないことに注意してください。消えるのは(まだシステム定義が読み込まれていない)システムを見つける際にどこを探すか、という情報だけです。
ソースレジストリが既にinitialize-source-registry
で初期化されたかどうかチェックします。されていない場合はinitialize-source-registry
を呼びます。
find-system
が呼ばれた時、(直接呼ばれたにせよ、operate
やload-system
などから呼ばれたにせよ)ASDFは(ensure-source-registry nil)
を実行します。つまり、find-system
が初めて呼ばれた時に、ソースレジストリは初期化されるわけです。また、設定ファイルを変更したあとは、明示的にinitialize-source-registry
で初期化するか、あるいはclear-source-registry
やclear-configuration
でソースレジストリをクリアし、次のfind-system
で初期化が行われるようにする必要があります。