line |
true |
false |
branch |
40
|
0 |
0 |
if (scalar @args != 1) |
47
|
0 |
0 |
if (not ref $ahr or ref $ahr ne 'HASH') |
52
|
0 |
0 |
unless defined $$ahr{'min'} |
53
|
0 |
0 |
unless defined $$ahr{'min_margin'} |
54
|
0 |
0 |
unless defined $$ahr{'max_margin'} |
55
|
0 |
0 |
unless defined $$ahr{'max'} |
56
|
0 |
0 |
unless defined $$ahr{'sort_func'} |
57
|
0 |
0 |
unless defined $$ahr{'sort_rev'} |
58
|
0 |
0 |
unless defined $$ahr{'scan_min'} |
59
|
0 |
0 |
unless defined $$ahr{'fudge'} |
60
|
0 |
0 |
unless defined $$ahr{'sub_hash'} |
95
|
0 |
0 |
if ($$ahr{'sub_hash'}) |
98
|
0 |
0 |
if ($Tie::CacheHash::DEBUG) |
101
|
0 |
0 |
if $href |
103
|
0 |
0 |
if ($tied) |
105
|
0 |
0 |
if $tref |
117
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 2) |
118
|
0 |
0 |
defined $_[0]{'h'}{$_[1]} ? : |
129
|
0 |
0 |
if defined $$self{'h'}{$key} and $$self{'h'}{$key} eq $value |
131
|
0 |
0 |
defined $$self{'h'}{$key} ? : |
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
133
|
0 |
0 |
if (defined $$self{'h'}{$key}) |
140
|
0 |
0 |
defined $$self{'h'}{$key} ? : |
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
154
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
155
|
0 |
0 |
if ($$self{'num_keys'} <= $max or not defined $cache_top or $self->cmp($value, $cache_top) <= 0) |
160
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
161
|
0 |
0 |
if ($Tie::CacheHash::DEBUG and int rand 200 == 0) |
165
|
0 |
0 |
defined $cache_top ? : |
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
170
|
0 |
0 |
unless exists $$self{'h'}{$key} |
174
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
175
|
0 |
0 |
if (not defined $cache_top or $self->cmp($value, $cache_top) <= 0) |
176
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
178
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
184
|
0 |
0 |
if ($Tie::CacheHash::DEBUG and int rand 200 == 0) |
187
|
0 |
0 |
if ($self->cache_too_small) |
189
|
0 |
0 |
if $Tie::CacheHash::DEBUG |
192
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 2) |
204
|
0 |
0 |
unless @kv |
205
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if @kv |
211
|
0 |
0 |
unless @kv |
212
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if @kv |
217
|
0 |
0 |
if $key and exists $$self{'h'}{$key} |
238
|
0 |
0 |
if ($$self{'sort_rev'}) { } |
249
|
0 |
0 |
if (not defined $Tie::Cache::a) { } |
|
0 |
0 |
elsif (not defined $Tie::Cache::b) { } |
250
|
0 |
0 |
if (not defined $Tie::Cache::b) { } |
259
|
0 |
0 |
if (not defined $sf or $ref_sf and $ref_sf ne 'CODE') { } |
262
|
0 |
0 |
if ($ref_sf) { } |
|
0 |
0 |
elsif (not ref $sf) { } |
265
|
0 |
0 |
if $sf eq '<=>' |
283
|
0 |
0 |
if $#$cr < 0 |
293
|
0 |
0 |
if $min > $#$cr |
298
|
0 |
0 |
unless ($cmp) |
302
|
0 |
0 |
if ($cmp < 0) { } |
|
0 |
0 |
elsif ($cmp > 0) { } |
320
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 2) |
321
|
0 |
0 |
$min ? : |
322
|
0 |
0 |
$keyleft ? : |
324
|
0 |
0 |
$keymin ? : |
326
|
0 |
0 |
$keyright ? : |
330
|
0 |
0 |
if ($min > 0 and $min < $#$cr and $self->cmp($value, $$self{'h'}{$$cr[$min]}) == 0) |
348
|
0 |
0 |
if ($Tie::CacheHash::DEBUG) |
353
|
0 |
0 |
if ($min < 0 or $min > $#$cr + 1 or $min != int $min) |
356
|
0 |
0 |
if ($#$cr == -1) { } |
|
0 |
0 |
elsif ($#$cr == 0) { } |
358
|
0 |
0 |
if ($min != 0) |
363
|
0 |
0 |
if ($min == 0 and $self->cmp($value, $$self{'h'}{$$cr[0]}) > 0) { } |
|
0 |
0 |
elsif ($min == 1 and $self->cmp($$self{'h'}{$$cr[0]}, $value) > 0) { } |
|
0 |
0 |
elsif ($min < 0 or $min > 1) { } |
371
|
0 |
0 |
if ($min == 0 and $self->cmp($value, $$self{'h'}{$$cr[0]}) > 0) { } |
|
0 |
0 |
elsif ($min == $#$cr + 1 and $self->cmp($$self{'h'}{$$cr[$#$cr]}, $value) > 0) { } |
|
0 |
0 |
elsif ($min > 0 and $min <= $#$cr) { } |
376
|
0 |
0 |
if ($self->cmp($$self{'h'}{$$cr[$min - 1]}, $value) > 0) |
381
|
0 |
0 |
if ($self->cmp($value, $$self{'h'}{$$cr[$min]}) > 0) |
389
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
397
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
399
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
401
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
407
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
408
|
0 |
0 |
if ($self->cache_too_large) |
409
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
413
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 2 |
425
|
0 |
0 |
if ($cache_pos <= $#$cr and $$cr[$cache_pos] eq $key) |
437
|
0 |
0 |
if $field eq 'min' |
438
|
0 |
0 |
if ($value =~ /^(\d+(?:\.\d*)?|\.\d+)\%$/) |
451
|
0 |
0 |
if $#$cr + 1 < $min |
464
|
0 |
0 |
if $small_enuf > $max - 1 |
465
|
0 |
0 |
if $#$cr <= $small_enuf |
478
|
0 |
0 |
if $large_enuf < $min + 1 |
479
|
0 |
0 |
unless $#$cr >= $large_enuf |
495
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 1) |
501
|
0 |
0 |
unless (defined $$self{'num_keys'}) |
505
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 1) |
508
|
0 |
0 |
if ($#sort_unscanned > 10) { } |
520
|
0 |
0 |
if ($$self{'num_keys'} <= $max * (1 + $$self{'fudge'})) { } |
529
|
0 |
0 |
if not $$self{'scan_min'} or $$self{'scan_min'} < 10 |
541
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
548
|
0 |
0 |
if $num_to_scan >= $max_num_to_scan - $#scanned |
550
|
0 |
0 |
if $num_to_scan > $#unscanned + 1 |
552
|
0 |
0 |
if ($num_to_scan) |
554
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
562
|
0 |
0 |
if ($#unscanned >= $num_to_scan) |
569
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
578
|
0 |
0 |
unless $self->cmp($$self{'h'}{$a}, $$self{'h'}{$b}) |
584
|
0 |
0 |
if ($#sorted_scanned >= 0) |
588
|
0 |
0 |
if $guess_max_key_index == 0 |
589
|
0 |
0 |
if $guess_max_key_index > $#sorted_scanned |
598
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
606
|
0 |
0 |
if $self->cmp($$self{'h'}{$key}, $guess_max_value) <= 0 |
609
|
0 |
0 |
if $self->cmp($$self{'h'}{$key}, $guess_max_value) <= 0 |
612
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
614
|
0 |
0 |
if ($self->cache_may_accept) |
618
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
622
|
0 |
0 |
unless $self->cmp($$self{'h'}{$a}, $$self{'h'}{$b}) |
627
|
0 |
0 |
if $#$cr >= $max |
629
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
636
|
0 |
0 |
unless ($success) |
650
|
0 |
0 |
if $fraction_multiplier > 2 |
651
|
0 |
0 |
if $fraction_multiplier < 1 + $$self{'fudge'} |
653
|
0 |
0 |
if ($desired_fraction > 0.8) |
657
|
0 |
0 |
if ($#scanned < $$self{'scan_min'} * 1.9) |
660
|
0 |
0 |
if $Tie::CacheHash::DEBUG > 1 |
672
|
0 |
0 |
if ($do_it_the_stupid_way) |
678
|
0 |
0 |
unless $self->cmp($$self{'h'}{$a}, $$self{'h'}{$b}) |
683
|
0 |
0 |
if ($#$cr >= $max) |
689
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 1) |
692
|
0 |
0 |
if ($Tie::CacheHash::DEBUG) |
695
|
0 |
0 |
if ($Tie::CacheHash::DEBUG > 1) |
705
|
0 |
0 |
unless $Tie::CacheHash::DEBUG |
706
|
0 |
0 |
unless $info |
709
|
0 |
0 |
if ($#$cr > 0) |
714
|
0 |
0 |
if (not defined $newval && defined $lastval or $self->cmp($newval, $lastval) < 0) |
715
|
0 |
0 |
unless defined $newval |
716
|
0 |
0 |
unless defined $lastval |
723
|
0 |
0 |
if ($#$cr >= 0 and not $error) |
728
|
0 |
0 |
if ($cache{$key}) { } |
730
|
0 |
0 |
if ($self->cmp($$self{'h'}{$key}, $pivot_value) > 0) |
737
|
0 |
0 |
if ($self->cmp($$self{'h'}{$key}, $pivot_value) < 0) |
745
|
0 |
0 |
if ($error) |
748
|
0 |
0 |
defined $$cr[$j] ? : |
749
|
0 |
0 |
defined $$self{'h'}{$key} ? : |
|
0 |
0 |
if $key |