]> gitweb.factorcode.org Git - factor.git/blob - basis/unix/kqueue/netbsd/netbsd.factor
Create basis vocab root
[factor.git] / basis / unix / kqueue / netbsd / netbsd.factor
1 USE: alien.syntax
2 IN: unix.kqueue
3
4 C-STRUCT: kevent
5     { "ulong"    "ident"  } ! identifier for this event
6     { "uint"     "filter" } ! filter for event
7     { "uint"     "flags"  } ! action flags for kqueue
8     { "uint"     "fflags" } ! filter flag value
9     { "longlong" "data"   } ! filter data value
10     { "void*"    "udata"  } ! opaque user data identifier
11 ;
12
13 FUNCTION: int kevent ( int kq, kevent* changelist, size_t nchanges, kevent* eventlist, size_t nevents, timespec* timeout ) ;
14
15 : EVFILT_READ     0 ; inline
16 : EVFILT_WRITE    1 ; inline
17 : EVFILT_AIO      2 ; inline ! attached to aio requests
18 : EVFILT_VNODE    3 ; inline ! attached to vnodes
19 : EVFILT_PROC     4 ; inline ! attached to struct proc
20 : EVFILT_SIGNAL   5 ; inline ! attached to struct proc
21 : EVFILT_TIMER    6 ; inline ! timers
22 : EVFILT_SYSCOUNT 7 ; inline ! Filesystem events