void funclist_add(flp, func, arg1)
FUNCLIST **flp;
void (*func)(void *, void *);
void *arg1;
void funclist_call(fl, arg2)
FUNCLIST *fl;
void *arg2;
Function lists are declared using:
FUNCLIST *FuncListHead = FUNCLISTNULL;
Functions are added to the list using:
funclist_add(&FuncListHead, &func, arg1)
where ``func'' is the name of the function to be invoked. The arg1 argument is passed as the first parameter to the function when it is called, and is otherwise uninterpreted.
Function lists are invoked using:
funclist_call(FuncListHead, arg2)
Functions are invoked in the opposite order of their addition to the function list. Each function is called as:
func(arg1, arg2);
That is, the first argument is from the addition to the list, and the second is from the invocation.