Condition Coverage

blib/lib/MarpaX/Languages/M4/Impl/Default.pm
Criterion Covered Total %
condition 117 257 45.5


and 3 conditions

line !l l&&!r l&&r condition
714 0 0 0 $nextPos < length $_ and substr($_, $nextPos++, 1) eq '='
0 0 0 $nextPos < length $_ and substr($_, $nextPos++, 1) eq '=' and $nextPos < length $_
723 0 0 0 &Str()->check($_) and $_ eq '*'
1210 0 0 0 not $self->_debug_exists($_) and $_ ne 'V'
1665 14 3056 21 $self->_changeword_is_character_per_character and not $self->_regexp_isDefault
3070 2 19 $self->_changeword_is_character_per_character and not $self->_regexp_isDefault and $lexemeLength > 1
1700 80 0 23916 $commentStartLength > 0 and $commentEndLength > 0
1737 20 0 21716 $quoteStartLength > 0 and $quoteEndLength > 0
1958 6165 35 10 $self->_no_gnu_extensions and exists $Default_EXTENSIONS{$_}
35 0 10 $self->_no_gnu_extensions and exists $Default_EXTENSIONS{$_} and $Default_EXTENSIONS{$_}
1990 0 0 1 $self->_eof and $input =~ /\G[^\n]*\z/u
2187 0 0 1377 $self->_quoteStartLength > 0 and $self->_quoteEndLength > 0
2196 0 0 4392 $self->_quoteStartLength > 0 and $self->_quoteEndLength > 0
2277 2 15 1 $_ == 0 and $#macros > 0
2375 3 2 1 &M4Macro()->check($args[$_]) and not $macro->macro_paramCanBeMacro($_)
2460 0 45 246 scalar @args >= 3 and scalar @args <= 5
2548 0 0 0 &Str()->check($flags) and length $flags <= 0
2573 17 0 6 &Undef()->check($start) and &Undef()->check($end)
2595 13 0 3 &Undef()->check($start) and &Undef()->check($end)
2658 0 0 0 &Int()->check($number) and $number == 0
2698 0 31 0 exists $ENV{'M4PATH'} && defined $ENV{'M4PATH'}
2782 0 0 218 defined $number && !ref($number) && $number =~ /\A-?[0-9]+\z/u
2799 0 0 33 defined $number && !ref($number) && $number =~ /\A-?[0-9]+\z/u
3099 29 1 26 $s eq '-' and defined $from
3897 0 0 0 not $fh->eof and $character ne "\n"
3908 0 0 0 $number[$i] > 0 and not $fh->read($string[$i], $number[$i])
3945 0 0 0 $operation eq 'D' and $character eq '-'
4013 0 0 29 ref $contentp && &Scalar::Util::reftype($contentp) eq 'SCALAR'
4121 0 0 0 $parse and is_interactive($fh)
4322 2449 0 0 $canTrace and $self->_canDebug('a') || $self->_canDebug('c')
4339 2447 0 0 $canTrace and $self->_canDebug('e') || $self->_canDebug('c')

or 2 conditions

line l !l condition
801 0 0 $VERSION || 'dev'
2220 314 0 $defn //= ''
2310 59 7 $defn //= ''
2454 9 12 $string2 // ''
2473 246 0 $string1 //= ''
2474 246 0 $string2 //= ''
2475 246 0 $equal //= ''
2476 242 4 $notEqual //= ''
2486 45 0 $string1 //= ''
2487 45 0 $string2 //= ''
2488 45 0 $equal //= ''
2580 23 0 $start //= ''
2602 16 0 $start //= ''
2827 46 172 $number //= 0
2980 6 0 $string //= ''
3154 15 1 $to //= ''
3230 9 2 $replacement //= ''
3299 78 0 $number //= ''
3326 21 0 $number //= ''
3477 8 0 $command //= ''
3540 2 0 $template //= ''
3739 0 0 'IO::File'->new($ENV{'M4_ENCODE_LOCALE'} ? &encode('locale_fs', $file) : $file, 'w') || die("${file}: $!")
3759 0 0 $CURRENTVERSION ||= 'dev'
4025 29 0 'IO::File'->new($ENV{'M4_ENCODE_LOCALE'} ? &encode('locale_fs', $uni_file) : $uni_file, 'r') || die($!)
4193 3 0 $obj->can('DOES') || 'isa'

or 3 conditions

line l !l&&r !l&&!r condition
723 0 0 0 &PositiveOrZeroInt()->check($_) or &Str()->check($_) and $_ eq '*'
1803 33 3 2407 $self->parser_isQuotedstring($input, $lparenPos, $maxPos, \$dummy, \$dummy) || $self->parser_isComment($input, $lparenPos, $maxPos, \$dummy, \$dummy)
1813 1854 587 2 $lparen eq '(' or not $macro->macro_needParams
1870 2450 0 0 $macro->can('DOES') || $macro->can('isa')
1875 0 0 2450 $self->_debug_get('t') or $self->_trace_get($macro->name)
2212 312 2 0 !defined($name) || Type::Tiny::XS::Str($name) || do { if (&Scalar::Util::blessed($name)) { my $method = $name->can('DOES') || $name->can('isa'); $name->$method('MarpaX::Languages::M4::Role::Macro'); } }
309 5 0 !defined($defn) || Type::Tiny::XS::Str($defn) || do { if (&Scalar::Util::blessed($defn)) { my $method = $defn->can('DOES') || $defn->can('isa'); $defn->$method('MarpaX::Languages::M4::Role::Macro'); } }
2277 1 2 15 $_ == 0 and $#macros > 0 or $_ > 0
2300 56 3 0 !defined($defn) || Type::Tiny::XS::Str($defn) || do { if (&Scalar::Util::blessed($defn)) { my $method = $defn->can('DOES') || $defn->can('isa'); $defn->$method('MarpaX::Languages::M4::Role::Macro'); } }
2351 9 1 0 !defined($name) || Type::Tiny::XS::Str($name) || do { if (&Scalar::Util::blessed($name)) { my $method = $name->can('DOES') || $name->can('isa'); $name->$method('MarpaX::Languages::M4::Role::Macro'); } }
2398 15 0 0 !defined($name) || Type::Tiny::XS::Str($name) || do { if (&Scalar::Util::blessed($name)) { my $method = $name->can('DOES') || $name->can('isa'); $name->$method('MarpaX::Languages::M4::Role::Macro'); } }
2440 0 0 62 &Undef()->check($name) or &Undef()->check($string1)
2585 21 1 0 $end ||= $DEFAULT_QUOTE_END
2607 12 1 0 $end ||= $DEFAULT_COMMENT_END
2782 218 0 0 $fh->can('DOES') || $fh->can('isa')
2914 147 1 35 $number == $self->builtin_divnum or $number == 0
148 2 33 $number == $self->builtin_divnum or $number == 0 or not $self->_diversions_exists($number)
3010 0 1 28 &Undef()->check($string) or &Undef()->check($regexpString)
3369 161 2 8 &Undef()->check($radix) or length $radix <= 0
3380 0 1 170 $radix < 1 or $radix > 36
3391 165 0 5 &Undef()->check($width) or length $width <= 0
3771 0 0 0 $self->_quote_start ne $DEFAULT_QUOTE_START or $self->_quote_end ne $DEFAULT_QUOTE_END
3786 0 0 0 $self->_comment_start ne $DEFAULT_COMMENT_START or $self->_comment_end ne $DEFAULT_COMMENT_END
3934 0 0 0 $character eq 'C' or $character eq 'D'
0 0 0 $character eq 'C' or $character eq 'D' or $character eq 'F'
0 0 0 $character eq 'C' or $character eq 'D' or $character eq 'F' or $character eq 'T'
0 0 0 $character eq 'C' or $character eq 'D' or $character eq 'F' or $character eq 'T' or $character eq 'Q'
4014 29 0 0 $silent //= false()
4015 29 0 0 $parse //= true()
4265 0 0 0 Type::Tiny::XS::Str($input) || do { if (&Scalar::Util::blessed($input)) { my $method = $input->can('DOES') || $input->can('isa'); $input->$method('MarpaX::Languages::M4::Role::Macro'); } }
4266 0 0 0 $noQuote //= false()
4277 11 0 0 $macro->can('DOES') || $macro->can('isa')
4283 2 0 9 $macro->stub == \&MarpaX::Languages::M4::Impl::Default::builtin_m4wrap or $macro->stub == \&MarpaX::Languages::M4::Impl::Default::builtin_include
2 0 9 $macro->stub == \&MarpaX::Languages::M4::Impl::Default::builtin_m4wrap or $macro->stub == \&MarpaX::Languages::M4::Impl::Default::builtin_include or $macro->stub == \&MarpaX::Languages::M4::Impl::Default::builtin_sinclude
4297 2450 0 0 $macro->can('DOES') || $macro->can('isa')
4314 2449 0 0 $macro->can('DOES') || $macro->can('isa')
4322 0 0 0 $self->_canDebug('a') || $self->_canDebug('c')
4339 0 0 0 $self->_canDebug('e') || $self->_canDebug('c')