ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/EV/EV.xs
(Generate patch)

Comparing EV/EV.xs (file contents):
Revision 1.126 by root, Tue Jul 14 00:09:59 2009 UTC vs.
Revision 1.129 by root, Tue Jul 14 20:34:58 2009 UTC

5/* fix perl api breakage */ 5/* fix perl api breakage */
6#undef signal 6#undef signal
7#undef sigaction 7#undef sigaction
8 8
9#include "schmorp.h" 9#include "schmorp.h"
10
11/* old API compatibility */
12static int
13sv_fileno (SV *fh)
14{
15 return s_fileno (fh, 0);
16}
10 17
11#define EV_PROTOTYPES 1 18#define EV_PROTOTYPES 1
12#define EV_USE_NANOSLEEP EV_USE_MONOTONIC 19#define EV_USE_NANOSLEEP EV_USE_MONOTONIC
13#define EV_H <ev.h> 20#define EV_H <ev.h>
14#include "EV/EVAPI.h" 21#include "EV/EVAPI.h"
389 perl_get_sv ("EV::API", TRUE); /* silence 5.10 warning */ 396 perl_get_sv ("EV::API", TRUE); /* silence 5.10 warning */
390 397
391 /* the poor man's shared library emulator */ 398 /* the poor man's shared library emulator */
392 evapi.ver = EV_API_VERSION; 399 evapi.ver = EV_API_VERSION;
393 evapi.rev = EV_API_REVISION; 400 evapi.rev = EV_API_REVISION;
394 evapi.sv_fileno = s_fileno; 401 evapi.sv_fileno = sv_fileno;
395 evapi.sv_signum = s_signum; 402 evapi.sv_signum = s_signum;
396 evapi.supported_backends = ev_supported_backends (); 403 evapi.supported_backends = ev_supported_backends ();
397 evapi.recommended_backends = ev_recommended_backends (); 404 evapi.recommended_backends = ev_recommended_backends ();
398 evapi.embeddable_backends = ev_embeddable_backends (); 405 evapi.embeddable_backends = ev_embeddable_backends ();
399 evapi.time_ = ev_time; 406 evapi.time_ = ev_time;
410 evapi.suspend = ev_suspend; 417 evapi.suspend = ev_suspend;
411 evapi.resume = ev_resume; 418 evapi.resume = ev_resume;
412 evapi.backend = ev_backend; 419 evapi.backend = ev_backend;
413 evapi.unloop = ev_unloop; 420 evapi.unloop = ev_unloop;
414 evapi.invoke_pending = ev_invoke_pending; 421 evapi.invoke_pending = ev_invoke_pending;
422 evapi.pending_count = ev_pending_count;
415 evapi.set_loop_release_cb = ev_set_loop_release_cb; 423 evapi.set_loop_release_cb = ev_set_loop_release_cb;
416 evapi.set_invoke_pending_cb= ev_set_invoke_pending_cb; 424 evapi.set_invoke_pending_cb= ev_set_invoke_pending_cb;
417 evapi.ref = ev_ref; 425 evapi.ref = ev_ref;
418 evapi.unref = ev_unref; 426 evapi.unref = ev_unref;
419 evapi.loop = ev_loop; 427 evapi.loop = ev_loop;
537 CHECK_SIG (signal, signum); 545 CHECK_SIG (signal, signum);
538 546
539 ev_feed_signal_event (evapi.default_loop, signum); 547 ev_feed_signal_event (evapi.default_loop, signum);
540} 548}
541 549
550unsigned int ev_pending_count ()
551 C_ARGS: evapi.default_loop
552
553void ev_invoke_pending ()
554 C_ARGS: evapi.default_loop
555
542ev_io *io (SV *fh, int events, SV *cb) 556ev_io *io (SV *fh, int events, SV *cb)
543 ALIAS: 557 ALIAS:
544 io_ns = 1 558 io_ns = 1
545 CODE: 559 CODE:
546{ 560{
1245 1259
1246void ev_unloop (struct ev_loop *loop, int how = 1) 1260void ev_unloop (struct ev_loop *loop, int how = 1)
1247 1261
1248void ev_feed_fd_event (struct ev_loop *loop, int fd, int revents = EV_NONE) 1262void ev_feed_fd_event (struct ev_loop *loop, int fd, int revents = EV_NONE)
1249 1263
1264unsigned int ev_pending_count (struct ev_loop *loop)
1265
1266void ev_invoke_pending (struct ev_loop *loop)
1267
1250#if 0 1268#if 0
1251 1269
1252void ev_feed_signal_event (struct ev_loop *loop, SV *signal) 1270void ev_feed_signal_event (struct ev_loop *loop, SV *signal)
1253 CODE: 1271 CODE:
1254{ 1272{

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines