Condition Coverage

blib/lib/Acme/Mitey/Cards/Types.pm
Criterion Covered Total %
condition 15 389 3.8


and 2 conditions

line l !l condition
279 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"}
298 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"}
1131 0 0 $ok = 0 and last
1367 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"}
1386 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"}

and 3 conditions

line !l l&&!r l&&r condition
162 0 0 0 !ref($_[0]) && (!defined($_[0]) || $_[0] eq '' || $_[0] eq '0' || $_[0] eq '1')
227 0 0 0 defined $tmp and not ref $tmp
0 0 0 do {
231 0 0 0 do {
250 0 0 0 defined $_[0] and not ref $_[0]
254 0 0 0 defined $_[0] and not ref $_[0]
279 0 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"} and @{$_[0] . "::ISA";}
298 0 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"} and @{$_[0] . "::ISA";}
533 0 0 0 &Scalar::Util::blessed($_[0]) and $_[0]->isa("IO::Handle")
0 0 0 ref $_[0] and &Scalar::Util::openhandle($_[0])
537 0 0 0 &Scalar::Util::blessed($_[0]) and $_[0]->isa("IO::Handle")
0 0 0 ref $_[0] and &Scalar::Util::openhandle($_[0])
671 0 0 0 defined $tmp and not ref $tmp
675 0 0 0 defined $tmp and not ref $tmp
694 0 0 0 defined $tmp and not ref $tmp
698 0 0 0 defined $tmp and not ref $tmp
763 0 0 0 defined $_[0] and not ref $_[0]
767 0 0 0 defined $_[0] and not ref $_[0]
786 0 0 0 do {
790 0 0 0 do {
813 0 0 0 do {
878 0 0 0 defined $tmp and not ref $tmp
882 0 0 0 do {
901 0 0 0 defined $_[0] and not ref $_[0]
905 0 0 0 do {
924 0 0 0 defined $tmp and not ref $tmp
928 0 0 0 do {
947 0 0 0 defined $_[0] and not ref $_[0]
951 0 0 0 do {
970 0 0 0 do {
974 0 0 0 do {
997 0 0 0 do {
1016 0 0 0 defined $_[0] and not ref $_[0]
1020 0 0 0 defined $_[0] and not ref $_[0]
1039 0 0 0 defined $_[0] and not ref $_[0]
1043 0 0 0 defined $_[0] and not ref $_[0]
1085 0 0 0 do {
1089 0 0 0 do {
1131 0 0 0 ref $inner eq "ARRAY" and @$inner == 2
0 0 0 ref $inner eq "ARRAY" and @$inner == 2 and do {
1135 0 0 0 ref $_[0] eq 'ARRAY' && do {
1200 0 0 0 do {
1204 0 0 0 do {
1223 0 0 0 defined $tmp and not ref $tmp
1227 0 0 0 do {
1246 0 0 0 defined $_[0] and not ref $_[0]
1250 0 0 0 do {
1269 0 0 0 defined $tmp and not ref $tmp
1273 0 0 0 do {
1292 0 0 0 defined $_[0] and not ref $_[0]
1296 0 0 0 do {
1338 0 0 0 &Scalar::Util::blessed($_[0]) and $_[0]->isa("Regexp")
0 0 0 ref $_[0] and not !&re::is_regexp($_[0])
1342 0 0 0 &Scalar::Util::blessed($_[0]) and $_[0]->isa("Regexp")
0 0 0 ref $_[0] and not !&re::is_regexp($_[0])
1367 0 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"} and @{$_[0] . "::ISA";}
1386 0 0 0 exists $stash->{'ISA'} and *{$stash->{'ISA'};}{"ARRAY"} and @{$_[0] . "::ISA";}
1460 0 0 0 do {
1464 0 0 0 do {
1483 0 0 0 defined $tmp and not ref $tmp
0 0 0 do {
1487 0 0 0 do {
1598 0 0 0 defined $val and not ref $val
1607 0 0 0 defined $val and not ref $val
1631 0 0 0 do {
0 0 0 do {
1635 0 0 0 do {
1746 0 0 0 do {
1750 0 0 0 do {
1773 0 0 0 do {
1796 0 0 0 defined $_[0] && !ref($_[0])

or 2 conditions

line l !l condition
108 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Any, "name", "Any", "library", "Types::Standard", "library_name", "Any"}, "Acme::Mitey::Cards::Types::TypeConstraint")
131 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_ArrayRef, "name", "ArrayRef", "library", "Types::Standard", "library_name", "ArrayRef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
154 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Bool, "name", "Bool", "library", "Types::Standard", "library_name", "Bool"}, "Acme::Mitey::Cards::Types::TypeConstraint")
177 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Card, "name", "Card", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "Card"}, "Acme::Mitey::Cards::Types::TypeConstraint")
200 3 5 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_CardArray, "name", "CardArray", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "CardArray"}, "Acme::Mitey::Cards::Types::TypeConstraint")
223 0 4 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_CardNumber, "name", "CardNumber", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "CardNumber"}, "Acme::Mitey::Cards::Types::TypeConstraint")
246 0 4 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Character, "name", "Character", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "Character"}, "Acme::Mitey::Cards::Types::TypeConstraint")
269 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_ClassName, "name", "ClassName", "library", "Types::Standard", "library_name", "ClassName"}, "Acme::Mitey::Cards::Types::TypeConstraint")
322 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_CodeRef, "name", "CodeRef", "library", "Types::Standard", "library_name", "CodeRef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
345 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_ConsumerOf, "name", "ConsumerOf", "library", "Types::Standard", "library_name", "ConsumerOf"}, "Acme::Mitey::Cards::Types::TypeConstraint")
368 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_CycleTuple, "name", "CycleTuple", "library", "Types::Standard", "library_name", "CycleTuple"}, "Acme::Mitey::Cards::Types::TypeConstraint")
391 0 9 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Deck, "name", "Deck", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "Deck"}, "Acme::Mitey::Cards::Types::TypeConstraint")
414 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Defined, "name", "Defined", "library", "Types::Standard", "library_name", "Defined"}, "Acme::Mitey::Cards::Types::TypeConstraint")
437 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_DelimitedStr, "name", "DelimitedStr", "library", "Types::Common::String", "library_name", "DelimitedStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
460 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Dict, "name", "Dict", "library", "Types::Standard", "library_name", "Dict"}, "Acme::Mitey::Cards::Types::TypeConstraint")
483 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Enum, "name", "Enum", "library", "Types::Standard", "library_name", "Enum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
506 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_FaceCard, "name", "FaceCard", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "FaceCard"}, "Acme::Mitey::Cards::Types::TypeConstraint")
529 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_FileHandle, "name", "FileHandle", "library", "Types::Standard", "library_name", "FileHandle"}, "Acme::Mitey::Cards::Types::TypeConstraint")
552 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_GlobRef, "name", "GlobRef", "library", "Types::Standard", "library_name", "GlobRef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
575 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Hand, "name", "Hand", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "Hand"}, "Acme::Mitey::Cards::Types::TypeConstraint")
598 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_HasMethods, "name", "HasMethods", "library", "Types::Standard", "library_name", "HasMethods"}, "Acme::Mitey::Cards::Types::TypeConstraint")
621 0 3 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_HashRef, "name", "HashRef", "library", "Types::Standard", "library_name", "HashRef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
644 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_InstanceOf, "name", "InstanceOf", "library", "Types::Standard", "library_name", "InstanceOf"}, "Acme::Mitey::Cards::Types::TypeConstraint")
667 3 5 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Int, "name", "Int", "library", "Types::Standard", "library_name", "Int"}, "Acme::Mitey::Cards::Types::TypeConstraint")
690 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_IntRange, "name", "IntRange", "library", "Types::Common::Numeric", "library_name", "IntRange"}, "Acme::Mitey::Cards::Types::TypeConstraint")
713 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Item, "name", "Item", "library", "Types::Standard", "library_name", "Item"}, "Acme::Mitey::Cards::Types::TypeConstraint")
736 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_JokerCard, "name", "JokerCard", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "JokerCard"}, "Acme::Mitey::Cards::Types::TypeConstraint")
759 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_LaxNum, "name", "LaxNum", "library", "Types::Standard", "library_name", "LaxNum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
782 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_LowerCaseSimpleStr, "name", "LowerCaseSimpleStr", "library", "Types::Common::String", "library_name", "LowerCaseSimpleStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
805 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_LowerCaseStr, "name", "LowerCaseStr", "library", "Types::Common::String", "library_name", "LowerCaseStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
828 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Map, "name", "Map", "library", "Types::Standard", "library_name", "Map"}, "Acme::Mitey::Cards::Types::TypeConstraint")
851 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Maybe, "name", "Maybe", "library", "Types::Standard", "library_name", "Maybe"}, "Acme::Mitey::Cards::Types::TypeConstraint")
874 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NegativeInt, "name", "NegativeInt", "library", "Types::Common::Numeric", "library_name", "NegativeInt"}, "Acme::Mitey::Cards::Types::TypeConstraint")
897 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NegativeNum, "name", "NegativeNum", "library", "Types::Common::Numeric", "library_name", "NegativeNum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
920 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NegativeOrZeroInt, "name", "NegativeOrZeroInt", "library", "Types::Common::Numeric", "library_name", "NegativeOrZeroInt"}, "Acme::Mitey::Cards::Types::TypeConstraint")
943 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NegativeOrZeroNum, "name", "NegativeOrZeroNum", "library", "Types::Common::Numeric", "library_name", "NegativeOrZeroNum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
966 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NonEmptySimpleStr, "name", "NonEmptySimpleStr", "library", "Types::Common::String", "library_name", "NonEmptySimpleStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
989 3 6 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NonEmptyStr, "name", "NonEmptyStr", "library", "Types::Common::String", "library_name", "NonEmptyStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1012 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Num, "name", "Num", "library", "Types::Standard", "library_name", "Num"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1035 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NumRange, "name", "NumRange", "library", "Types::Common::Numeric", "library_name", "NumRange"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1058 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NumericCard, "name", "NumericCard", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "NumericCard"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1081 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_NumericCode, "name", "NumericCode", "library", "Types::Common::String", "library_name", "NumericCode"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1104 0 4 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Object, "name", "Object", "library", "Types::Standard", "library_name", "Object"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1127 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_OptList, "name", "OptList", "library", "Types::Standard", "library_name", "OptList"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1150 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Optional, "name", "Optional", "library", "Types::Standard", "library_name", "Optional"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1173 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Overload, "name", "Overload", "library", "Types::Standard", "library_name", "Overload"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1196 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Password, "name", "Password", "library", "Types::Common::String", "library_name", "Password"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1219 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_PositiveInt, "name", "PositiveInt", "library", "Types::Common::Numeric", "library_name", "PositiveInt"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1242 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_PositiveNum, "name", "PositiveNum", "library", "Types::Common::Numeric", "library_name", "PositiveNum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1265 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_PositiveOrZeroInt, "name", "PositiveOrZeroInt", "library", "Types::Common::Numeric", "library_name", "PositiveOrZeroInt"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1288 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_PositiveOrZeroNum, "name", "PositiveOrZeroNum", "library", "Types::Common::Numeric", "library_name", "PositiveOrZeroNum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1311 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Ref, "name", "Ref", "library", "Types::Standard", "library_name", "Ref"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1334 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_RegexpRef, "name", "RegexpRef", "library", "Types::Standard", "library_name", "RegexpRef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1357 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_RoleName, "name", "RoleName", "library", "Types::Standard", "library_name", "RoleName"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1410 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_ScalarRef, "name", "ScalarRef", "library", "Types::Standard", "library_name", "ScalarRef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1433 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Set, "name", "Set", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "Set"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1456 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_SimpleStr, "name", "SimpleStr", "library", "Types::Common::String", "library_name", "SimpleStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1479 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_SingleDigit, "name", "SingleDigit", "library", "Types::Common::Numeric", "library_name", "SingleDigit"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1502 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Slurpy, "name", "Slurpy", "library", "Types::Standard", "library_name", "Slurpy"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1525 15 10 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Str, "name", "Str", "library", "Types::Standard", "library_name", "Str"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1548 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_StrLength, "name", "StrLength", "library", "Types::Common::String", "library_name", "StrLength"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1571 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_StrMatch, "name", "StrMatch", "library", "Types::Standard", "library_name", "StrMatch"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1594 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_StrictNum, "name", "StrictNum", "library", "Types::Standard", "library_name", "StrictNum"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1627 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_StrongPassword, "name", "StrongPassword", "library", "Types::Common::String", "library_name", "StrongPassword"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1650 3 5 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Suit, "name", "Suit", "library", "Acme::Mitey::Cards::Types::Source", "library_name", "Suit"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1673 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Tied, "name", "Tied", "library", "Types::Standard", "library_name", "Tied"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1696 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Tuple, "name", "Tuple", "library", "Types::Standard", "library_name", "Tuple"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1719 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Undef, "name", "Undef", "library", "Types::Standard", "library_name", "Undef"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1742 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_UpperCaseSimpleStr, "name", "UpperCaseSimpleStr", "library", "Types::Common::String", "library_name", "UpperCaseSimpleStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1765 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_UpperCaseStr, "name", "UpperCaseStr", "library", "Types::Common::String", "library_name", "UpperCaseStr"}, "Acme::Mitey::Cards::Types::TypeConstraint")
1788 0 0 $type ||= bless({"check", \&Acme::Mitey::Cards::Types::is_Value, "name", "Value", "library", "Types::Standard", "library_name", "Value"}, "Acme::Mitey::Cards::Types::TypeConstraint")

or 3 conditions

line l !l&&r !l&&!r condition
158 0 0 0 not defined $_[0] or $_[0] eq ""
0 0 0 not defined $_[0] or $_[0] eq "" or $_[0] eq 0
0 0 0 not defined $_[0] or $_[0] eq "" or $_[0] eq 0 or $_[0] eq 1
1418 0 0 0 ref $_[0] eq 'SCALAR' || ref $_[0] eq 'REF'
1598 0 0 0 $val =~ /\A[+-]?[0-9]+\z/ or $val =~ /\A(?:[+-]?) # matches optional +- in the beginning
1607 0 0 0 $val =~ /\A[+-]?[0-9]+\z/ or $val =~ /\A(?:[+-]?) # matches optional +- in the beginning
1677 0 0 0 !ref($_[0]) || !tied(&Scalar::Util::reftype($_[0]) eq 'HASH' ? %{$_[0];} : (&Scalar::Util::reftype($_[0]) eq 'ARRAY' ? @{$_[0];} : (&Scalar::Util::reftype($_[0]) =~ /^(SCALAR|REF)$/ ? ${$_[0];} : undef)))
1681 0 0 0 !ref($_[0]) || !tied(&Scalar::Util::reftype($_[0]) eq 'HASH' ? %{$_[0];} : (&Scalar::Util::reftype($_[0]) eq 'ARRAY' ? @{$_[0];} : (&Scalar::Util::reftype($_[0]) =~ /^(SCALAR|REF)$/ ? ${$_[0];} : undef)))