Condition Coverage

blib/lib/Type/Coercion.pm
Criterion Covered Total %
condition 51 101 50.5


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'}++
129 0 0 2 &blessed($x) and &blessed($y)
0 0 2 &blessed($x) and &blessed($y) and $x->isa($class)
0 0 2 &blessed($x) and &blessed($y) and $x->isa($class) and $y->isa($class)
138 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
167 819 0 31 $self->has_library and not $self->is_anon
204 2 12 2 $self->has_type_constraint and $type->is_a_type_of($self->type_constraint)
219 0 5 1 $self->has_type_constraint and $self->type_constraint->check(@_)
240 0 1637 1 &blessed($type) and my $method = $type->can("type_coercion_map")
318 0 1374 79 $self->has_type_constraint and not $self->type_constraint->can_be_inlined
369 611 607 18 defined $codes[$i] && $varname eq '$_'
472 35 0 0 $INC{'Moose.pm'} and &blessed($self)
35 0 0 $INC{'Moose.pm'} and &blessed($self) and $_[0] eq "Moose::Meta::TypeCoercion"
479 35 0 0 $INC{'Moose.pm'} and &blessed($self)
35 0 0 $INC{'Moose.pm'} and &blessed($self) and $_[0] =~ /^(Class::MOP|MooseX?)::/
496 1 0 0 $INC{'Moose.pm'} and &blessed($self)
1 0 0 $INC{'Moose.pm'} and &blessed($self) and my $method = $self->moose_coercion->can(@_)
511 0 0 0 $INC{'Moose.pm'} and &blessed($self)
0 0 0 $INC{'Moose.pm'} and &blessed($self) and my $method = $self->moose_coercion->can($m)
527 1 0 1 &blessed($thing) and $thing->isa("Type::Coercion")

or 2 conditions

line l !l condition
46 6 7 $self->{'_overload_coderef'} ||= sub { $weak->coerce(@_); }
57 258 11315 delete $params{'type_coercion_map'} || []
91 9813 10503 $_[0]{'type_coercion_map'} ||= []
97 2618 1153 $_[0]{'frozen'} ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
69 757 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 515 97 0 $_[0]{'display_name'} ||= $_[0]->_build_display_name
89 4688 2 2 $_[0]{'type_constraint'} ||= $_[0]->_maybe_restore_type_constraint
92 0 0 0 $_[0]{'moose_coercion'} ||= $_[0]->_build_moose_coercion
95 808 583 0 $_[0]{'compiled_coercion'} ||= $_[0]->_build_compiled_coercion
151 0 2 0 $opts{'display_name'} ||= "$x+$y"
247 1391 246 0 Types::TypeTiny::is_StringLike($coercion) or Types::TypeTiny::is_CodeLike($coercion)
518 0 0 0 ref $self || $self