Next: , Up: Hooks   [Contents][Index]


23.1.1 フックの実行

このセクションではノーマルフックを実行するために使用されるrun-hooksについて説明します。またさまざまな種類のアブノーマルフックを実行する関数についても説明します。

Function: run-hooks &rest hookvars

この関数は引数として1つ以上のノーマルフック変数名を受け取って、各フックを順に実行する。引数はそれぞれノーマルフック変数であるようなシンボルであること。これらの引数は指定された順に処理される。

フック変数の値が非nilならその値は関数のリストであること。run-hooksはすべての関数を引数なしで1つずつ呼び出す。

フック変数の値には、単一の関数(ラムダ式、またはシンボルの関数定義)も指定でき、その場合run-hooksはそれを呼び出す。しかしこの使い方は時代遅れである。

フック変数がバッファーローカルならグローバル変数のかわりにそのバッファーローカル変数が使用される。しかしそのバッファーローカル変数が要素tを含む場合には、そのグローバルフック変数も同様に実行されるだろう。

Function: run-hook-with-args hook &rest args

この関数は、hook内のすべての関数に1つの引数argsを渡して呼び出すことによってアブノーマルフックを実行する。

Function: run-hook-with-args-until-failure hook &rest args

この関数は各フック関数を順に呼び出すことによりアブノーマルフック関数を実行し、それらのうち1つがnilをリターンして失敗すると停止する。それぞれのフック関数は引数としてargsを渡される。この関数はフック関数の1つが失敗して停止したらnil、それ以外は非nil値をリターンする。

Function: run-hook-with-args-until-success hook &rest args

この関数は各フック関数を順に呼び出すことによりアブノーマルフック関数を実行して、それらのうち1つが非nil値をリターンして成功したら停止する。それぞれのフック関数は引数としてargsを渡される。この関数はフック関数の1つが失敗して停止したらその値、それ以外はnilをリターンする。