Condition Coverage

blib/lib/Type/Coercion.pm
Criterion Covered Total %
condition 51 102 50.0


and 3 conditions

line !l l&&!r l&&r condition
39 3 10 3 "Sub::Quote"->can("quote_sub") and $self->can_be_inlined
42 2 1 0 $self->{'_overload_coderef'} and $self->{'_sub_quoted'}++
138 0 0 2 builtin::blessed($x) and builtin::blessed($y)
0 0 2 builtin::blessed($x) and builtin::blessed($y) and $x->isa($class)
0 0 2 builtin::blessed($x) and builtin::blessed($y) and $x->isa($class) and $y->isa($class)
147 0 0 2 $x->has_type_constraint and $y->has_type_constraint
0 0 2 $x->has_type_constraint and $y->has_type_constraint and $x->type_constraint == $y->type_constraint
0 0 0 $x->has_type_constraint and $y->has_type_constraint
176 987 0 31 $self->has_library and not $self->is_anon
226 2 13 2 $self->has_type_constraint and $type->is_a_type_of($self->type_constraint)
241 0 3 1 $self->has_type_constraint and $self->type_constraint->check(@_)
262 0 1922 1 builtin::blessed($type) and my $method = $type->can("type_coercion_map")
340 0 1664 80 $self->has_type_constraint and not $self->type_constraint->can_be_inlined
391 748 744 18 defined $codes[$i] && $varname eq '$_'
494 35 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self)
35 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self) and $_[0] eq "Moose::Meta::TypeCoercion"
501 35 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self)
35 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self) and $_[0] =~ /^(Class::MOP|MooseX?)::/
518 1 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self)
1 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self) and my $method = $self->moose_coercion->can(@_)
533 0 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self)
0 0 0 $INC{'Moose/Meta/TypeCoercion.pm'} and builtin::blessed($self) and my $method = $self->moose_coercion->can($m)
549 1 0 1 builtin::blessed($thing) and $thing->isa("Type::Coercion")

or 2 conditions

line l !l condition
57 298 13715 delete $params{'type_coercion_map'} || []
91 13231 12584 $_[0]{'type_coercion_map'} ||= []
97 3565 1366 $_[0]{'frozen'} ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
46 6 7 0 $self->{'_overload_coderef'} ||= sub { $weak->coerce(@_); }
69 877 0 0 $self->name =~ /^_{0,2}[A-Z][A-Za-z0-9_]+$/ms or eval " use 5.008; \$self->name =~ /^_{0,2}\\p{Lu}[\\p{L}0-9_]+\$/sm "
85 671 100 0 $_[0]{'display_name'} ||= $_[0]->_build_display_name
89 5607 3 2 $_[0]{'type_constraint'} ||= $_[0]->_maybe_restore_type_constraint
92 0 0 0 $_[0]{'moose_coercion'} ||= $_[0]->_build_moose_coercion
95 1059 739 0 $_[0]{'compiled_coercion'} ||= $_[0]->_build_compiled_coercion
160 0 2 0 $opts{'display_name'} ||= "$x+$y"
269 1660 262 0 Types::TypeTiny::is_StringLike($coercion) or Types::TypeTiny::is_CodeLike($coercion)
540 0 0 0 ref $self || $self