line |
true |
false |
branch |
24
|
1 |
0 |
unless ('Parse::Eyapp::Driver'->can('YYParse')) |
2072
|
20 |
0 |
unless $class->isa('Parse::Eyapp::Node') |
|
0 |
0 |
if (ref $_[0]) { } |
|
0 |
4 |
if (defined $_[0]) |
|
0 |
4 |
unless $self->input and defined ${$self->input;} |
|
0 |
0 |
unless $index |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
if $newaction and reftype $newaction eq 'CODE' |
|
0 |
0 |
if $_[0]->YYBuildingTree |
|
0 |
0 |
if $_[0]->YYBuildingTree |
|
0 |
0 |
if ($self->YYIssemantic($_)) |
|
0 |
0 |
if $self->YYIsterm($_) |
|
0 |
0 |
if (ref $ch eq $PREFIX . '_PAREN') |
|
0 |
0 |
unless ref $ch |
|
0 |
0 |
if $_[0]->YYBuildingTree |
|
0 |
0 |
if $_[0]->YYBuildingTree |
|
0 |
0 |
if ($self->YYIssemantic($_)) |
|
0 |
0 |
if $self->YYIsterm($_) |
|
0 |
0 |
if (ref $ch eq $PREFIX . '_PAREN') |
|
0 |
0 |
unless ref $ch |
|
0 |
0 |
if ($self->YYIssemantic($_)) |
|
0 |
0 |
if UNIVERSAL::can($PREFIX . 'TERMINAL', 'save_attributes') |
|
0 |
0 |
if ($self->YYIsterm($_)) |
|
0 |
0 |
unless (UNIVERSAL::isa($ch, 'Parse::Eyapp::Node')) |
|
0 |
0 |
if (UNIVERSAL::isa($ch, $PREFIX . '_PAREN')) |
|
0 |
0 |
if $_ =~ qr/@/ |
|
0 |
0 |
unless ref $ch |
|
0 |
0 |
unless $name =~ /${lhs}_\d+$/ |
|
0 |
0 |
if ($childisterminal and not $finalclass->isa($PREFIX . 'TERMINAL')) |
|
0 |
0 |
if ($bypass and @children == 1) |
|
0 |
0 |
if ($self->YYIsterm($_)) |
|
0 |
0 |
if (UNIVERSAL::isa($ch, $PREFIX . '_PAREN')) |
|
0 |
0 |
if (UNIVERSAL::isa($ch, $PREFIX . '_CODE')) |
|
0 |
0 |
unless ref $ch |
|
0 |
0 |
unless $lhs =~ /^\@[0-9]+\-([0-9]+)$/ |
|
0 |
0 |
unless exists $_[$dotpos] and UNIVERSAL::isa($_[$dotpos], 'CODE') |
|
0 |
0 |
if defined $code |
|
0 |
0 |
if (UNIVERSAL::isa($code, 'CODE')) { } |
|
0 |
0 |
if (unpack('A1', $lhs) eq '@') { } |
|
0 |
0 |
if @_ |
|
0 |
0 |
if @_ |
|
0 |
0 |
if @_ |
|
0 |
0 |
if @_ |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless exists $$self{'USER'} |
|
0 |
0 |
if exists $$state{'ACTIONS'} |
|
0 |
0 |
if ($actions{$_} > 0) |
|
0 |
0 |
if exists $$state{'DEFAULT'} |
|
0 |
0 |
if (keys %reduce) |
|
0 |
0 |
if @_ |
|
0 |
0 |
if @_ |
|
0 |
0 |
if reftype $state and reftype $state eq 'ARRAY' |
|
0 |
0 |
if exists $$stateentry{'ACTIONS'}{$token} |
|
0 |
0 |
if (defined $token) |
|
0 |
0 |
if exists $$stateentry{'DEFAULT'} |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if ($index) |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if ($_[0] eq 'shift') { } |
|
0 |
0 |
if ($_[1] eq 'shift') { } |
|
0 |
0 |
if ($self->YYIs($syntaxVariable)) { } |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if (@_) |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if ($file) |
|
0 |
0 |
unless defined $$self{'INPUTFILE'} |
|
0 |
0 |
if (ref $self) { } |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless exists $$self{'TERMS'}{$symbol} |
|
0 |
0 |
if @_ |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless defined $$self{'LEX'} |
|
0 |
1 |
if (ref $self) { } |
|
0 |
0 |
if $t eq '' |
|
0 |
0 |
if (looks_like_number $spec) { } |
|
0 |
0 |
if @_ |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
unless $conflictName |
|
0 |
0 |
if ($lhs) { } |
|
0 |
0 |
unless $$self{'ERROR'} |
|
0 |
4 |
unless ($$self{'ERROR'}) |
|
0 |
0 |
unless $$self{'LEX'} and reftype($$self{'LEX'}) eq 'CODE' |
|
0 |
4 |
unless ($$self{'LEX'}) |
|
0 |
0 |
if $@ |
|
0 |
4 |
if ($$self{'DEBUG'}) { } |
|
0 |
0 |
wantarray ? : |
|
0 |
1 |
if @_ |
|
0 |
0 |
if ($prompt) |
|
0 |
0 |
unless defined $$self{'PROMPT'} |
|
0 |
0 |
if (ref $self) { } |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
if reftype $currentprod |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if ($index) |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if $index < 0 and -$index <= @{$$self{'STACK'};} |
|
0 |
0 |
unless defined $state |
|
0 |
0 |
unless looks_like_number $action |
|
0 |
0 |
unless ref $token |
|
0 |
0 |
unless defined $action |
|
0 |
0 |
$cS ? : |
|
0 |
0 |
unless @conflictStates |
|
0 |
0 |
unless (looks_like_number $actionnum) |
|
0 |
0 |
unless (looks_like_number $action) |
|
0 |
0 |
unless defined $token |
|
0 |
0 |
unless ref $token |
|
0 |
0 |
if (exists $$self{'STATES'}[$conflictstate]{'ACTIONS'} and $$self{'STATES'}[$conflictstate]{'ACTIONS'}{$_} >= 0) |
|
0 |
0 |
unless defined $action |
|
0 |
0 |
$cS ? : |
|
0 |
0 |
unless $cs |
|
0 |
0 |
unless (looks_like_number $actionnum) |
|
0 |
0 |
unless (looks_like_number $action) |
|
0 |
0 |
unless defined $token |
|
0 |
0 |
unless ref $token |
|
0 |
0 |
if (exists $$self{'STATES'}[$conflictstate]{'ACTIONS'} and $$self{'STATES'}[$conflictstate]{'ACTIONS'}{$_} >= 0) |
|
0 |
0 |
$cS ? : |
|
0 |
0 |
unless @conflictStates |
|
0 |
0 |
unless defined $token |
|
0 |
0 |
unless ref $token |
|
0 |
0 |
if (defined $$self{'CONFLICT'}{$conflictName}{$_}) { } |
|
0 |
0 |
looks_like_number $n ? : |
|
0 |
0 |
if $newaction{$n} and reftype($newaction{$n}) eq 'CODE' |
|
0 |
0 |
if $length |
|
0 |
0 |
if (defined $nextstate) |
|
0 |
0 |
if (@$stack > $length) |
|
0 |
0 |
if 'ARRAY' eq reftype $index |
|
0 |
0 |
unless looks_like_number $index |
|
0 |
0 |
if ($index) |
|
0 |
0 |
unless $length <= 0 |
|
0 |
0 |
if $_[1] |
|
0 |
0 |
if @_ |
|
0 |
17 |
unless exists $$checklist{$prm} |
|
0 |
17 |
unless ref $value eq $$checklist{$prm} |
|
0 |
8 |
unless exists $$outhash{$_} |
|
0 |
0 |
if 'Parse::Eyapp::Driver'->can('_DBParse') |
|
0 |
0 |
if (/^my\s+\$lex;##!!##$/ .. /^\s*}\s*#\s*_Parse\s*$/) |
|
0 |
0 |
if (open DRV, "<$fname") { } |
|
0 |
0 |
if (exists $$yydata{'ERRMSG'}) |
|
0 |
0 |
if ($attr) { } |
|
0 |
0 |
if (blessed $attr and $attr->can('str')) { } |
|
0 |
0 |
elsif (ref $attr eq 'ARRAY') { } |
|
0 |
0 |
$_ ne '' ? : |
|
0 |
0 |
@expected > 1 ? : |
|
0 |
0 |
if (@expected) |
|
0 |
0 |
if $lineno > 1 |
|
0 |
0 |
if (blessed $attr and $attr->can('line')) { } |
|
0 |
0 |
elsif (ref $attr eq 'ARRAY') { } |
|
0 |
416 |
if (exists $conflictiveStates{$stateno}) |
|
222 |
102 |
unless (defined $$token) |
|
96 |
0 |
exists $$actions{'DEFAULT'} ? : |
|
228 |
96 |
exists $$actions{'ACTIONS'}{$$token} ? : |
|
324 |
92 |
if (exists $$actions{'ACTIONS'}) { } |
|
0 |
222 |
if ($$errstatus) |
|
218 |
4 |
if defined $$token and $$token ne '' |
|
222 |
194 |
if ($act > 0) |
|
4 |
190 |
unless $act |
|
0 |
0 |
unless $lhs =~ /^\@[0-9]+\-([0-9]+)$/ |
|
0 |
194 |
if (unpack('A1', $lhs) eq '@') |
|
189 |
5 |
$$dotpos ? : |
|
4 |
0 |
@sempar ? : |
|
190 |
4 |
$code ? : |
|
4 |
190 |
if ($$check eq 'ACCEPT') |
|
0 |
190 |
if ($$check eq 'ABORT') |
|
190 |
0 |
unless ($$check eq 'ERROR') |
|
416 |
0 |
if (defined $act) |
|
0 |
0 |
unless $$errstatus |
|
0 |
0 |
unless ($$errstatus) |
|
0 |
0 |
if ($$token eq '') |
|
0 |
0 |
if ($$errstatus == 3) |
|
0 |
0 |
unless (@$stack) |
|
0 |
0 |
if @_ > 1 |
|
0 |
0 |
ref $_[0]->attr eq 'ARRAY' ? : |
|
0 |
0 |
if $package & $package->can('help') |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless defined $$self{'ERROR'} |
|
0 |
1 |
if (ref $self) { } |
|
4 |
646 |
if @_ |
|
0 |
4 |
if (ref $_[0]) { } |
|
4 |
646 |
if (@_) |
|
0 |
650 |
unless defined $$self{'INPUT'} |
|
650 |
0 |
if (ref $self) { } |
|
4 |
0 |
if @_ |
|
0 |
4 |
unless defined $$self{'TOKENLINE'} |
|
4 |
0 |
if (ref $self) { } |
|
0 |
0 |
if $help |
|
0 |
0 |
if $debug |
|
0 |
0 |
if not $file and @ARGV |
|
0 |
0 |
if defined $slurp |
|
0 |
0 |
if defined $prompt |
|
0 |
0 |
unless defined $_[0] |
|
0 |
0 |
if (ref $_[0]) { } |
|
0 |
0 |
if ($commandinput) { } |
|
0 |
0 |
elsif ($inputfromfile) { } |
|
0 |
0 |
if (defined $TERMINALinfo) |
|
0 |
0 |
if ($tree and blessed $tree and $tree->isa('Parse::Eyapp::Node')) { } |
|
0 |
0 |
elsif ($tree and ref $tree) { } |
|
0 |
0 |
elsif (defined $tree) { } |
|
0 |
0 |
if ($showtree) |
|
0 |
0 |
if ($@) { } |
|
0 |
0 |
if ($yaml and ref $tree) |
|
0 |
0 |
unless defined $extension and $tree->can($extension) |
|
0 |
0 |
if not defined $sfile and defined $file |
|
0 |
0 |
if ($dot and blessed $tree) |
|
0 |
0 |
if (my $ne = $parser->YYNberr > 0) { } |
|
0 |
1 |
if exists $$self{'VERSION'} and $$self{'VERSION'} < $COMPATIBLE |
|
0 |
1 |
if ref $class |
|
0 |
1 |
unless $$self{'ERROR'} |
|
1 |
0 |
unless ($$self{'ERROR'}) |
|
1 |
0 |
unless ($$self{'LEX'}) |
|
0 |
0 |
unless open $f, $fn |
|
0 |
0 |
if $msg |
|
0 |
0 |
if ($fn and -r $fn) { } |
|
0 |
0 |
if (ref $self) { } |
|
0 |
2 |
if ref $class |
|
0 |
2 |
if (@_) |
|
1 |
1 |
if defined $$classlexer |
|
1 |
0 |
if (defined $$classlexer) |
|
222 |
0 |
if @_ |
|
0 |
222 |
unless defined $$self{'TOKENLINE'} |
|
222 |
0 |
if (ref $self) { } |
2077
|
1 |
0 |
unless ('Parse::Eyapp::Node'->can('m')) |
3116
|
0 |
0 |
unless defined $file |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') and @{$$self{'children'};} |
|
0 |
0 |
if $p->pattern->($_[0], $_[1], $index, $p) |
|
0 |
0 |
unless (ref $node and UNIVERSAL::can($node, 'children')) |
|
0 |
0 |
if $p->pattern->($_[0], $_[1], $index, $p) |
|
0 |
0 |
if not defined $_ or &$match($_) |
|
0 |
0 |
if $INDENT >= 0 and $root->can('info') |
|
0 |
0 |
if defined $information |
|
0 |
0 |
unless ref $tree1 eq ref $tree2 |
|
0 |
0 |
if exists $$tree1{$_} and not exists $$tree2{$_} |
|
0 |
0 |
if exists $$tree2{$_} and not exists $$tree1{$_} |
|
0 |
0 |
if defined $$tree1{$_} and not defined $$tree2{$_} |
|
0 |
0 |
if defined $$tree2{$_} and not defined $$tree1{$_} |
|
0 |
0 |
unless $handler{$_}($$tree1{$_}, $$tree2{$_}) |
|
0 |
0 |
unless @children1 == @children2 |
|
0 |
0 |
unless _equal($_, $ch2) |
|
0 |
0 |
if ref $_[0] eq 'CODE' |
|
0 |
0 |
if (s/\A([A-Za-z_][A-Za-z0-9_:]*)\s*([),])/$1()$2/) |
|
0 |
0 |
if (s/\A([A-Za-z_][A-Za-z0-9_:]*)\s+([A-Za-z_])/$1()$2/) |
|
0 |
0 |
if (s/\A([A-Za-z_][A-Za-z0-9_:]*)\s*$/$1()/) |
|
0 |
0 |
if (s/\A([A-Za-z_][A-Za-z0-9_:]*)//) |
|
0 |
0 |
if (s/\A[(]//) |
|
0 |
0 |
if s/\A,// |
|
0 |
0 |
unless @index |
|
0 |
0 |
unless defined $class and $class =~ /^[a-zA-Z_][\w:]*$/ |
|
0 |
0 |
if (s/\A[)]//) |
|
0 |
0 |
unless $_ |
|
0 |
0 |
unless s/\A\s+// |
|
0 |
0 |
if @index |
|
0 |
0 |
unless $_->isa('Parse::Eyapp::Node') |
|
0 |
0 |
if (defined $handler and UNIVERSAL::isa($handler, 'CODE')) |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if $res |
|
0 |
0 |
if ($INDENT >= 0 and UNIVERSAL::can($self, 'footnote')) |
|
0 |
0 |
if defined $_ |
|
0 |
0 |
if $INDENT >= 0 and UNIVERSAL::can($self, 'info') |
|
0 |
0 |
if defined $information |
|
0 |
0 |
if ($INDENT >= 0 and $res) |
|
0 |
0 |
if @children |
|
0 |
0 |
if $INDENT > 1 and $class =~ tr/\n// > $LINESEP |
|
0 |
0 |
if @children |
|
0 |
0 |
if ($INDENT > 0) { } |
|
0 |
0 |
ref $_ eq 'CODE' ? : |
|
0 |
0 |
unless UNIVERSAL::can($self, 'child') |
|
0 |
0 |
unless defined $index |
|
0 |
0 |
if defined $value |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless ref $match eq 'CODE' and @_ > 0 |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') and $self->children > 0 |
|
0 |
0 |
if $_ == $child |
|
0 |
0 |
if ($i == $self->children) |
|
0 |
0 |
if (ref $child) |
|
0 |
0 |
unless $child =~ /\d+/ and $child < $numchildren |
|
0 |
0 |
unless /\d+/ and $_ < $t->children |
|
0 |
0 |
unless @_ > 1 |
|
0 |
0 |
if defined($key = firstval(sub {
;
}
, keys %handler)) |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless $file =~ /\.dot$/ |
|
0 |
0 |
if ($file) { } |
|
0 |
0 |
if ref $_[-1] eq 'CODE' |
|
0 |
0 |
unless $newnodeclass->isa('Parse::Eyapp::Node') |
|
0 |
0 |
if (defined $handler and UNIVERSAL::isa($handler, 'CODE')) |
|
0 |
0 |
if (UNIVERSAL::can($node, 'info')) { } |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') and $self->children > 0 |
|
0 |
0 |
if $_ == $child |
|
0 |
0 |
if ($i == $self->children) |
|
0 |
0 |
if (ref $child) |
|
0 |
0 |
unless $child =~ /\d+/ and $child < $numchildren |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') and $self->children > 0 |
|
0 |
0 |
if $_ == $child |
|
0 |
0 |
if ($i == $self->children) |
|
0 |
0 |
if (ref $child) |
|
0 |
0 |
unless $child =~ /\d+/ and $child < $numchildren |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') and @{$$self{'children'};} |
|
0 |
0 |
unless my(@patterns) = @_ |
|
0 |
0 |
unless $a = first(sub {
;
}
, @_) |
|
0 |
0 |
if $$pattern{'PATTERN'}($n{'node'}) |
|
0 |
0 |
if defined $f |
|
0 |
0 |
if (@{$$mn{'patterns'};}) |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if exists $cache{$key} |
|
0 |
0 |
unless $$_{'NAME'} |
|
0 |
0 |
if @_ |
|
0 |
0 |
ref $_ eq 'CODE' ? : |
|
0 |
0 |
unless UNIVERSAL::can($self, 'children') |
|
0 |
0 |
unless ref $_[0] |
|
0 |
0 |
if (defined $DELIMITER and exists $match_del{$DELIMITER}) { } |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if (ref $_ eq 'CODE') { } |
|
0 |
0 |
elsif (defined $_) { } |
|
0 |
0 |
if (defined $_[1]) |
|
0 |
0 |
if ($type) |
3121
|
1 |
0 |
unless ('Parse::Eyapp::YATW'->can('m')) |
3420
|
0 |
0 |
if $_ == $before |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if ($task eq 'unshift') { } |
|
0 |
0 |
elsif ($task eq 'insert_before') { } |
|
0 |
0 |
unless defined $father |
|
0 |
0 |
if defined $f |
|
0 |
0 |
if (&$pattern($n{'node'})) |
|
0 |
0 |
wantarray ? : |
|
0 |
0 |
if defined splice(@{$$node{'children'};}, $i, 1) |
|
0 |
0 |
if (UNIVERSAL::isa($node->child($i), 'Parse::Eyapp::Node::DELETE')) |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless ref $args{'PATTERN'} eq 'CODE' |
|
0 |
0 |
if (defined($a = invalid_keys(\%_new_yatw, \%args))) |
|
0 |
0 |
if @_ |
|
0 |
0 |
unless my $node = $_[0] |
|
0 |
0 |
if $self->pattern->($_[0], $_[1], $index, $self) |
|
0 |
0 |
unless (ref $node and UNIVERSAL::can($node, 'children')) |
|
0 |
0 |
if ($self->pattern->($_[0], $_[1], $index, $self)) |
|
0 |
0 |
unless defined $k |
|
0 |
0 |
unless defined $ancestor |
3425
|
0 |
0 |
defined pos $_ ? : |
|
0 |
0 |
defined $_ ? : |
3465
|
0 |
1 |
if ref $class |
3467
|
0 |
1 |
unless 'Hash::Weighted::Categorize::Parser'->isa('Parse::Eyapp::Driver') |