[HOME] [github] [twitter] [blog] [fml4] [fml8] [北海道] Powered by NetBSD and [nuinui.net] .

HOOK の命名規則

HOOK の名前の標準形式は

役割名_メソッド名_start_hook
役割名_メソッド名_end_hook
です。 ここで役割名は 「use_XXX_function」(例: use_article_post_function)の XXX 部分です。 もっと粒度の細かい HOOK については、この形式でないものもあります。

たとえば、fmlconf コマンドのメインメソッド run() の HOOK の名前は

fmlconf_run_start_hook
fmlconf_run_end_hook
となり、run() の中での hook 呼び出しは次のようなコードになっています。
sub run
{
    my ($curproc, $args) = @_;
    my $config  = $curproc->{ config };

    my $eval = $config->get_hook( 'fmlconf_run_start_hook' );
    if ($eval) {
	eval qq{ $eval; };
	print STDERR $@ if $@;
    }

    $curproc->_fmlconf($args);

    $eval = $config->get_hook( 'fmlconf_run_end_hook' );
    if ($eval) {
	eval qq{ $eval; };
	print STDERR $@ if $@;
    }
}

[HOME] [github] [twitter] [blog] [fml4] [fml8] [北海道] Powered by NetBSD and [nuinui.net] .
Copyright (C) 1993-2022 Ken'ichi Fukamachi mail:< fukachan at fml.org >