Condition Coverage

blib/lib/MarpaX/Languages/M4/Impl/Parser.pm
Criterion Covered Total %
condition 33 54 61.1


and 3 conditions

line !l l&&!r l&&r condition
185 0 0 0 $nesting_limit > 0 and $parse_level > $nesting_limit
206 0 0 2018 ref $inputRef && &Scalar::Util::reftype($inputRef) eq 'SCALAR'
315 15094 0 1854 exists $expected{'NOPARAM'} and $canCollectArguments
329 0 4073 12860 exists $expected{'LPAREN'} and $canCollectArguments
4073 0 12860 exists $expected{'LPAREN'} and $canCollectArguments and do { pos ${$inputRef;} = $rc{'pos'}; 1 }
0 10990 1870 exists $expected{'LPAREN'} and $canCollectArguments and do { pos ${$inputRef;} = $rc{'pos'}; 1 } and ${$inputRef;} =~ /\G\(\s*/u
343 0 4073 10990 exists $expected{'RPAREN'} and $canCollectArguments
4073 9121 1869 exists $expected{'RPAREN'} and $canCollectArguments and substr(${$inputRef;}, $rc{'pos'}, 1) eq ')'
354 118 4051 9025 exists $expected{'COMMA'} and $canCollectArguments
367 13600 26637 9654 $g == $BYMACROARGUMENTS_G and $_ eq 'QUOTEDSTRING'
13600 16109 10528 $g == $BYMACROARGUMENTS_G and $_ eq 'COMMENT'
595 0 0 1 $self->_parse_level == 1 and $self->impl_eoi
612 0 0 164 ref $inputRef && &Scalar::Util::reftype($inputRef) eq 'SCALAR'

or 3 conditions

line l !l&&r !l&&!r condition
124 0 0 2022 not defined $hash or ref $hash ne 'HASH'
0 0 2022 not defined $hash or ref $hash ne 'HASH' or grep {not exists $hash->{$_};} 'NULL_VALUES', 'REGISTRATIONS', 'CLOSURE_BY_SYMBOL_ID', 'CLOSURE_BY_RULE_ID', 'RESOLVE_PACKAGE', 'RESOLVE_PACKAGE_SOURCE', 'PER_PARSE_CONSTRUCTOR'
206 0 1854 0 !defined($macro) || do { if (&Scalar::Util::blessed($macro)) { my $method = $macro->can('DOES') || $macro->can('isa'); $macro->$method('MarpaX::Languages::M4::Role::Macro'); } }
305 4068 5 12875 $isQuotedString || $isComment
572 1 0 1855 &Undef()->check($valueRef) or &Undef()->check(${$valueRef;})