Branch Coverage

blib/lib/Perlito/Grammar.pm
Criterion Covered Total %
branch 287 556 51.6


line true false branch
31 1100 12063 if ("\n" eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
33 1100 0 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if "\r" eq substr($str, $MATCH->to, 1) })
34 0 1100 if "\r" eq substr($str, $MATCH->to, 1)
40 12063 1100 unless (do { if ("\n" eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($last_pos) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if "\r" eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $last_pos; } ; 1; } })
42 0 12063 if ("\r" eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
44 0 0 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if "\n" eq substr($str, $MATCH->to, 1) })
45 0 0 if "\n" eq substr($str, $MATCH->to, 1)
64 323 12 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 { my($m2) = $grammar->is_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH }
71 12 323 if ($m2) { }
104 981 8715 if ($m2) { }
116 8715 981 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 { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH })
122 8112 8715 if ($m2) { }
130 0 8112 if ($last_pos == $MATCH->to) { }
157 578 107 if ($m2) { }
164 578 107 if (do { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
170 1 578 if ('::' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to)
172 1 0 if ($m2) { }
182 0 1 if ($last_pos == $MATCH->to) { }
208 879 2361 if ($m2) { }
221 14 865 if '::' eq substr($str, $MATCH->to, 2)
227 14 865 if (do { my($m2) = $grammar->ident($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 { $$MATCH{'to'} = 2 + $MATCH->to if '::' eq substr($str, $MATCH->to, 2) } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH })
235 16 0 if ($m2) { }
242 16 0 if ('::' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to and do { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
248 2 14 if '::' eq substr($str, $MATCH->to, 2)
257 0 2 if ($last_pos == $MATCH->to) { }
283 14 3226 if ($m2) { }
291 14 0 if do { my($m2) = $grammar->namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'namespace_before_ident'} = $m2; 1; } else { 0; } } and ('::' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to)
294 3226 14 unless (do { do { $$MATCH{'capture'} = '' . $$MATCH{'namespace_before_ident'} } or 1 if do { my($m2) = $grammar->namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'namespace_before_ident'} = $m2; 1; } else { 0; } } and ('::' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) })
296 3226 0 unless do { $$MATCH{'capture'} = '' }
314 0 0 if ($m2) { }
321 0 0 if (do { my($m2) = $grammar->is_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('=end' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to))
326 0 0 if ($m2) { }
334 0 0 if ($last_pos == $MATCH->to) { }
345 0 0 unless (do { if (do { my($m2) = $grammar->is_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('=end' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to)) { my($last_match_null) = 0; my($last_pos) = $MATCH->to; while (do { my($m2) = $grammar->not_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; } ; $$MATCH{'to'} = $last_pos; 1; } })
352 0 0 if ($m2) { }
360 0 0 if ($last_pos == $MATCH->to) { }
370 0 0 if ('' ne substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; while (do { my($m2) = $grammar->not_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; } ; $$MATCH{'to'} = $last_pos; 1 })
372 0 0 if ($m2) { }
399 12 12572 if ('#' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
404 323 12 if ($m2) { }
412 0 323 if ($last_pos == $MATCH->to) { }
427 973 11599 if ($m2) { }
434 973 11599 if (do { my($m2) = $grammar->is_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
437 0 973 if ('=begin' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to)
439 0 0 if ($m2) { }
449 0 973 if ('=for' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to)
451 0 0 if ($m2) { }
459 973 0 unless (do { if ('=begin' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to) { my($m2) = $grammar->pod_begin($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } or do { $$MATCH{'to'} = $pos1; if ('=for' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to) { my($m2) = $grammar->pod_begin($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } })
464 11599 973 unless (do { if ('#' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($last_match_null) = 0; my($last_pos) = $MATCH->to; while (do { my($m2) = $grammar->not_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; } ; $$MATCH{'to'} = $last_pos; 1; } } or do { $$MATCH{'to'} = $pos1; if (do { my($m2) = $grammar->is_newline($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($pos1) = $MATCH->to; unless (do { if ('=begin' eq substr($str, $MATCH->to, 6) and $$MATCH{'to'} = 6 + $MATCH->to) { my($m2) = $grammar->pod_begin($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } or do { $$MATCH{'to'} = $pos1; if ('=for' eq substr($str, $MATCH->to, 4) and $$MATCH{'to'} = 4 + $MATCH->to) { my($m2) = $grammar->pod_begin($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } }) { $$MATCH{'to'} = $pos1; 1; } ; } })
468 6285 5314 if ($m2) { }
478 0 7270 if ($last_pos == $MATCH->to) { }
503 269 182 unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
505 182 269 if ($m2) { }
530 4 11 unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
532 11 4 if ($m2) { }
557 0 4 unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
559 4 0 if ($m2) { }
585 36 0 if ($m2) { }
595 0 36 unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
597 36 0 if ($m2) { }
610 0 36 unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
612 36 0 if ($m2) { }
625 36 0 if ($m2) { }
635 36 0 unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
637 0 36 if ($m2) { }
648 36 0 if do { my($m2) = $grammar->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'full_ident'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = $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) and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = $grammar->ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'exp_stmts'} = $m2; 1; } else { 0; } } and do { my($last_pos) = $MATCH->to; unless (do { my($m2) = $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)
664 81 2785 if 'my' eq substr($str, $MATCH->to, 2)
667 0 2785 if 'state' eq substr($str, $MATCH->to, 5)
668 2785 0 unless (do { $$MATCH{'to'} = 2 + $MATCH->to if 'my' eq substr($str, $MATCH->to, 2) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 5 + $MATCH->to if 'state' eq substr($str, $MATCH->to, 5) })
670 2 2783 if 'has' eq substr($str, $MATCH->to, 3)
686 0 0 if ($m2) { }
694 0 0 if do { my($m2) = $grammar->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'exp_stmts'} = $m2; 1; } else { 0; } }
712 90 0 if ($m2) { }
720 90 0 if do { my($m2) = 'Perlito::Expression'->exp_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.exp_parse'} = $m2; 1; } else { 0; } }
738 14 0 if ($m2) { }
746 14 0 if do { my($m2) = 'Perlito::Expression'->exp_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.exp_parse'} = $m2; 1; } else { 0; } }
764 0 0 if ($m2) { }
772 0 0 if do { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ident'} = $m2; 1; } else { 0; } }
775 0 0 unless (do { do { $$MATCH{'capture'} = ${$$MATCH{'ident'};} } or 1 if do { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'ident'} = $m2; 1; } else { 0; } } })
777 0 0 unless do { $$MATCH{'capture'} = 'postcircumfix:<( )>' }
795 83 0 unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '::' eq substr($str, $MATCH->to, 2) })
796 0 83 if '::' eq substr($str, $MATCH->to, 2)
803 0 83 if ($m2) { }
811 0 83 if do { my($last_pos) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '::' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'full_ident'} = $m2; 1; } else { 0; } }
814 83 0 unless (do { do { $$MATCH{'capture'} = ${$$MATCH{'full_ident'};} } or 1 if do { my($last_pos) = $MATCH->to; unless (do { $$MATCH{'to'} = 2 + $MATCH->to if '::' eq substr($str, $MATCH->to, 2) }) { $$MATCH{'to'} = $last_pos; } ; 1 } and do { my($m2) = $grammar->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'full_ident'} = $m2; 1; } else { 0; } } })
816 83 0 unless do { $$MATCH{'capture'} = '' }
832 476 5152 if '$' eq substr($str, $MATCH->to, 1)
835 23 5129 if '%' eq substr($str, $MATCH->to, 1)
838 50 5079 if '@' eq substr($str, $MATCH->to, 1)
839 5079 50 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '$' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '%' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '@' eq substr($str, $MATCH->to, 1) })
841 16 5063 if '&' eq substr($str, $MATCH->to, 1)
856 562 5 unless (do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '!' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$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); } })
859 5 562 if '.' eq substr($str, $MATCH->to, 1)
862 0 562 if '!' eq substr($str, $MATCH->to, 1)
865 0 562 if '^' eq substr($str, $MATCH->to, 1)
866 562 0 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '.' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '!' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '^' eq substr($str, $MATCH->to, 1) })
868 0 562 if '*' eq substr($str, $MATCH->to, 1)
888 541 24 if ($m2) { }
898 0 24 if '/' eq substr($str, $MATCH->to, 1)
899 24 0 unless (do { my($m2) = $grammar->full_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'full_ident'} = $m2; 1; } else { 0; } } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '/' eq substr($str, $MATCH->to, 1) })
903 0 24 if ($m2) { }
927 565 4999 if ($m2) { }
937 565 0 if ($m2) { }
947 565 0 if ($m2) { }
957 541 24 if ($m2) { }
965 541 24 if do { my($m2) = $grammar->var_sigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'var_sigil'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'var_twigil'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->optional_namespace_before_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'optional_namespace_before_ident'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->var_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'var_name'} = $m2; 1; } else { 0; } }
984 0 336 if 'e' eq substr($str, $MATCH->to, 1)
985 336 0 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if 'e' eq substr($str, $MATCH->to, 1) })
987 0 336 if 'E' eq substr($str, $MATCH->to, 1)
992 0 0 if '+' eq substr($str, $MATCH->to, 1)
995 0 0 if '-' eq substr($str, $MATCH->to, 1)
996 0 0 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '+' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '-' eq substr($str, $MATCH->to, 1) })
1000 0 0 if (do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if 'e' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if 'E' eq substr($str, $MATCH->to, 1); } } and do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '+' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '-' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $pos1; 1; } })
1006 0 0 if ($m2) { }
1014 0 0 if ($last_pos == $MATCH->to) { }
1048 0 0 if ($m2) { }
1056 0 0 if ($last_pos == $MATCH->to) { }
1067 0 0 if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 })
1069 0 0 unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
1071 0 0 if ($m2) { }
1083 2337 0 unless (do { if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 }) { my($last_pos) = $MATCH->to; unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1; } })
1091 352 2337 if ($m2) { }
1099 0 352 if ($last_pos == $MATCH->to) { }
1110 327 2010 if (do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 })
1114 0 327 if ($m2) { }
1121 327 0 unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
1129 16 9 if ($m2) { }
1137 0 16 if ($last_pos == $MATCH->to) { }
1148 9 0 if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 })
1150 9 0 unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
1152 0 9 if ($m2) { }
1167 9 2328 if do { my($pos1) = $MATCH->to; unless (do { if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 }) { my($last_pos) = $MATCH->to; unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1; } }) { $$MATCH{'to'} = $pos1; if (do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 }) { my($pos1) = $MATCH->to; unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $pos1; if ('.' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 }) { my($last_pos) = $MATCH->to; unless (do { my($m2) = $grammar->exponent($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { $$MATCH{'to'} = $last_pos; } ; 1; } ; } ; } ; } }
1183 0 0 if '' ne substr($str, $MATCH->to, 1)
1203 275 274 if q['] eq substr($str, $MATCH->to, 1)
1209 274 0 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 q['] eq substr($str, $MATCH->to, 1) } }; $$tmp{'bool'} = !$MATCH; $MATCH = $tmp; not !$MATCH } and ('' ne substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to))
1215 1681 274 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 { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if q['] 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 }
1223 274 1681 if q['] eq substr($str, $MATCH->to, 1)
1224 1681 274 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if q['] eq substr($str, $MATCH->to, 1) })
1226 0 1681 if '\\' eq substr($str, $MATCH->to, 1)
1236 0 1681 if ($last_pos == $MATCH->to) { }
1262 0 0 if ($m2) { }
1270 0 0 if '\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and ('\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } }
1277 0 0 if ($m2) { }
1285 0 0 if '\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and (q['] eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } }
1292 0 0 if ($m2) { }
1300 0 0 if '\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } }
1307 274 275 if ($m2) { }
1317 274 0 if ($m2) { }
1325 274 0 if do { my($m2) = $grammar->char_any_single_quote($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any_single_quote'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } }
1328 275 274 unless (do { do { $$MATCH{'capture'} = '\\' . $$MATCH{'single_quoted_unescape'} } or 1 if '\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and ('\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = q['] . $$MATCH{'single_quoted_unescape'} } or 1 if '\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and (q['] eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = '\\' . $$MATCH{'single_quoted_unescape'} } or 1 if '\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = $$MATCH{'char_any_single_quote'} . $$MATCH{'single_quoted_unescape'} } or 1 if do { my($m2) = $grammar->char_any_single_quote($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any_single_quote'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } } })
1352 159 124 if '"' eq substr($str, $MATCH->to, 1)
1355 0 124 if '$' eq substr($str, $MATCH->to, 1)
1358 0 124 if '@' eq substr($str, $MATCH->to, 1)
1361 0 124 if '%' eq substr($str, $MATCH->to, 1)
1362 124 0 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '"' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '$' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '@' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '%' eq substr($str, $MATCH->to, 1) })
1364 0 124 if '{' eq substr($str, $MATCH->to, 1)
1371 124 0 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 { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '"' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '$' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '@' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$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 } and ('' ne substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to))
1377 766 124 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 { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '"' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '$' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '@' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '%' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$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 }
1385 117 773 if '"' eq substr($str, $MATCH->to, 1)
1388 2 771 if '$' eq substr($str, $MATCH->to, 1)
1391 0 771 if '@' eq substr($str, $MATCH->to, 1)
1394 0 771 if '%' eq substr($str, $MATCH->to, 1)
1397 3 768 if '{' eq substr($str, $MATCH->to, 1)
1398 768 3 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '"' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '$' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '@' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '%' eq substr($str, $MATCH->to, 1) } or do { $$MATCH{'to'} = $pos1; $$MATCH{'to'} = 1 + $MATCH->to if '{' eq substr($str, $MATCH->to, 1) })
1400 2 766 if '\\' eq substr($str, $MATCH->to, 1)
1410 0 766 if ($last_pos == $MATCH->to) { }
1434 2 283 if ('\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1437 0 2 if ('c' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1442 0 0 if ($m2) { }
1450 0 0 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1453 0 0 unless (do { do { $$MATCH{'capture'} = chr $$MATCH{'digits'} } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) })
1457 0 0 if ($m2) { }
1465 0 0 if do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } }
1472 0 2 if 'e' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
1477 2 0 if 'n' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
1482 0 0 if 't' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to
1485 0 0 unless (do { if ('c' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = chr $$MATCH{'digits'} } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = chr $$MATCH{'digits'} } or 1 if do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } }; } ; } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = "\e" } or 1 if 'e' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = "\n" } or 1 if 'n' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = "\t" } or 1 if 't' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to })
1489 0 0 if ($m2) { }
1497 0 0 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }
1502 283 2 unless (do { if ('\\' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($pos1) = $MATCH->to; unless (do { if ('c' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = chr $$MATCH{'digits'} } or 1 if '[' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } } and (']' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = chr $$MATCH{'digits'} } or 1 if do { my($m2) = $grammar->digits($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'digits'} = $m2; 1; } else { 0; } }; } ; } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = "\e" } or 1 if 'e' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = "\n" } or 1 if 'n' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = "\t" } or 1 if 't' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to }) { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = '' . $$MATCH{'char_any'} } or 1 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }; } ; } })
1506 124 159 if ($m2) { }
1514 124 159 if do { my($m2) = $grammar->char_any_double_quote($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any_double_quote'} = $m2; 1; } else { 0; } }
1536 2 288 if '$' eq substr($str, $MATCH->to, 1)
1542 2 288 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 })
1553 2 0 if ($m2) { }
1560 2 0 if ('$' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
1562 2 0 if ($m2) { }
1577 2 0 if ($m2) { }
1585 2 0 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 { if ('$' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } }
1588 0 2 unless (do { do { $$MATCH{'capture'} = $${$$MATCH{'Perlito::Expression.operator'};}[1] } 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 { if ('$' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } })
1592 0 0 if ($m2) { }
1600 0 0 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }
1613 0 288 if '@' eq substr($str, $MATCH->to, 1)
1619 0 288 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 })
1630 0 0 if ($m2) { }
1637 0 0 if ('@' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
1639 0 0 if ($m2) { }
1654 0 0 if ($m2) { }
1662 0 0 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 { if ('@' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } and ('[]' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to)
1665 0 0 unless (do { do { $$MATCH{'capture'} = $${$$MATCH{'Perlito::Expression.operator'};}[1] } 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 { if ('@' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } and ('[]' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) })
1669 0 0 if ($m2) { }
1677 0 0 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }
1690 0 288 if '%' eq substr($str, $MATCH->to, 1)
1696 0 288 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 })
1707 0 0 if ($m2) { }
1714 0 0 if ('%' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } })
1716 0 0 if ($m2) { }
1731 0 0 if ($m2) { }
1739 0 0 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 { if ('%' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } and ('{}' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to)
1742 0 0 unless (do { do { $$MATCH{'capture'} = $${$$MATCH{'Perlito::Expression.operator'};}[1] } 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 { if ('%' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } and ('{}' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) })
1746 0 0 if ($m2) { }
1754 0 0 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }
1763 3 0 if ($m2) { }
1771 3 0 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'exp_stmts'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1774 285 3 unless (do { 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 }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = $${$$MATCH{'Perlito::Expression.operator'};}[1] } 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 { if ('$' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } }) { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = 'Val::Buf'->new('buf', '' . $$MATCH{'char_any'}) } or 1 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }; } ; } } or do { $$MATCH{'to'} = $pos1; 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 }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = $${$$MATCH{'Perlito::Expression.operator'};}[1] } 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 { if ('@' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } and ('[]' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = 'Val::Buf'->new('buf', '' . $$MATCH{'char_any'}) } or 1 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }; } ; } } or do { $$MATCH{'to'} = $pos1; 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 }) { my($pos1) = $MATCH->to; unless (do { do { $$MATCH{'capture'} = $${$$MATCH{'Perlito::Expression.operator'};}[1] } 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 { if ('%' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->var_twigil($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } }) { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } ; } } }; $$tmp{'bool'} = !!$MATCH; $MATCH = $tmp; not !$MATCH } and do { my($m2) = 'Perlito::Expression'->operator($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.operator'} = $m2; 1; } else { 0; } } and ('{}' eq substr($str, $MATCH->to, 2) and $$MATCH{'to'} = 2 + $MATCH->to) }) { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = 'Val::Buf'->new('buf', '' . $$MATCH{'char_any'}) } or 1 if do { my($m2) = $grammar->char_any($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'char_any'} = $m2; 1; } else { 0; } }; } ; } } or do { $$MATCH{'to'} = $pos1; do { $$MATCH{'capture'} = 'Do'->new('block', 'Lit::Block'->new('stmts', ${$$MATCH{'exp_stmts'};})) } or 1 if '{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'exp_stmts'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) })
1778 126 159 if ($m2) { }
1786 126 159 if do { my($m2) = $grammar->double_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'double_quoted_unescape'} = $m2; 1; } else { 0; } }
1807 131 159 if ($m2) { }
1809 10 121 if (exists $$MATCH{'double_quoted_buf'}) { }
1826 0 131 if ($last_pos == $MATCH->to) { }
1836 159 0 if '"' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; while (do { my($m2) = $grammar->double_quoted_buf($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'double_quoted_buf'}) { push @{$$MATCH{'double_quoted_buf'};}, $m2; } else { $$MATCH{'double_quoted_buf'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; } ; $$MATCH{'to'} = $last_pos; 1 } and ('"' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1838 38 121 if (not $args) { }
1845 1851 159 unless (do { do { my($args) = $$MATCH{'double_quoted_buf'}; if (not $args) { $$MATCH{'capture'} = 'Val::Buf'->new('buf', ''); } else { $$MATCH{'capture'} = 'Apply'->new(('namespace', ''), ('code', 'list:<~>'), ('arguments', [map({$_->capture;} @{$$MATCH{'double_quoted_buf'};})])); } } or 1 if '"' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; while (do { my($m2) = $grammar->double_quoted_buf($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'double_quoted_buf'}) { push @{$$MATCH{'double_quoted_buf'};}, $m2; } else { $$MATCH{'double_quoted_buf'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; } ; $$MATCH{'to'} = $last_pos; 1 } and ('"' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) })
1849 275 0 if ($m2) { }
1857 275 0 if q['] eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to and do { my($m2) = $grammar->single_quoted_unescape($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'single_quoted_unescape'} = $m2; 1; } else { 0; } } and (q['] eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
1878 0 0 if ($m2) { }
1886 0 0 if ($last_pos == $MATCH->to) { }
1916 343 2328 if ($m2) { }
1924 0 343 if ($last_pos == $MATCH->to) { }
1935 318 2010 if do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; my($count) = 0; while (do { my($m2) = $grammar->digit($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; $count = $count + 1; } ; $$MATCH{'to'} = $last_pos; $count > 0 }
1956 705 270 if ($m2) { }
1958 436 269 if (exists $$MATCH{'Perlito::Expression.delimited_statement'}) { }
1975 0 705 if ($last_pos == $MATCH->to) { }
1985 270 0 if do { my($last_match_null) = 0; my($last_pos) = $MATCH->to; while (do { my($m2) = 'Perlito::Expression'->delimited_statement($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'Perlito::Expression.delimited_statement'}) { push @{$$MATCH{'Perlito::Expression.delimited_statement'};}, $m2; } else { $$MATCH{'Perlito::Expression.delimited_statement'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } } and $last_match_null < 2) { if ($last_pos == $MATCH->to) { $last_match_null = $last_match_null + 1; } else { $last_match_null = 0; } ; $last_pos = $MATCH->to; } ; $$MATCH{'to'} = $last_pos; 1 }
2002 7 21 unless (do { my($m2) = $grammar->ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; if (exists $$MATCH{'ident'}) { push @{$$MATCH{'ident'};}, $m2; } else { $$MATCH{'ident'} = do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); push @{$List_a;}, $m2; $List_a }; } ; 1; } else { 0; } })
2004 21 7 if ($m2) { }
2006 0 21 if (exists $$MATCH{'ident'}) { }
2041 15 9 if ($m2) { }
2049 4 11 if do { my($m2) = $grammar->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'var_ident'} = $m2; 1; } else { 0; } } and (':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
2052 20 4 unless (do { do { $$MATCH{'capture'} = ${$$MATCH{'var_ident'};} } or 1 if do { my($m2) = $grammar->var_ident($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'var_ident'} = $m2; 1; } else { 0; } } and (':' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) })
2054 0 20 unless do { $$MATCH{'capture'} = 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', 'self')) }
2072 24 0 if ($m2) { }
2082 24 0 if ($m2) { }
2091 24 0 if ($m2) { }
2099 24 0 if do { my($m2) = $grammar->var_invocant($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'var_invocant'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = 'Perlito::Expression'->list_parse($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Expression.list_parse'} = $m2; 1; } else { 0; } }
2120 24 0 if ($m2) { }
2129 24 0 if ($m2) { }
2138 24 0 if ($m2) { }
2148 24 0 if ($m2) { }
2155 24 0 if do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->args_sig($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'args_sig'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)
2158 0 24 unless (do { do { $$MATCH{'capture'} = ${$$MATCH{'args_sig'};} } or 1 if do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('(' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->args_sig($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'args_sig'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and (')' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) })
2160 0 0 unless do { $$MATCH{'capture'} = 'Sig'->new(('invocant', 'Var'->new(('sigil', '$'), ('twigil', ''), ('name', 'self'))), ('positional', do { my $List_a = bless([], 'ARRAY'); my $List_v = bless([], 'ARRAY'); $List_a }), ('named', do { my $Hash_a = bless({}, 'HASH'); $Hash_a })) }
2185 12 0 if ($m2) { }
2195 12 0 if ($m2) { }
2204 12 0 if ($m2) { }
2214 12 0 if ($m2) { }
2223 12 0 if ($m2) { }
2232 12 0 if ($m2) { }
2242 12 0 if ($m2) { }
2252 12 0 if '}' eq substr($str, $MATCH->to, 1)
2253 0 12 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '}' eq substr($str, $MATCH->to, 1) })
2255 0 0 unless do { die q[Syntax Error in method '.], ${$$MATCH{'name'};}, q[' near pos=], $MATCH->to }
2259 12 0 if do { my($m2) = $grammar->opt_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'opt_name'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->method_sig($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'method_sig'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'exp_stmts'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '}' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $pos1; 1 unless do { die q[Syntax Error in method '.], ${$$MATCH{'name'};}, q[' near pos=], $MATCH->to }; } }
2277 12 0 if ($m2) { }
2287 12 0 if ($m2) { }
2296 12 0 if ($m2) { }
2306 12 0 if ($m2) { }
2315 12 0 if ($m2) { }
2324 12 0 if ($m2) { }
2334 12 0 if ($m2) { }
2344 12 0 if '}' eq substr($str, $MATCH->to, 1)
2345 0 12 unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '}' eq substr($str, $MATCH->to, 1) })
2347 0 0 unless do { die q[Syntax Error in sub '], ${$$MATCH{'name'};}, q['] }
2351 12 0 if do { my($m2) = $grammar->opt_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'opt_name'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->method_sig($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'method_sig'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($m2) = $grammar->exp_stmts($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'exp_stmts'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and do { my($pos1) = $MATCH->to; unless (do { $$MATCH{'to'} = 1 + $MATCH->to if '}' eq substr($str, $MATCH->to, 1) }) { $$MATCH{'to'} = $pos1; 1 unless do { die q[Syntax Error in sub '], ${$$MATCH{'name'};}, q['] }; } }
2369 4 0 if ($m2) { }
2379 4 0 if ($m2) { }
2388 4 0 if ($m2) { }
2396 4 0 if do { my($m2) = $grammar->opt_name($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'opt_name'} = $m2; 1; } else { 0; } } and do { my($m2) = $grammar->opt_ws($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; 1; } else { 0; } } and ('{' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to) and do { my($m2) = 'Perlito::Grammar::Regex'->rule($str, $MATCH->to); if ($m2) { $$MATCH{'to'} = $m2->to; $$MATCH{'Perlito::Grammar::Regex.rule'} = $m2; 1; } else { 0; } } and ('}' eq substr($str, $MATCH->to, 1) and $$MATCH{'to'} = 1 + $MATCH->to)