Condition Coverage

blib/lib/Perlito/Expression.pm
Criterion Covered Total %
condition 263 540 48.7


and 3 conditions

line !l l&&!r l&&r condition
21 249 142 154 Main::isa($param_list, 'Apply') and $param_list->code eq 'list:<,>'
84 1 0 1 Main::isa($item, 'Apply') and $item->code eq 'infix:<=>>'
145 1436 0 0 Main::isa($$v[1], 'Array') and scalar @{$$v[1];} == 2
178 0 0 24 Main::isa($value, 'Apply') and not defined $value->arguments
182 0 0 0 Main::isa($value, 'Call') and not defined $value->arguments
356 0 0 0 '.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
426 5959 0 7 '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5959 7 0 '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } }
0 0 7 ')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 7 0 '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
448 5959 0 0 '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5959 0 0 '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } }
0 0 0 ']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 0 0 '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
470 5959 0 0 '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5959 0 0 '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } }
0 0 0 '}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 0 0 '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
492 5783 0 176 '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
5783 176 0 '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } }
0 0 176 ')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 176 0 '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
514 5734 0 49 '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
5734 49 0 '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } }
0 0 49 ']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 49 0 '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
544 5729 5 0 do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }
0 0 0 '>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
5 0 0 do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
586 5731 0 3 '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5731 3 0 '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 }
0 3 0 '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } }
643 5555 0 176 '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
5555 176 0 '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 }
0 176 0 '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } }
0 176 0 '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 }
0 0 176 '}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 176 0 '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
674 5547 0 8 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to
5547 8 0 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 8 0 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } }
704 5518 0 29 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to
5518 29 0 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
17 12 0 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } }
734 5531 0 4 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to
5531 4 0 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 4 0 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } }
764 5494 0 37 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5494 37 0 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 37 0 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } }
785 5457 0 37 '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5457 37 0 '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } }
0 0 37 '!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
0 37 0 '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to)
828 5014 0 0 '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
5014 0 0 '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } }
0 0 0 '>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 0 0 '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
870 462 0 29 '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to
891 2445 491 0 do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH }
927 2906 0 1 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to
2906 1 0 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH }
963 2903 0 3 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to
2903 3 0 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH }
999 2903 0 0 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to
2903 0 0 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH }
1035 2903 0 0 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to
2903 0 0 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH }
1070 1 0 0 '-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
1106 2902 0 1 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to
2902 1 0 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 1 0 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } }
0 1 0 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 }
0 1 0 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } }
1150 2866 36 0 do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 36 0 do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } }
1209 2783 83 0 do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 83 0 do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } }
0 83 0 do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }
0 83 0 do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } }
1240 2675 0 108 '.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
2675 108 0 '.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } }
0 108 0 '.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }
1268 108 0 0 ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
108 0 0 ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 }
0 0 0 ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } }
1292 77 0 31 '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
77 31 0 '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } }
0 0 31 ')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 31 0 '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1347 0 2675 0 do { my($m2) = 'Perlito::Grammar'->optional_namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }
1369 44 294 0 do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } }
1576 0 0 0 '' ne substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
0 0 0 do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if ',' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if ':' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH }
1617 0 0 0 $is_first_token and $$v[0] eq 'op'
0 0 0 $is_first_token and $$v[0] eq 'op' and not Perlito::Precedence::is_fixity_type('prefix', $$v[1])
1633 803 321 1 $is_first_token and $$v[0] eq 'op'
1124 0 1 $is_first_token and $$v[0] eq 'op' and not Perlito::Precedence::is_fixity_type('prefix', $$v[1])
1640 1049 64 12 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block'
1113 9 3 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block' and $last_token_was_space
1819 2534 492 166 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block'
2411 605 10 $$v[0] eq 'term' and Main::isa($$v[1], 'Sub')
2411 593 12 $$v[0] eq 'term' and Main::isa($$v[1], 'Method')
2411 586 7 $$v[0] eq 'term' and Main::isa($$v[1], 'Do')
2411 550 36 $$v[0] eq 'term' and Main::isa($$v[1], 'CompUnit')
2031 975 0 0 ';' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
2082 270 705 0 do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if ';' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $last_pos; } ; 1 }
0 705 0 do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if ';' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 }

or 2 conditions

line l !l condition
426 7 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1
448 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1
470 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1
492 176 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1
514 49 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1
544 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1
586 3 0 do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1
643 176 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1
674 8 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1
704 12 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1
734 4 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1
764 37 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1
785 37 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1
807 443 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1
828 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1
849 2078 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1
891 29 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1
927 1 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1
963 3 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1
999 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1
1035 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1
1106 1 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1
1150 36 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1
1209 83 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1
1268 0 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1
1292 31 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1
1369 294 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; $List_a } } or 1
1395 20 0 do { my($namespace) = '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; my($name) = '' . $$MATCH{'Perlito::Grammar.ident'}; if ($namespace) { $name = $namespace . '::' . $name; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Proto'->new('name', $name); $List_a } } or 1
1436 9 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_num'};}; $List_a } } or 1
1457 318 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_int'};}; $List_a } } or 1
1478 434 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_buf'};}; $List_a } } or 1
1498 1545 0 do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'space'; push @{$List_a;}, ' '; $List_a } } or 1
1893 77 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.if'};} } or 1
1908 2 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.unless'};} } or 1
1923 0 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.when'};} } or 1
1938 4 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.for'};} } or 1
1953 6 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.while'};} } or 1
1968 0 0 do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.loop'};} } or 1
2082 705 0 do { $$MATCH{'capture'} = ${$$MATCH{'statement_parse'};} } or 1

or 3 conditions

line l !l&&r !l&&!r condition
58 0 1 56 not defined $stmts or scalar @{$stmts;} == 0
1127 0 0 2902 do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) }
36 0 2866 do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }
1310 0 0 108 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
1409 294 0 44 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { my($namespace) = '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; my($name) = '' . $$MATCH{'Perlito::Grammar.ident'}; if ($namespace) { $name = $namespace . '::' . $name; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Proto'->new('name', $name); $List_a } } or 1 if do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } }
1487 7 0 5959 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
0 0 5959 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
0 0 5959 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
176 0 5783 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
49 0 5734 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
0 0 5734 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } }
3 0 5731 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
176 0 5555 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } }
8 0 5547 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } }
12 0 5535 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } }
4 0 5531 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } }
37 0 5494 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) }
37 0 5457 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } }
443 0 5014 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }
0 0 5014 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } }
2078 0 2936 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } }
29 0 2907 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } }
1 0 2906 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } }
3 0 2903 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } }
0 0 2903 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } }
0 0 2903 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } }
1 0 2902 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } }
36 0 2866 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } }
83 0 2783 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } }; } ; } }
108 0 2675 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; if (do { my($m2) = 'Perlito::Grammar'->optional_namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { my($namespace) = '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; my($name) = '' . $$MATCH{'Perlito::Grammar.ident'}; if ($namespace) { $name = $namespace . '::' . $name; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Proto'->new('name', $name); $List_a } } or 1 if do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; $List_a } }; } ; } }
338 0 2337 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; if (do { my($m2) = 'Perlito::Grammar'->optional_namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { my($namespace) = '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; my($name) = '' . $$MATCH{'Perlito::Grammar.ident'}; if ($namespace) { $name = $namespace . '::' . $name; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Proto'->new('name', $name); $List_a } } or 1 if do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_num'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->val_num($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.val_num'} = $m2; 1; } else { 0; } } }
9 0 2328 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; if (do { my($m2) = 'Perlito::Grammar'->optional_namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { my($namespace) = '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; my($name) = '' . $$MATCH{'Perlito::Grammar.ident'}; if ($namespace) { $name = $namespace . '::' . $name; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Proto'->new('name', $name); $List_a } } or 1 if do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_num'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->val_num($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.val_num'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_int'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->val_int($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.val_int'} = $m2; 1; } else { 0; } } }
318 0 2010 do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '.(' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '.[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '.[' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'curly_parse'};}; $List_a } } or 1 if '.{' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->curly_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'curly_parse'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '( )'; push @{$List_a;}, ${$$MATCH{'paren_parse'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, '[ ]'; push @{$List_a;}, ${$$MATCH{'square_parse'};}; $List_a } } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->square_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'square_parse'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'Val::Buf'->new('buf', ${$$MATCH{'Perlito::Grammar.ident'};}); $List_a }; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '.<' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '<' eq substr($str, $MATCH->to, 1); } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { my($block) = $${$$MATCH{'list_parse'};}{'end_block'}; if ($block->sig) { die 'Signature error in block'; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, $block->stmts; push @{$List_a;}, $${$$MATCH{'list_parse'};}{'exp'}; $List_a } } or 1 if '->' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'block'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.exp_stmts'};}; $List_a } } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = 'Perlito::Grammar'->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.method_def'};}; $List_a } } or 1 if 'method' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->method_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.method_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.sub_def'};}; $List_a } } or 1 if 'sub' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->sub_def($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.sub_def'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.token'};}; $List_a } } or 1 if 'token' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->token($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.token'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Do'->new('block', ${$$MATCH{'statement_parse'};}); $List_a } } or 1 if 'do' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->statement_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'statement_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, '?? !!'; push @{$List_a;}, ${$$MATCH{'ternary_parse'};}; $List_a } } or 1 if '??' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ternary_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ternary_parse'} = $m2; 1; } else { 0; } } and ('!!' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.var_ident'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Lookup'->new(('obj', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', '/'))), ('index_exp', 'Val::Buf'->new('buf', '' . $$MATCH{'capture_name'}))); $List_a } } or 1 if '$<' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->capture_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'capture_name'} = $m2; 1; } else { 0; } } and ('>' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Precedence.op_parse'};} } or 1 if do { my($m2) = 'Perlito::Precedence'->op_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Precedence.op_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Buf'->new('buf', '' . $$MATCH{'Perlito::Grammar.ident'}); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } } and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { '=>' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to if do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 1); $List_a } } or 1 if 'True' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Val::Bit'->new('bit', 0); $List_a } } or 1 if 'False' eq substr($str, $MATCH->to, 5) and $$MATCH{'to'} = 5 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'and'; $List_a } } or 1 if 'and' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'op'; push @{$List_a;}, 'not'; $List_a } } or 1 if 'not' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { my($pos1) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->word($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '(' eq substr($str, $MATCH->to, 1); } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Use'->new('mod', ${$$MATCH{'Perlito::Grammar.full_ident'};}); $List_a } } or 1 if 'use' eq substr($str, $MATCH->to, 3) and $$MATCH{'to'} = 3 + $MATCH->to and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($pos1) = $MATCH->to; do { if ('-' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Grammar.ident'}) { push @{$$MATCH{'Perlito::Grammar.ident'};}, $m2; } else { $$MATCH{'Perlito::Grammar.ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } ; } } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.grammar'};}; $List_a } } or 1 if do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 7 + $MATCH->to if 'package' eq substr($str, $MATCH->to, 7) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'class' eq substr($str, $MATCH->to, 5) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 7 + $MATCH->to if 'grammar' eq substr($str, $MATCH->to, 7) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'role' eq substr($str, $MATCH->to, 4); } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->grammar($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.grammar'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Decl'->new(('decl', ${$$MATCH{'Perlito::Grammar.declarator'};}), ('type', ${$$MATCH{'Perlito::Grammar.opt_type'};}), ('var', ${$$MATCH{'Perlito::Grammar.var_ident'};})); $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->declarator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.declarator'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_type($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.opt_type'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.var_ident'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->hyper_op($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'hyper_op'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if ':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, do { my $Hash_a = bless({}, 'HASH'); $$Hash_a{'end_block'} = undef(); $$Hash_a{'exp'} = ${$$MATCH{'paren_parse'};}; $$Hash_a{'terminated'} = 0; $Hash_a }; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } } or 1 if '(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->paren_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'paren_parse'} = $m2; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'methcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'hyper_op'};}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; if (do { my($m2) = 'Perlito::Grammar'->optional_namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'} = $m2; 1; } else { 0; } } and do { my($m2) = 'Perlito::Grammar'->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.ident'} = $m2; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; push @{$List_a;}, ${$$MATCH{'list_parse'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'list_parse'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { my($namespace) = '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; my($name) = '' . $$MATCH{'Perlito::Grammar.ident'}; if ($namespace) { $name = $namespace . '::' . $name; } ; $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, 'Proto'->new('name', $name); $List_a } } or 1 if do { my($tmp) = $MATCH; $MATCH = 'Perlito::Match'->new(('str', $str), ('from', $tmp->to), ('to', $tmp->to), ('bool', 1)); $$MATCH{'bool'} = do { my($pos1) = $MATCH->to; do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } }) { $$MATCH{'to'} = $pos1; 1 unless do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'postfix_or_term'; push @{$List_a;}, 'funcall_no_params'; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.optional_namespace_before_ident'}; push @{$List_a;}, '' . $$MATCH{'Perlito::Grammar.ident'}; $List_a } }; } ; } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_num'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->val_num($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.val_num'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_int'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->val_int($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.val_int'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, 'term'; push @{$List_a;}, ${$$MATCH{'Perlito::Grammar.val_buf'};}; $List_a } } or 1 if do { my($m2) = 'Perlito::Grammar'->val_buf($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.val_buf'} = $m2; 1; } else { 0; } } }
1533 0 0 256 do { $$MATCH{'to'} = 1 + $MATCH->to if '#' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; do { my($m2) = 'Perlito::Grammar'->is_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } }
1819 166 0 3026 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block' or $$v[0] eq 'term' and Main::isa($$v[1], 'Sub')
10 0 3016 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block' or $$v[0] eq 'term' and Main::isa($$v[1], 'Sub') or $$v[0] eq 'term' and Main::isa($$v[1], 'Method')
12 0 3004 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block' or $$v[0] eq 'term' and Main::isa($$v[1], 'Sub') or $$v[0] eq 'term' and Main::isa($$v[1], 'Method') or $$v[0] eq 'term' and Main::isa($$v[1], 'Do')
7 0 2997 $$v[0] eq 'postfix_or_term' and $$v[1] eq 'block' or $$v[0] eq 'term' and Main::isa($$v[1], 'Sub') or $$v[0] eq 'term' and Main::isa($$v[1], 'Method') or $$v[0] eq 'term' and Main::isa($$v[1], 'Do') or $$v[0] eq 'term' and Main::isa($$v[1], 'CompUnit')
1956 77 0 935 do { do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.if'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->if($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.if'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.unless'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->unless($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.unless'} = $m2; 1; } else { 0; } } }
2 0 933 do { do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.if'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->if($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.if'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.unless'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->unless($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.unless'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.when'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->when($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.when'} = $m2; 1; } else { 0; } } }
0 0 933 do { do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.if'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->if($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.if'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.unless'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->unless($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.unless'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.when'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->when($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.when'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.for'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->for($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.for'} = $m2; 1; } else { 0; } } }
4 0 929 do { do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.if'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->if($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.if'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.unless'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->unless($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.unless'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.when'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->when($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.when'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.for'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->for($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.for'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = ${$$MATCH{'Perlito::Grammar.while'};} } or 1 if do { my($m2) = 'Perlito::Grammar'->while($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar.while'} = $m2; 1; } else { 0; } } }
1997 14 0 590 do { $$MATCH{'to'} = 2 + $MATCH->to if 'if' eq substr($str, $MATCH->to, 2) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 6 + $MATCH->to if 'unless' eq substr($str, $MATCH->to, 6) }
2 0 588 do { $$MATCH{'to'} = 2 + $MATCH->to if 'if' eq substr($str, $MATCH->to, 2) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 6 + $MATCH->to if 'unless' eq substr($str, $MATCH->to, 6) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'when' eq substr($str, $MATCH->to, 4) }
0 0 588 do { $$MATCH{'to'} = 2 + $MATCH->to if 'if' eq substr($str, $MATCH->to, 2) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 6 + $MATCH->to if 'unless' eq substr($str, $MATCH->to, 6) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'when' eq substr($str, $MATCH->to, 4) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 3 + $MATCH->to if 'for' eq substr($str, $MATCH->to, 3) }
1 0 587 do { $$MATCH{'to'} = 2 + $MATCH->to if 'if' eq substr($str, $MATCH->to, 2) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 6 + $MATCH->to if 'unless' eq substr($str, $MATCH->to, 6) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 4 + $MATCH->to if 'when' eq substr($str, $MATCH->to, 4) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 3 + $MATCH->to if 'for' eq substr($str, $MATCH->to, 3) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'while' eq substr($str, $MATCH->to, 5) }