| line |
true |
false |
branch |
|
33
|
1 |
20 |
if exists $args{'model'} |
|
35
|
0 |
20 |
if %args |
|
39
|
0 |
80 |
unless $clock->can($m) |
|
44
|
0 |
80 |
unless $timer->can($m) |
|
49
|
0 |
60 |
unless $backend->can($m) |
|
70
|
0 |
20 |
unless defined $t_fd |
|
87
|
3 |
17 |
unless defined $backend |
|
89
|
16 |
1 |
unless (ref $backend) |
|
90
|
16 |
0 |
if $backend eq "epoll" |
|
100
|
2 |
0 |
$self->{'backend'}->can('name') ? : |
|
102
|
0 |
0 |
$self->{'running'} ? : |
|
114
|
1 |
0 |
unless ($self->{'_waker'}) |
|
141
|
0 |
16 |
unless defined $seconds |
|
142
|
0 |
16 |
unless $cb |
|
143
|
0 |
16 |
if ref $cb ne "CODE" |
|
148
|
0 |
16 |
if $delta_ns < 0 |
|
156
|
0 |
0 |
unless defined $deadline_seconds |
|
157
|
0 |
0 |
unless $cb |
|
158
|
0 |
0 |
if ref $cb ne "CODE" |
|
169
|
1 |
0 |
if $ok |
|
176
|
0 |
37 |
unless $fh |
|
185
|
0 |
37 |
if %spec |
|
187
|
0 |
37 |
if (defined $read and ref $read ne "CODE") |
|
190
|
0 |
37 |
if (defined $write and ref $write ne "CODE") |
|
193
|
0 |
37 |
if (defined $error and ref $error ne "CODE") |
|
198
|
0 |
37 |
unless defined $fd |
|
201
|
2 |
35 |
if (my $old = Linux::Event::XS::registry_get($self->{'_watchers'}, $fd)) |
|
205
|
1 |
36 |
$edge_triggered ? : |
|
|
2 |
35 |
$oneshot ? : |
|
228
|
36 |
0 |
if ref $b eq "Linux::Event::Backend::Epoll" and exists $b->{'ep'} |
|
231
|
35 |
1 |
if ($can_xs_backend_fast and not -S $fh and Linux::Event::XS::loop_watch_watcher_fast($self, $fh, $fd, $w, $mask)) |
|
235
|
1 |
1 |
if ($self->{'backend'}->can("watch_watcher")) |
|
248
|
0 |
0 |
unless my $ww = Linux::Event::XS::registry_get($owner->{'_watchers'}, $fd2) |
|
251
|
0 |
0 |
unless ($fhw) |
|
256
|
0 |
0 |
if (not defined $fnow or int $fnow != $fd2) |
|
264
|
0 |
0 |
$mask & 1 ? : |
|
265
|
0 |
0 |
$mask & 2 ? : |
|
267
|
0 |
0 |
if ($mask & 64) |
|
268
|
0 |
0 |
if ($ww->{'error_cb'} and $ww->{'error_enabled'}) |
|
276
|
0 |
0 |
if $mask & 128 |
|
278
|
0 |
0 |
if ($read_trig and $ww->{'read_cb'} and $ww->{'read_enabled'}) |
|
283
|
0 |
0 |
if (not $still or $still != $ww) |
|
287
|
0 |
0 |
if ($write_trig and $ww->{'write_cb'} and $ww->{'write_enabled'}) |
|
306
|
37 |
0 |
if $w->{'read_cb'} and $w->{'read_enabled'} |
|
307
|
5 |
0 |
if $w->{'write_cb'} and $w->{'write_enabled'} |
|
309
|
1 |
36 |
if $w->{'edge_triggered'} |
|
310
|
2 |
35 |
if $w->{'oneshot'} |
|
316
|
0 |
0 |
unless $w->{'active'} |
|
320
|
0 |
0 |
if ($self->{'backend'}->can("modify")) |
|
331
|
0 |
3 |
unless $w and $w->{'active'} |
|
334
|
3 |
0 |
if (ref $b eq "Linux::Event::Backend::Epoll" and exists $b->{'ep'} and exists $b->{'watch'}) |
|
337
|
3 |
0 |
Linux::Event::XS::loop_cancel_watcher($self, $w) ? : |
|
344
|
0 |
0 |
if defined $fd |
|
345
|
0 |
0 |
if $self->{'backend'}->can("unwatch") and $w->{'fh'} |
|
352
|
0 |
3 |
unless $fh |
|
355
|
0 |
3 |
unless defined $fd |
|
358
|
2 |
1 |
unless my $w = Linux::Event::XS::registry_get($self->{'_watchers'}, $fd) |
|
384
|
0 |
10 |
if (my $w = $self->{'_waker'}) |
|
399
|
19 |
13 |
$self->{'running'} ? : |
|
408
|
2 |
13 |
if not $self->{'running'} and $self->{'_in_run'} || $was_running |
|
415
|
16 |
14 |
unless (defined $next) |
|
416
|
0 |
16 |
if ($self->{'_timer_armed'}) |
|
426
|
14 |
0 |
unless (defined $timeout_s) |
|
428
|
0 |
14 |
$remain_ns <= 0 ? : |
|
438
|
0 |
0 |
if not $self->{'running'} and $self->{'_in_run'} || $was_running |
|
461
|
6 |
37 |
unless (defined $next) |
|
462
|
6 |
0 |
if ($self->{'_timer_armed'}) |
|
471
|
0 |
37 |
unless defined $remain_ns |
|
472
|
0 |
37 |
unless &looks_like_number($remain_ns) |
|
474
|
2 |
35 |
if ($remain_ns <= 0) |
|
484
|
0 |
35 |
unless &looks_like_number($after_s) |