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

Comparing EV/typemap (file contents):
Revision 1.6 by root, Mon Oct 29 09:00:43 2007 UTC vs.
Revision 1.14 by root, Thu Dec 20 09:26:40 2007 UTC

1Base T_BASE
2Event T_EVENT
3Signal T_SIGNAL 1Signal T_SIGNAL
4 2
3struct ev_loop * T_LOOP
4
5ev_watcher * T_WATCHER
6ev_io * T_WATCHER
7ev_timer * T_WATCHER
8ev_periodic * T_WATCHER
9ev_signal * T_WATCHER
10ev_idle * T_WATCHER
11ev_prepare * T_WATCHER
12ev_check * T_WATCHER
13ev_child * T_WATCHER
14ev_embed * T_WATCHER
15ev_stat * T_WATCHER
16ev_fork * T_WATCHER
17
5char * T_PVbyte 18char * T_PVbyte
6const char * T_PVbyte 19const char * T_PVbyte
7 20
8INPUT 21INPUT
9
10T_BASE
11 if (!(SvROK ($arg) && SvOBJECT (SvRV ($arg))
12 && SvSTASH (SvRV ($arg)) == stash_base))
13 croak (\"object is not of type EV::Base\");
14 $var = (Base)SvIV (SvRV ($arg));
15
16T_EVENT
17 if (!(SvROK ($arg) && SvOBJECT (SvRV ($arg))
18 && SvSTASH (SvRV ($arg)) == stash_event))
19 croak (\"object is not of type EV::Event\");
20 $var = (Event)SvPVX (SvRV ($arg));
21 22
22T_SIGNAL 23T_SIGNAL
23 if (($var = sv_signum ($arg)) <= 0) 24 if (($var = sv_signum ($arg)) <= 0)
24 croak (\"'%s' is not a valid signal number or name\", SvPV_nolen ($arg)); 25 croak (\"'%s' is not a valid signal number or name\", SvPV_nolen ($arg));
25 26
26T_PVbyte 27T_PVbyte
27 $var = ($type)SvPVbyte_nolen ($arg) 28 $var = ($type)SvPVbyte_nolen ($arg)
28 29
30T_LOOP
31 if (!(SvROK ($arg) && SvOBJECT (SvRV ($arg))
32 && (SvSTASH (SvRV ($arg)) == stash_loop)))
33 croak (\"object is not of type EV::Loop\");
34 $var = ($type)SvIVX (SvRV ($arg));
35
36T_WATCHER
37 if (!(SvROK ($arg) && SvOBJECT (SvRV ($arg))
38 && (SvSTASH (SvRV ($arg)) == stash_" . ($type =~ /ev_(\S+)/, "$1") . "
39 || sv_derived_from ($arg, \"EV::" . ($type =~ /ev_(\S+)/, ucfirst "$1") . "\"))))
40 croak (\"object is not of type EV::" . ($type =~ /ev_(\S+)/, ucfirst "$1") . "\");
41 $var = ($type)SvPVX (SvRV ($arg));
42
29OUTPUT 43OUTPUT
30
31T_BASE
32 sv_setref_iv ($arg, "EV::Base", (IV)$var);
33
34T_EVENT
35 $arg = e_self ($var);
36 44
37T_PVbyte 45T_PVbyte
38 sv_setpv ((SV *)$arg, $var); 46 sv_setpv ((SV *)$arg, $var);
39 47
48T_WATCHER
49 $arg = e_bless ((struct ev_watcher *)$var, stash_${ ($type =~ /ev_(\S+)/, \"$1") });
50
51

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines