* tiny
[mascara-docs.git] / compilers / q3 / lcc / src / .svn / text-base / event.c.svn-base
blob4549e3f2cec64de54499533886b5fa3fec1d2d86
1 #include "c.h"
4 struct entry {
5         Apply func;
6         void *cl;
7 };
9 Events events;
10 void attach(Apply func, void *cl, List *list) {
11         struct entry *p;
13         NEW(p, PERM);
14         p->func = func;
15         p->cl = cl;
16         *list = append(p, *list);
18 void apply(List event, void *arg1, void *arg2) {
19         if (event) {
20                 List lp = event;
21                 do {
22                         struct entry *p = lp->x;
23                         (*p->func)(p->cl, arg1, arg2);
24                         lp = lp->link;
25                 } while (lp != event);
26         }