line | % | coverage | branch |
23 | 50 | T | F | unless $self->make_groups |
31 | 50 | T | F | unless $self->recurse_before($self, 'clean_axis_and_abbreviations') |
32 | 100 | T | F | unless $self->recurse_before($self, 'claim_groups') |
33 | 50 | T | F | unless $self->recurse_after($self, 'build_steps') |
34 | 50 | T | F | unless $self->recurse_after($self, 'build_paths') |
41 | 50 | T | F | unless $self->binops(['|'], 'UnionExpr') |
42 | 50 | T | F | unless $self->recurse_before($self, 'unary_minus') |
43 | 50 | T | F | unless $self->binops(['*', 'div', 'mod'], 'MultiplicativeExpr') |
44 | 50 | T | F | unless $self->binops(['+', '-'], 'AdditiveExpr') |
45 | 50 | T | F | unless $self->binops(['<', '<=', '>', '>='], 'RelationalExpr') |
46 | 50 | T | F | unless $self->binops(['=', '!='], 'EqualityExpr') |
47 | 50 | T | F | unless $self->binops(['and'], 'AndExpr') |
48 | 50 | T | F | unless $self->binops(['or'], 'OrExpr') |
122 | 100 | T | F | if ($token->match('Symbol', '(')) { } |
| 100 | T | F | elsif ($token->match('Symbol', '[')) { } |
| 100 | T | F | elsif ($token->match('Symbol', ')')) { } |
| 100 | T | F | elsif ($token->match('Symbol', ']')) { } |
144 | 50 | T | F | if ($$parent{'type'} ne 'Group()') |
153 | 50 | T | F | if ($$parent{'type'} ne 'Predicate') |
172 | 100 | T | F | unless $self->$method($root) |
176 | 50 | T | F | unless $self->recurse_before($token, $method) |
187 | 50 | T | F | unless $self->recurse_after($token, $method) |
190 | 50 | T | F | unless $self->$method($root) |
221 | 100 | T | F | if ($token->match('NodeType')) { } |
| 100 | T | F | elsif ($token->match('FunctionName')) { } |
| 50 | T | F | elsif ($token->match('Group()')) { } |
227 | 50 | T | F | if (not $next->match('Group()')) |
234 | 100 | T | F | if ($$token{'content'} eq 'processing-instruction') { } |
236 | 100 | T | F | if ($childs == 0) { } |
| 100 | T | F | elsif ($childs == 1) { } |
242 | 100 | T | F | if ($$next{'tokens'}[0]{'type'} eq 'Literal') { } |
256 | 100 | T | F | if ($childs > 0) |
271 | 50 | T | F | if (not $next->match('Group()')) |
280 | 50 | T | F | unless $self->claim_groups($next) |
287 | 50 | T | F | unless $self->make_arg_list($token, $next) |
317 | 100 | T | F | unless scalar @{$$arg_group{'tokens'};} |
325 | 100 | T | F | if ($token->match('Symbol', ',')) { } |
356 | 100 | T | F | if ($token->match('AxisName')) { } |
| 100 | T | F | elsif ($token->match('Symbol', '@')) { } |
| 100 | T | F | elsif ($token->match('Operator', '//')) { } |
| 100 | T | F | elsif ($token->match('Symbol', '.')) { } |
| 100 | T | F | elsif ($token->match('Symbol', '..')) { } |
360 | 50 | T | F | unless ($next->match('Symbol', '::')) |
447 | 100 | T | F | if ($token->match('AxisSpecifier')) { } |
| 100 | T | F | elsif ($token->match('NodeTypeTest') or $token->match('NameTest')) { } |
| 50 | T | F | elsif ($token->match('Predicate')) { } |
451 | 50 | T | F | unless (defined $next) |
457 | 50 | T | F | unless ($next->match('NodeTypeTest') or $next->match('NameTest')) |
473 | 50 | T | F | if ($token->match('Predicate')) { } |
496 | 100 | T | F | if ($token->match('Predicate')) { } |
530 | 100 | T | F | if ($token->match('Step')) { } |
| 100 | T | F | elsif ($token->match('Operator', '/')) { } |
537 | 50 | T | F | unless $self->slurp_path($path, $tokens) |
550 | 50 | T | F | unless $self->slurp_path($path, $tokens) |
552 | 50 | T | F | unless (scalar @{$$path{'tokens'};}) |
575 | 100 | T | F | if (defined $t1) { } |
576 | 100 | T | F | if ($t1->match('Operator', '/')) { } |
580 | 50 | T | F | if (defined $t2) { } |
581 | 50 | T | F | if ($t2->match('Step')) { } |
613 | 100 | T | F | if ($token->match('Operator', $op)) |
615 | 50 | T | F | if (not scalar @{$$root{'tokens'};}) |
620 | 50 | T | F | if (not scalar @{$tokens;}) |
650 | 100 | T | F | if defined $prev |
677 | 100 | T | F | if ($token->match('Operator', '-')) |
679 | 100 | T | F | if (defined $$token{'next'} and defined $$token{'prev'} and $$token{'prev'}->is_expression) { } |