| line | true | false | branch | 
 
| 14 | 0 | 11 | ref $self ? : | 
 
| 197 | 1 | 1 | if $grammar | 
 
| 203 | 1 | 0 | if $grammar | 
 
| 220 | 11 | 0 | if ($renderer and !$self->{'renderer_obj'} || $self->{'renderer'} && $renderer ne $self->{'renderer'}) | 
 
| 319 | 1 | 41 | if ($stderr) { } | 
 
| 341 | 1 | 41 | if exists $self->{'data'}{'errors'} | 
 
| 363 | 0 | 40 | $renderer || $render_args ? : | 
 
| 388 | 1 | 39 | ref $self->{'args'} eq 'HASH' && %{$self->{'args'};} ? : | 
 
| 397 | 44 | 0 | exists $_->{'sentence'} ? : | 
 
|  | 2 | 44 | exists $_->{'comment'} ? : | 
 
| 404 | 12 | 49 | /\./u ? : | 
 
|  | 18 | 43 | $self->{'objects'}{$_} ? : | 
 
| 426 | 13 | 47 | if ($command_name eq 'say') { } | 
 
|  | 24 | 23 | elsif ($command_name eq 'set') { } | 
 
|  | 2 | 21 | elsif ($command_name eq 'append') { } | 
 
|  | 2 | 19 | elsif ($command_name eq 'add') { } | 
 
|  | 1 | 18 | elsif ($command_name eq 'subtract') { } | 
 
|  | 1 | 17 | elsif ($command_name eq 'multiply') { } | 
 
|  | 1 | 16 | elsif ($command_name eq 'divide') { } | 
 
|  | 1 | 15 | elsif ($command_name eq 'otherwise_if') { } | 
 
|  | 13 | 2 | elsif ($command_name eq 'if') { } | 
 
|  | 1 | 1 | elsif ($command_name eq 'otherwise') { } | 
 
|  | 1 | 0 | elsif ($command_name eq 'for') { } | 
 
| 430 | 13 | 0 | exists $tree->{'expression'} ? : | 
 
|  | 0 | 13 | exists $tree->{'list'} ? : | 
 
| 436 | 5 | 19 | if exists $tree->[1]{'list'} | 
 
| 443 | 5 | 0 | exists $tree->[1]{'list'} ? : | 
 
|  | 19 | 5 | exists $tree->[1]{'expression'} ? : | 
 
| 450 | 1 | 1 | $self->{'objects'}{$object} && $self->{'objects'}{$object} eq '[]' ? : | 
 
| 453 | 2 | 0 | exists $tree->[0]{'expression'} ? : | 
 
|  | 0 | 2 | exists $tree->[0]{'list'} ? : | 
 
| 455 | 1 | 1 | $obj_is_a_list ? : | 
 
| 485 | 0 | 0 | exists $tree->{'block'} ? : | 
 
|  | 1 | 0 | exists $tree->{'command'} ? : | 
 
| 492 | 1 | 0 | exists $tree->{'block'} ? : | 
 
|  | 12 | 1 | exists $tree->{'command'} ? : | 
 
| 498 | 0 | 0 | exists $tree->{'block'} ? : | 
 
|  | 1 | 0 | exists $tree->{'command'} ? : | 
 
| 518 | 2 | 0 | exists $_->{'sentence'} ? : | 
 
|  | 1 | 2 | exists $_->{'comment'} ? : | 
 
| 532 | 79 | 26 | exists $_->{'object'} ? : | 
 
| 536 | 26 | 79 | if (exists $parts[$i]{'operator'}) | 
 
| 537 | 1 | 25 | if ($parts[$i]{'operator'} eq 'in') { } | 
 
|  | 1 | 24 | elsif ($parts[$i]{'operator'} eq 'not in') { } | 
 
|  | 1 | 23 | elsif ($parts[$i]{'operator'} eq 'begins') { } | 
 
|  | 1 | 22 | elsif ($parts[$i]{'operator'} eq 'not begins') { } | 
 
| 564 | 79 | 26 | exists $_->{'object'} ? : | 
 
| 576 | 127 | 0 | if (exists $object->{'components'}) | 
 
| 577 | 6 | 121 | if ($object->{'components'}[0]{'boolean'}) { } | 
 
|  | 116 | 5 | elsif (not $object->{'components'}[0]{'string'}) { } | 
 
| 583 | 1 | 56 | if $contains_non_number and exists $object->{'components'}[0]{'number'} | 
 
| 588 | 57 | 59 | if ($contains_non_number) | 
 
| 591 | 49 | 12 | $i == @parts - 1 ? : | 
 
| 608 | 5 | 122 | if (exists $object->{'calls'}) | 
 
| 610 | 3 | 3 | if ($call eq 'length') { } | 
 
|  | 1 | 2 | elsif ($call eq 'shift') { } | 
 
|  | 2 | 0 | elsif (ref $call eq 'HASH' and exists $call->{'item'}) { } |