本節では、通常のフックを実行するために使用される run-hooks
関数について解説します。また、さまざまな種類の異常フックを実行するための関数についても解説します。
この関数は、1つ以上の通常のフック変数名を引数として受け取り、各フックを順に実行します。各引数は、通常のフック変数であるシンボルである必要があります。これらの引数は、指定された順序で処理されます。
フック変数がnil以外の値を持つ場合、その値は関数のリストである必要があります。run-hooksは、すべての関数を引数なしで一つずつ呼び出します。
フック変数の値には、run-hooks
が呼び出す単一の関数(ラムダ式、または関数定義を持つシンボル)を指定することもできます。ただし、この用法は非推奨となっています。
hook変数がバッファローカルな場合、グローバル変数の代わりにバッファローカル変数が使用されます。ただし、バッファローカル変数に要素 t が含まれている場合は、グローバルのhook変数も実行されます。
この関数は、hook 内のすべてのフック関数を呼び出し、それぞれに引数 args を渡すことで、異常なフックを実行します。
この関数は、各フック関数を順に呼び出して異常なフックを実行し、いずれかの関数が nil
を返して失敗した場合には処理を停止します。各フック関数には引数 args
が渡されます。いずれかのフック関数が失敗してこの関数が停止した場合は nil
を返し、それ以外の場合は nil 以外の値を返します。
この関数は、各フック関数を呼び出すことで異常なフックを実行し、いずれかの関数がnil以外の値を返して成功した場合に処理を終了します。各フック関数には引数argsが渡されます。いずれかのフック関数がnil以外の値を返してこの関数が終了した場合はその値を返し、それ以外の場合はnilを返します。