blib/lib/MooX/Press.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
condition | 225 | 421 | 53.4 |
line | l | !l | condition | |
---|---|---|---|---|
214 | 437 | 4 | 0 | $opts{$_} and $modifiers{$_} = delete $opts{$_} |
line | !l | l&&!r | l&&r | condition |
---|---|---|---|---|
101 | 25 | 0 | 24 | not $no_warn and defined $opts->{'factory_package'} |
25 | 24 | 0 | not $no_warn and defined $opts->{'factory_package'} and $opts->{'factory_package'} eq "Local" | |
133 | 0 | 0 | 1 | is_HashRef($pkg->[1]) and is_CodeRef($pkg->[1]{'code'}) |
141 | 0 | 0 | 1 | is_HashRef($pkg->[1]) and is_CodeRef($pkg->[1]{'code'}) |
158 | 56 | 4 | 9 | defined $pkg->[1]{'extends'} and not ref $pkg->[1]{'extends'} |
308 | 674 | 229 | 6 | defined $parent and $name =~ /^\+(.+)/ |
319 | 12 | 10 | 380 | length $prefix and lc substr($name, 0, length $prefix) eq lc $prefix |
535 | 176 | 0 | 15 | defined $opts{'subclass'} and not $opts{'is_role'} |
583 | 0 | 0 | 7 | defined $method_name and not ref $method_name |
603 | 174 | 0 | 15 | defined $opts{'subclass'} and not $opts{'is_role'} |
686 | 82 | 0 | 2 | @raw > 1 and ref $raw[1] |
731 | 51 | 0 | 88 | $toolkit eq "Moo" and eval { |
732 | 113 | 26 | 0 | $toolkit eq "Moose" and eval { |
841 | 204 | 0 | 0 | defined $opts{'factory_package_can'} and defined $opts{'factory_package'} |
846 | 204 | 0 | 0 | defined $opts{'type_library_can'} and defined $opts{'type_library'} |
877 | 75 | 27 | 1 | @roles > 1 and ref $roles[1] |
905 | 139 | 64 | 1 | $opts{'is_role'} and defined $opts{'requires'} |
914 | 182 | 0 | 0 | $opts{'abstract'} and $opts{'factory'}->$_handle_list |
937 | 0 | 20 | 26 | @methods and not ref $methods[0] |
959 | 113 | 0 | 26 | $toolkit eq "Moose" and not $opts{'mutable'} |
966 | 51 | 88 | 0 | $toolkit eq "Moo" and eval { |
976 | 4 | 3 | 1 | (ref $_[0] || $_[0]) eq $qname and $_[1] eq "new" |
1006 | 9 | 187 | 8 | $opts{'type_library'} and $opts{'type_name'} |
1045 | 1 | 6 | 1 | $kind eq "class" and my $extends = delete $spec{'extends'} |
1058 | 1 | 7 | 0 | $kind eq "class" and my $overload = delete $spec{'overload'} |
1108 | 2 | 0 | 0 | @roles > 1 and ref $roles[1] |
1125 | 3 | 4 | 0 | $fp and my $factory = delete $spec{'factory'} |
1129 | 3 | 4 | 0 | $fp and my $factory = delete $spec{'multifactory'} |
1170 | 179 | 12 | 207 | @methods and not ref $methods[0] |
1199 | 0 | 0 | 0 | is_ArrayRef($meta{'signature'}) and 1 == @sigtypes |
0 | 0 | 0 | is_ArrayRef($meta{'signature'}) and 1 == @sigtypes and not $meta{'named'} | |
1348 | 0 | 108 | 17 | $INC{'Moo/Role.pm'} && 'Moo::Role'->is_role($package) |
1407 | 0 | 0 | 0 | $factory and $factory->can("type_library") |
1430 | 26 | 11 | 0 | $meta and $meta->is_immutable |
1458 | 46 | 0 | 10 | is_Object($attrspec) && $attrspec->can('check') |
1467 | 55 | 1 | 2 | defined $spec{'clearer'} and not ref $spec{'clearer'} |
56 | 2 | 0 | defined $spec{'clearer'} and not ref $spec{'clearer'} and $spec{'clearer'} eq 1 | |
1492 | 30 | 21 | 7 | $spec{'isa'} and not ref $spec{'isa'} |
1502 | 55 | 0 | 3 | is_Object($spec{'type'}) and $spec{'type'}->can("check") |
1510 | 10 | 1 | 47 | ref $spec{'isa'} and not exists $spec{'coerce'} |
11 | 40 | 7 | ref $spec{'isa'} and not exists $spec{'coerce'} and $spec{'isa'}->has_coercion | |
1515 | 22 | 0 | 1 | defined $spec{'trigger'} and not ref $spec{'trigger'} |
22 | 0 | 1 | defined $spec{'trigger'} and not ref $spec{'trigger'} and $spec{'trigger'} eq 1 | |
1518 | 22 | 0 | 1 | defined $spec{'trigger'} and not ref $spec{'trigger'} |
1539 | 58 | 0 | 0 | is_Object($spec{'default'}) and $spec{'default'}->isa("Ask::Question") |
1543 | 0 | 0 | 0 | $spec{'isa'} and not $default->has_type |
1556 | 47 | 11 | 0 | $toolkit eq "Mouse" and is_Object($spec{'default'}) |
46 | 12 | 0 | $toolkit eq "Moose" and is_Object($spec{'default'}) | |
58 | 0 | 0 | $toolkit eq "Moose" and is_Object($spec{'default'}) and not $spec{'default'}->isa("Class::MOP::Method") | |
1650 | 6 | 23 | 4 | is_Object($spec->{'isa'}) and $spec->{'isa'}->isa("Type::Tiny::Enum") |
29 | 3 | 1 | is_Object($spec->{'isa'}) and $spec->{'isa'}->isa("Type::Tiny::Enum") and $spec->{'handles'} | |
1670 | 2 | 8 | 2 | is_Object($spec->{'isa'}) and $spec->{'isa'}->isa('Type::Tiny::Enum') || $spec->{'isa'}->isa('Moose::Meta::TypeConstraint::Enum') |
8 | 2 | 0 | is_Object($spec->{'isa'}) and $spec->{'isa'}->isa('Type::Tiny::Enum') || $spec->{'isa'}->isa('Moose::Meta::TypeConstraint::Enum') and $spec->{'handles'} | |
1687 | 2 | 7 | 2 | is_Object($spec->{'isa'}) and $spec->{'isa'}->isa("Type::Tiny::Enum") |
9 | 2 | 0 | is_Object($spec->{'isa'}) and $spec->{'isa'}->isa("Type::Tiny::Enum") and $spec->{'handles'} | |
1795 | 0 | 0 | 0 | is_ArrayRef($method_spec->{'signature'}) and 1 == @sigtypes |
0 | 0 | 0 | is_ArrayRef($method_spec->{'signature'}) and 1 == @sigtypes and $signature_style eq "positional" | |
1932 | 202 | 4 | 2 | $signature and $methods->{$name}{'optimize'} |
1957 | 202 | 2 | 4 | $signature && !$optimized |
202 | 2 | 4 | $signature && !$optimized | |
1998 | 0 | 0 | 0 | is_ArrayRef($signature) and 1 == @sigtypes |
0 | 0 | 0 | is_ArrayRef($signature) and 1 == @sigtypes and $signature_style eq "positional" | |
2026 | 2 | 1 | 2 | is_HashRef($sig[0]) and not $sig[0]{'slurpy'} |
2052 | 17 | 0 | 2 | is_HashRef($sig[0]) and not $sig[0]{'slurpy'} |
2062 | 28 | 0 | 0 | is_HashRef($sig[0]) and $sig[0]{'slurpy'} |
2074 | 28 | 0 | 0 | is_HashRef($sig[0]) and not ref $sig[0]{'slurpy'} |
2079 | 13 | 0 | 15 | is_Str($type) and not $type =~ /^[01]$/ |
2101 | 28 | 0 | 0 | $opts->{'slurpy'} and not ref $opts->{'slurpy'} |
2157 | 0 | 0 | 15 | defined $value and not ref $value |
line | l | !l | condition | |
---|---|---|---|---|
79 | 0 | 49 | $opts->{'default_is'} ||= "ro" | |
81 | 0 | 23 | $ENV{'PERL_MOOX_PRESS_TOOLKIT'} || 'Moo' | |
192 | 0 | 47 | $opts{'toolkit_install_methods'} || 'install_methods' | |
197 | 0 | 45 | $methods{'qualify'} ||= sub { | |
199 | 0 | 45 | $methods{'get_class'} ||= sub { | |
201 | 0 | 45 | $methods{'get_role'} ||= sub { | |
247 | 293 | 9 | $opts->{'caller_file'} || 1 | |
263 | 22 | 31 | $opts->{$kind} ||= [] | |
266 | 1 | 1 | $opts->{$kind} ||= [] | |
362 | 1 | 0 | do { | |
383 | 0 | 0 | do { | |
573 | 0 | 7 | $opts{'toolkit_install_methods'} || 'install_methods' | |
1172 | 12 | 179 | shift @methods || \1 | |
1191 | 0 | 10 | $meta{'curry'} ||= [$qname] | |
1239 | 149 | 42 | do { | |
1330 | 0 | 4 | $opts{'toolkit_install_constants'} || 'install_constants' | |
1415 | 36 | 1 | $opts ||= {} | |
1472 | 31 | 1 | $opts->{'default_is'} || 'ro' | |
1681 | 0 | 0 | $spec->{'traits'} ||= [] | |
2018 | 4 | 2 | 1 | $signature_style ||= "none" |
2043 | 0 | 1 | 0 | $signature_style ||= "none" |
2180 | 2 | 0 | $signature ||= sub { |
line | l | !l&&r | !l&&!r | condition |
---|---|---|---|---|
81 | 26 | 23 | 0 | $opts->{'toolkit'} ||= $ENV{'PERL_MOOX_PRESS_TOOLKIT'} || 'Moo' |
118 | 16 | 33 | 0 | $opts{'caller'} ||= $caller |
119 | 0 | 49 | 0 | $opts{'caller_file'} ||= [caller]->[1] |
133 | 1 | 1 | 0 | is_CodeRef($pkg->[1]) or is_HashRef($pkg->[1]) and is_CodeRef($pkg->[1]{'code'}) |
141 | 1 | 1 | 0 | is_CodeRef($pkg->[1]) or is_HashRef($pkg->[1]) and is_CodeRef($pkg->[1]{'code'}) |
262 | 2 | 0 | 0 | $val eq 1 or not defined $val |
362 | 1 | 0 | 0 | do { |
383 | 0 | 0 | 0 | do { |
425 | 0 | 7 | 0 | $none ||= ~&Any() |
446 | 45 | 0 | 2 | defined $opts{'factory_package'} or not exists $opts{'factory_package'} |
487 | 0 | 2 | 0 | $opts{'class_type_name'} || sprintf('%sClass', $builder->type_name($qname, $opts{'prefix'})) |
495 | 0 | 2 | 0 | $opts{'instance_type_name'} || sprintf('%sInstance', $builder->type_name($qname, $opts{'prefix'})) |
514 | 8 | 183 | 0 | $opts{'type_name'} || $builder->type_name($qname, $opts{'prefix'}) |
715 | 14 | 4 | 186 | exists $opts{'factory'} or exists $opts{'multifactory'} |
723 | 204 | 0 | 0 | {'moo', 'Moo', 'moose', 'Moose', 'mouse', 'Mouse'}->{lc $opts{'toolkit'}} || $opts{'toolkit'} |
887 | 2 | 94 | 6 | $role_qname =~ /\?$/ or ${"${role_qname}::BUILT";} |
976 | 0 | 8 | 0 | ref $_[0] || $_[0] |
1017 | 0 | 1 | 7 | $spec{'is_role'} || do { |
1069 | 0 | 0 | 0 | is_CodeRef($coercions[0]) or is_HashRef($coercions[0]) |
1193 | 0 | 0 | 10 | match("coercion", $meta{'attributes'}) or match("coerce", $meta{'attributes'}) |
1196 | 0 | 0 | 0 | $to_type ||= $fpackage->type_library->get_type_for_package("any", $qname) |
1351 | 0 | 0 | 0 | $_cached_moo_helper{"${package}::$helpername"} ||= $tracker->{$helpername} |
1354 | 0 | 125 | 0 | $_cached_moo_helper{"${package}::$helpername"} ||= eval sprintf("do { package %s; use Moo%s; my \$coderef = \\&%s; no Moo%s; \$coderef };", $package, $is_role ? "::Role" : "", $helpername, $is_role ? "::Role" : "") |
1403 | 0 | 0 | 0 | $factory ||= do { |
1417 | 33 | 1 | 3 | $opts->{'prefix'} || $builder->_detect_prefix($qname) |
1418 | 36 | 1 | 0 | $opts->{'toolkit'} || $builder->_detect_toolkit($qname) |
1419 | 36 | 1 | 0 | $opts->{'type_library'} || $builder->_detect_type_library($qname) |
1420 | 0 | 37 | 0 | $opts->{'reg'} || 'Type::Registry'->for_class($qname) |
1444 | 4 | 4 | 0 | $nondeep ||= ~&ArrayRef() & ~&HashRef() |
0 | 8 | 0 | $spec_hints{'isa'} ||= {"\$", $nondeep ||= ~&ArrayRef() & ~&HashRef(), "\@", &ArrayLike(), "%", &HashLike()}->{$2} | |
1472 | 26 | 32 | 0 | $spec{'is'} ||= $opts->{'default_is'} || 'ro' |
1477 | 0 | 1 | 0 | $spec{'builder'} ||= $buildername |
1488 | 0 | 0 | 0 | $spec{'isa'} ||= $types->get_type_for_package("role", $target) |
1489 | 0 | 0 | 0 | $spec{'isa'} ||= &ConsumerOf()->of($target) |
1494 | 0 | 7 | 0 | $spec{'isa'} ||= $types->get_type_for_package("class", $target) |
1495 | 7 | 0 | 0 | $spec{'isa'} ||= &InstanceOf()->of($target) |
1506 | 9 | 0 | 0 | $reg ||= "Type::Registry"->for_class($qname) |
1573 | 0 | 1 | 1 | $spec{'traits'} or $spec{'handles_via'} |
1670 | 2 | 0 | 8 | $spec->{'isa'}->isa('Type::Tiny::Enum') || $spec->{'isa'}->isa('Moose::Meta::TypeConstraint::Enum') |
1674 | 12 | 0 | 0 | Moose::Util::find_meta($class) || $class->meta |
1693 | 11 | 0 | 0 | Mouse::Util::find_meta($class) || $class->meta |
1719 | 18 | 0 | 0 | Moose::Util::find_meta($class) || $class->meta |
1733 | 18 | 0 | 0 | Mouse::Util::find_meta($class) || $class->meta |
1789 | 0 | 0 | 10 | match("coercion", $method_spec->{'attributes'}) or match("coerce", $method_spec->{'attributes'}) |
1875 | 0 | 0 | 0 | Moose::Util::find_meta($role) || $role->meta |
1882 | 0 | 0 | 0 | Mouse::Util::find_meta($role) || $role->meta |
1888 | 0 | 1 | 0 | delete $method{'package'} || caller |
1993 | 0 | 0 | 208 | match("coercion", $attrs) or match("coerce", $attrs) |
1996 | 0 | 0 | 0 | $to_type ||= $class->FACTORY->type_library->get_type_for_package("any", $class) |
2054 | 0 | 19 | 0 | $global_opts->{'subname'} ||= $method_name |
2080 | 3 | 12 | 0 | $reg ||= do { |
2119 | 0 | 0 | 0 | $reg ||= do { |
2179 | 2 | 0 | 0 | $signature or @curry |
2212 | 6 | 0 | 0 | Moose::Util::find_meta($class) || $class->meta |
2223 | 6 | 0 | 0 | Mouse::Util::find_meta($class) || $class->meta |