… | |
… | |
65 | #define SvTIMER(sv) (timer *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::timer") |
65 | #define SvTIMER(sv) (timer *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::timer") |
66 | |
66 | |
67 | struct timer : perl_watcher, ev::timer |
67 | struct timer : perl_watcher, ev::timer |
68 | { |
68 | { |
69 | timer () |
69 | timer () |
70 | : ev::timer (this, &timer::execute) |
|
|
71 | { |
70 | { |
|
|
71 | set<timer, &timer::execute> (this); |
72 | } |
72 | } |
73 | |
73 | |
74 | void execute (ev::timer &w, int revents) |
74 | void execute (ev::timer &w, int revents) |
75 | { |
75 | { |
76 | invoke (IOM_CLASS "::timer", newSVtimer (this)); |
76 | invoke (IOM_CLASS "::timer", newSVtimer (this)); |
… | |
… | |
81 | #define SvIOW(sv) (iow *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::iow") |
81 | #define SvIOW(sv) (iow *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::iow") |
82 | |
82 | |
83 | struct iow : perl_watcher, ev::io |
83 | struct iow : perl_watcher, ev::io |
84 | { |
84 | { |
85 | iow () |
85 | iow () |
86 | : ev::io (this, &iow::execute) |
|
|
87 | { |
86 | { |
|
|
87 | set<iow, &iow::execute> (this); |
88 | } |
88 | } |
89 | |
89 | |
90 | void execute (ev::io &w, int revents) |
90 | void execute (ev::io &w, int revents) |
91 | { |
91 | { |
92 | invoke (IOM_CLASS "::iow", newSViow (this), revents); |
92 | invoke (IOM_CLASS "::iow", newSViow (this), revents); |
… | |
… | |
97 | #define SvIW(sv) (iw *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::iw") |
97 | #define SvIW(sv) (iw *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::iw") |
98 | |
98 | |
99 | struct iw : perl_watcher, ev::idle |
99 | struct iw : perl_watcher, ev::idle |
100 | { |
100 | { |
101 | iw () |
101 | iw () |
102 | : ev::idle (this, &iw::execute) |
|
|
103 | { |
102 | { |
|
|
103 | set<iw, &iw::execute> (this); |
104 | } |
104 | } |
105 | |
105 | |
106 | void execute (ev::idle &w, int revents) |
106 | void execute (ev::idle &w, int revents) |
107 | { |
107 | { |
108 | invoke (IOM_CLASS "::iw", newSViw (this)); |
108 | invoke (IOM_CLASS "::iw", newSViw (this)); |
… | |
… | |
113 | #define SvPW(sv) (pw *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::pw") |
113 | #define SvPW(sv) (pw *)(perl_watcher *)SvPTR ((sv), IOM_CLASS "::pw") |
114 | |
114 | |
115 | struct pw : perl_watcher, ev::child |
115 | struct pw : perl_watcher, ev::child |
116 | { |
116 | { |
117 | pw () |
117 | pw () |
118 | : ev::child (this, &pw::execute) |
|
|
119 | { |
118 | { |
|
|
119 | set<pw, &pw::execute> (this); |
120 | } |
120 | } |
121 | |
121 | |
122 | void execute (ev::child &w, int revents) |
122 | void execute (ev::child &w, int revents) |
123 | { |
123 | { |
124 | invoke (IOM_CLASS "::pw", newSVpw (this), w.rstatus); |
124 | invoke (IOM_CLASS "::pw", newSVpw (this), w.rstatus); |