アプリケーション関連の処理を集めたモジュール.
Copyright (c) 2013-2015 DWANGO Co., Ltd. All Rights Reserved.
name() = atom()
アプリケーション名
ensure_all_loaded/1 | 指定されたアプリケーションおよびそれが依存するプリケーション群がロードされているようにする. |
ensure_all_unloaded/1 | Pred(Application) がtrue を返したアプリケーションを全て停止してアンロードする. |
ensure_loaded/1 | 指定されたアプリケーションが確実にロードされているようにする. |
get_key/3 | applications:get_key/2 にデフォルト値を指定可能にしたもの. |
get_priv_dir/1 | code:priv_dir/1 の代替となる関数。. |
ensure_all_loaded(Application::name()) -> {ok, Loaded} | {error, Reason}
Loaded = ordsets:ordset(name())
Reason = term()
指定されたアプリケーションおよびそれが依存するプリケーション群がロードされているようにする
Loaded
は、関数呼び出し中に新規にロードされたアプリケーション群
ensure_all_unloaded(Pred::fun((Application::atom()) -> boolean())) -> ok | {error, Reason::term()}
Pred(Application)
がtrue
を返したアプリケーションを全て停止してアンロードする.
application:loaded_applications/0
の結果に基づき、
ロードされているアプリケーションについてPred(Application)
を呼び出し、
Pred(Application)
がtrue
を返したアプリケーションを全て停止してアンロードする.
一つでもアンロードに失敗した場合は、即座に{error, Reason}
を返す.
※kernel
とstdlib
はアンロードしない.
ensure_loaded(Application::name()) -> ok | {error, Reason}
Reason = term()
指定されたアプリケーションが確実にロードされているようにする
application:load/1
とは異なり、既にロード済みのアプリケーションが指定された場合はok
が返される
get_key(Application::name(), Key::atom(), DefaultValue::term()) -> Value::term()
applications:get_key/2
にデフォルト値を指定可能にしたもの
get_priv_dir(Application::name()) -> {ok, file:filename()} | {error, bad_name}
code:priv_dir/1
の代替となる関数。
標準あるいはERL_LIBS環境変数で指定されたディレクトリ以下に指定したアプリケーションが存在せず code:priv_dirに失敗した場合もprivディレクトリを推測して値を返す