IO-Ppoll
view release on metacpan or search on metacpan
lib/IO/Ppoll.xs view on Meta::CPAN
}
XSRETURN_NO;
void
get_fds(fds, nfds)
SV *fds
int nfds
INIT:
int i;
struct pollfd *fds_real;
PPCODE:
fds_real = (struct pollfd *)SvPV_nolen(fds);
EXTEND(SP, nfds);
for(i = 0; i < nfds; i++) {
int fd = fds_real[i].fd;
mPUSHi(fd);
}
void
get_fds_for(fds, nfds, events)
SV *fds
int nfds
int events
INIT:
int i;
struct pollfd *fds_real;
PPCODE:
fds_real = (struct pollfd *)SvPV_nolen(fds);
EXTEND(SP, nfds);
for(i = 0; i < nfds; i++) {
int fd;
if((fds_real[i].revents & events) == 0)
continue;
fd = fds_real[i].fd;
mPUSHi(fd);
}
( run in 0.831 second using v1.01-cache-2.11-cpan-5511b514fd6 )