Condition Coverage

blib/lib/Aion/Type.pm
Criterion Covered Total %
condition 53 76 69.7


and 3 conditions

line !l l&&!r l&&r condition
96 8 2627 12 $self->{'args'} and &List::Util::first(sub { exists $_->{'is_param'} if UNIVERSAL::isa($_, __PACKAGE__); } , @{$$self{"args"};})
165 0 313 10 $self->{'as'} and not $self->{'as'}->test
271 0 0 16 @as and $as[0] eq &Any()
307 33 0 0 $is_strict and $self eq $other
0 29 4 not $is_strict and $self->like($other)
327 32 2 0 $self->is_intersection and $other->is_intersection
328 31 3 0 $self->is_union and $other->is_union
329 34 0 0 $self->is_exclude and $other->is_exclude
340 1 112 46 UNIVERSAL::isa($other, __PACKAGE__) and $self->{'coerce'} == $other->{'coerce'}
392 11 0 0 $min == "-Inf" and $max == "Inf"
398 5 8 1 $min == 0 and $max == "Inf"
452 18 11 0 $min == $range->range_lbound and $max == "Inf"
530 10551 6319 15 $candidate->is_exclude and $candidate->{'args'}[0]->is_enum
601 0 0 2 $self->subset($other) and $other->subset($self)

or 2 conditions

line l !l condition
78 3317 99 $self->{'test'} //= \&Aion::Type::test
79 3301 115 $self->{'coerce'} //= []

or 3 conditions

line l !l&&r !l&&!r condition
152 0 1 1 $self->{'as_test_cache'} //= $self->_build_as_test_cache
159 1118 264 118 $self->{'as_test_cache'} //= $self->_build_as_test_cache
241 28881 1447 0 $self->{'key'} //= do { my $coerceaddr = builtin::refaddr($self->{'coerce'}); my $keyfn = $keyfn{$coerceaddr}; $keyfn ? &$keyfn($self) : join("-", $coerceaddr, exists $self->{'args'} && @{$self->{'args'};} || exists $self->{'N'} || exists $self->{'M'} ? join(",", map({my $key = UNIVERSAL::isa($_, __PACKAGE__) ? $_->key : '' . ($_ // $undefined); join ":", length $key, $key;} @{$$self{"args"};})) : ()) }
248 228 0 0 $_ // $undefined
250 0 1 38 exists $self->{'args'} && @{$self->{'args'};} || exists $self->{'N'} || exists $self->{'M'}
278 3 15 0 $self->{'ckey'} //= join(" <- ", map($_->stringify, $self->asen, $self))
307 0 4 29 $is_strict and $self eq $other or not $is_strict and $self->like($other)
330 5 0 29 $self->is_set_theoretic or $other->is_set_theoretic
536 17 2 2666 @enums || @exclude_enums
575 10 3 50 $self eq $other or $other eq &Any()