跳到主要内容

hook

简介

钩子功能,登记/执行指定名称的钩子回调函数

组件接口

hook.gs

函数原型函数作用
void register(string hook_name, string hooker, function func, bool add_last = true)登记指定名称的钩子回调函数
void async_blocking_invoke(string hook_name, ...)异步阻塞式执行指定名称的钩子回调函数
void invoke(string hook_name, ...)执行指定名称的钩子回调函数
mixed invoke_break(string hook_name, ...)执行指定名称的钩子回调函数直到返回真值(或者出现执行异常)

样例

import pkg.hook;

hook.register("hooktest", "tester", (: hook_test :));
hook.invoke("hooktest", 1, "test");

parallel array hook_test(int p1, string p2)
{
printf("This is hook test param1:%d, param2:%s\n", p1, p2);
return [p1, p2];
}