rattler 0.4.1 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. data/README.rdoc +2 -2
  2. data/bin/rtlr.compiled.rbc +201 -0
  3. data/features/command_line/dest_option.feature +1 -0
  4. data/features/command_line/lib_option.feature +2 -0
  5. data/features/command_line/output_option.feature +2 -0
  6. data/features/command_line/parser_generator.feature +3 -0
  7. data/features/step_definitions/cli_steps.rbc +149 -0
  8. data/features/step_definitions/grammar_steps.rbc +1211 -0
  9. data/features/support/env.rb +4 -0
  10. data/features/support/env.rbc +389 -0
  11. data/lib/rattler.rbc +1231 -0
  12. data/lib/rattler/back_end.rbc +286 -0
  13. data/lib/rattler/back_end/compiler.rbc +1394 -0
  14. data/lib/rattler/back_end/optimizer.rbc +2000 -0
  15. data/lib/rattler/back_end/optimizer/composite_reducing.rbc +337 -0
  16. data/lib/rattler/back_end/optimizer/flatten_choice.rbc +443 -0
  17. data/lib/rattler/back_end/optimizer/flatten_sequence.rbc +827 -0
  18. data/lib/rattler/back_end/optimizer/flattening.rbc +570 -0
  19. data/lib/rattler/back_end/optimizer/inline_regular_rules.rbc +691 -0
  20. data/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rbc +1299 -0
  21. data/lib/rattler/back_end/optimizer/join_match_choice.rbc +523 -0
  22. data/lib/rattler/back_end/optimizer/join_match_matching_sequence.rbc +619 -0
  23. data/lib/rattler/back_end/optimizer/join_match_sequence.rbc +174 -0
  24. data/lib/rattler/back_end/optimizer/join_predicate_bare_match.rbc +1505 -0
  25. data/lib/rattler/back_end/optimizer/join_predicate_match.rbc +174 -0
  26. data/lib/rattler/back_end/optimizer/join_predicate_nested_match.rbc +620 -0
  27. data/lib/rattler/back_end/optimizer/join_predicate_or_bare_match.rbc +1502 -0
  28. data/lib/rattler/back_end/optimizer/join_predicate_or_match.rbc +174 -0
  29. data/lib/rattler/back_end/optimizer/join_predicate_or_nested_match.rbc +616 -0
  30. data/lib/rattler/back_end/optimizer/match_joining.rbc +1454 -0
  31. data/lib/rattler/back_end/optimizer/optimization.rbc +1366 -0
  32. data/lib/rattler/back_end/optimizer/optimization_context.rbc +1386 -0
  33. data/lib/rattler/back_end/optimizer/optimization_sequence.rbc +520 -0
  34. data/lib/rattler/back_end/optimizer/optimize_children.rbc +793 -0
  35. data/lib/rattler/back_end/optimizer/reduce_repeat_match.rbc +788 -0
  36. data/lib/rattler/back_end/optimizer/remove_meaningless_wrapper.rbc +508 -0
  37. data/lib/rattler/back_end/optimizer/simplify_redundant_repeat.rbc +807 -0
  38. data/lib/rattler/back_end/optimizer/simplify_token_match.rbc +561 -0
  39. data/lib/rattler/back_end/parser_generator.rbc +1326 -0
  40. data/lib/rattler/back_end/parser_generator/apply_generator.rb +30 -37
  41. data/lib/rattler/back_end/parser_generator/apply_generator.rbc +2148 -0
  42. data/lib/rattler/back_end/parser_generator/assert_generator.rb +8 -24
  43. data/lib/rattler/back_end/parser_generator/assert_generator.rbc +1967 -0
  44. data/lib/rattler/back_end/parser_generator/back_reference_generator.rb +15 -39
  45. data/lib/rattler/back_end/parser_generator/back_reference_generator.rbc +1665 -0
  46. data/lib/rattler/back_end/parser_generator/choice_generator.rb +28 -40
  47. data/lib/rattler/back_end/parser_generator/choice_generator.rbc +2793 -0
  48. data/lib/rattler/back_end/parser_generator/direct_action_generator.rb +6 -20
  49. data/lib/rattler/back_end/parser_generator/direct_action_generator.rbc +1071 -0
  50. data/lib/rattler/back_end/parser_generator/disallow_generator.rb +8 -24
  51. data/lib/rattler/back_end/parser_generator/disallow_generator.rbc +1967 -0
  52. data/lib/rattler/back_end/parser_generator/dispatch_action_generator.rb +6 -20
  53. data/lib/rattler/back_end/parser_generator/dispatch_action_generator.rbc +1071 -0
  54. data/lib/rattler/back_end/parser_generator/expr_generator.rb +33 -65
  55. data/lib/rattler/back_end/parser_generator/expr_generator.rbc +2295 -0
  56. data/lib/rattler/back_end/parser_generator/fail_generator.rb +10 -30
  57. data/lib/rattler/back_end/parser_generator/fail_generator.rbc +1216 -0
  58. data/lib/rattler/back_end/parser_generator/gen_method_names.rbc +296 -0
  59. data/lib/rattler/back_end/parser_generator/group_match.rbc +612 -0
  60. data/lib/rattler/back_end/parser_generator/group_match_generator.rb +11 -18
  61. data/lib/rattler/back_end/parser_generator/group_match_generator.rbc +1647 -0
  62. data/lib/rattler/back_end/parser_generator/label_generator.rb +7 -10
  63. data/lib/rattler/back_end/parser_generator/label_generator.rbc +1401 -0
  64. data/lib/rattler/back_end/parser_generator/list1_generator.rb +8 -15
  65. data/lib/rattler/back_end/parser_generator/list1_generator.rbc +1237 -0
  66. data/lib/rattler/back_end/parser_generator/list_generating.rb +28 -27
  67. data/lib/rattler/back_end/parser_generator/list_generating.rbc +1900 -0
  68. data/lib/rattler/back_end/parser_generator/list_generator.rb +5 -11
  69. data/lib/rattler/back_end/parser_generator/list_generator.rbc +1068 -0
  70. data/lib/rattler/back_end/parser_generator/match_generator.rb +15 -39
  71. data/lib/rattler/back_end/parser_generator/match_generator.rbc +1743 -0
  72. data/lib/rattler/back_end/parser_generator/nested.rb +11 -5
  73. data/lib/rattler/back_end/parser_generator/nested.rbc +496 -0
  74. data/lib/rattler/back_end/parser_generator/one_or_more_generator.rb +10 -8
  75. data/lib/rattler/back_end/parser_generator/one_or_more_generator.rbc +1277 -0
  76. data/lib/rattler/back_end/parser_generator/optional_generator.rb +29 -49
  77. data/lib/rattler/back_end/parser_generator/optional_generator.rbc +2025 -0
  78. data/lib/rattler/back_end/parser_generator/predicate_propogating.rbc +648 -0
  79. data/lib/rattler/back_end/parser_generator/repeat_generating.rb +26 -36
  80. data/lib/rattler/back_end/parser_generator/repeat_generating.rbc +1549 -0
  81. data/lib/rattler/back_end/parser_generator/rule_generator.rbc +1239 -0
  82. data/lib/rattler/back_end/parser_generator/rule_set_generator.rbc +2641 -0
  83. data/lib/rattler/back_end/parser_generator/sequence_generator.rb +37 -61
  84. data/lib/rattler/back_end/parser_generator/sequence_generator.rbc +4867 -0
  85. data/lib/rattler/back_end/parser_generator/skip_generator.rb +10 -14
  86. data/lib/rattler/back_end/parser_generator/skip_generator.rbc +1278 -0
  87. data/lib/rattler/back_end/parser_generator/skip_propogating.rbc +432 -0
  88. data/lib/rattler/back_end/parser_generator/sub_generating.rb +52 -33
  89. data/lib/rattler/back_end/parser_generator/sub_generating.rbc +2785 -0
  90. data/lib/rattler/back_end/parser_generator/token_generator.rb +0 -19
  91. data/lib/rattler/back_end/parser_generator/token_generator.rbc +755 -0
  92. data/lib/rattler/back_end/parser_generator/token_propogating.rbc +324 -0
  93. data/lib/rattler/back_end/parser_generator/top_level.rb +8 -6
  94. data/lib/rattler/back_end/parser_generator/top_level.rbc +352 -0
  95. data/lib/rattler/back_end/parser_generator/zero_or_more_generator.rb +7 -5
  96. data/lib/rattler/back_end/parser_generator/zero_or_more_generator.rbc +1111 -0
  97. data/lib/rattler/back_end/ruby_generator.rbc +1841 -0
  98. data/lib/rattler/grammar.rbc +557 -0
  99. data/lib/rattler/grammar/analysis.rbc +1944 -0
  100. data/lib/rattler/grammar/grammar.rbc +1090 -0
  101. data/lib/rattler/grammar/grammar_dsl.rbc +1401 -0
  102. data/lib/rattler/grammar/grammar_parser.rbc +2096 -0
  103. data/lib/rattler/grammar/metagrammar.rb +1 -1
  104. data/lib/rattler/grammar/metagrammar.rbc +11014 -0
  105. data/lib/rattler/grammar/rattler.rtlr +1 -1
  106. data/lib/rattler/parsers.rb +1 -1
  107. data/lib/rattler/parsers.rbc +1006 -0
  108. data/lib/rattler/parsers/action_code.rb +20 -26
  109. data/lib/rattler/parsers/action_code.rbc +1577 -0
  110. data/lib/rattler/parsers/apply.rbc +562 -0
  111. data/lib/rattler/parsers/assert.rbc +378 -0
  112. data/lib/rattler/parsers/back_reference.rbc +871 -0
  113. data/lib/rattler/parsers/choice.rbc +607 -0
  114. data/lib/rattler/parsers/combinator_parser.rbc +612 -0
  115. data/lib/rattler/parsers/combining.rbc +570 -0
  116. data/lib/rattler/parsers/direct_action.rbc +1472 -0
  117. data/lib/rattler/parsers/disallow.rbc +379 -0
  118. data/lib/rattler/parsers/dispatch_action.rbc +2078 -0
  119. data/lib/rattler/parsers/eof.rbc +567 -0
  120. data/lib/rattler/parsers/fail.rbc +745 -0
  121. data/lib/rattler/parsers/label.rbc +749 -0
  122. data/lib/rattler/parsers/list.rbc +292 -0
  123. data/lib/rattler/parsers/{list.rb → list0.rb} +3 -3
  124. data/lib/rattler/parsers/list0.rbc +292 -0
  125. data/lib/rattler/parsers/list1.rbc +305 -0
  126. data/lib/rattler/parsers/list_parser.rbc +886 -0
  127. data/lib/rattler/parsers/match.rbc +621 -0
  128. data/lib/rattler/parsers/node_code.rbc +1064 -0
  129. data/lib/rattler/parsers/one_or_more.rbc +475 -0
  130. data/lib/rattler/parsers/optional.rbc +450 -0
  131. data/lib/rattler/parsers/parser.rbc +994 -0
  132. data/lib/rattler/parsers/parser_dsl.rb +6 -4
  133. data/lib/rattler/parsers/parser_dsl.rbc +4765 -0
  134. data/lib/rattler/parsers/predicate.rbc +490 -0
  135. data/lib/rattler/parsers/rule.rbc +777 -0
  136. data/lib/rattler/parsers/rule_set.rbc +1438 -0
  137. data/lib/rattler/parsers/sequence.rbc +1040 -0
  138. data/lib/rattler/parsers/skip.rbc +613 -0
  139. data/lib/rattler/parsers/token.rbc +457 -0
  140. data/lib/rattler/parsers/zero_or_more.rbc +462 -0
  141. data/lib/rattler/runner.rbc +3813 -0
  142. data/lib/rattler/runtime.rbc +370 -0
  143. data/lib/rattler/runtime/extended_packrat_parser.rbc +2351 -0
  144. data/lib/rattler/runtime/packrat_parser.rbc +1390 -0
  145. data/lib/rattler/runtime/parse_failure.rbc +909 -0
  146. data/lib/rattler/runtime/parse_node.rbc +1007 -0
  147. data/lib/rattler/runtime/parser.rbc +2267 -0
  148. data/lib/rattler/runtime/parser_helper.rbc +337 -0
  149. data/lib/rattler/runtime/recursive_descent_parser.rbc +942 -0
  150. data/lib/rattler/util.rbc +286 -0
  151. data/lib/rattler/util/graphviz.rbc +327 -0
  152. data/lib/rattler/util/graphviz/node_builder.rbc +2207 -0
  153. data/lib/rattler/util/line_counter.rbc +988 -0
  154. data/lib/rattler/util/node.rbc +2393 -0
  155. data/lib/rattler/util/parser_spec_helper.rbc +2533 -0
  156. data/spec/rattler/back_end/compiler_spec.rbc +1187 -0
  157. data/spec/rattler/back_end/optimizer/flatten_choice_spec.rbc +2093 -0
  158. data/spec/rattler/back_end/optimizer/flatten_sequence_spec.rbc +4055 -0
  159. data/spec/rattler/back_end/optimizer/inline_regular_rules_spec.rbc +2345 -0
  160. data/spec/rattler/back_end/optimizer/join_match_capturing_sequence_spec.rbc +7006 -0
  161. data/spec/rattler/back_end/optimizer/join_match_choice_spec.rbc +3252 -0
  162. data/spec/rattler/back_end/optimizer/join_match_matching_sequence_spec.rbc +3681 -0
  163. data/spec/rattler/back_end/optimizer/join_predicate_bare_match_spec.rbc +5603 -0
  164. data/spec/rattler/back_end/optimizer/join_predicate_nested_match_spec.rbc +5232 -0
  165. data/spec/rattler/back_end/optimizer/join_predicate_or_bare_match_spec.rbc +4272 -0
  166. data/spec/rattler/back_end/optimizer/join_predicate_or_nested_match_spec.rbc +4342 -0
  167. data/spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rbc +2960 -0
  168. data/spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rbc +6929 -0
  169. data/spec/rattler/back_end/optimizer/simplify_token_match_spec.rbc +2327 -0
  170. data/spec/rattler/back_end/optimizer_spec.rbc +372 -0
  171. data/spec/rattler/back_end/parser_generator/apply_generator_spec.rbc +4710 -0
  172. data/spec/rattler/back_end/parser_generator/assert_generator_spec.rbc +4697 -0
  173. data/spec/rattler/back_end/parser_generator/back_reference_generator_spec.rbc +4855 -0
  174. data/spec/rattler/back_end/parser_generator/choice_generator_spec.rbc +5350 -0
  175. data/spec/rattler/back_end/parser_generator/direct_action_generator_spec.rbc +4737 -0
  176. data/spec/rattler/back_end/parser_generator/disallow_generator_spec.rbc +4697 -0
  177. data/spec/rattler/back_end/parser_generator/dispatch_action_generator_spec.rbc +4731 -0
  178. data/spec/rattler/back_end/parser_generator/fail_generator_spec.rbc +2115 -0
  179. data/spec/rattler/back_end/parser_generator/group_match_generator_spec.rbc +4195 -0
  180. data/spec/rattler/back_end/parser_generator/group_match_spec.rbc +1414 -0
  181. data/spec/rattler/back_end/parser_generator/label_generator_spec.rbc +4696 -0
  182. data/spec/rattler/back_end/parser_generator/list1_generator_spec.rbc +5213 -0
  183. data/spec/rattler/back_end/parser_generator/list_generator_spec.rb +3 -3
  184. data/spec/rattler/back_end/parser_generator/list_generator_spec.rbc +5179 -0
  185. data/spec/rattler/back_end/parser_generator/match_generator_spec.rbc +4681 -0
  186. data/spec/rattler/back_end/parser_generator/one_or_more_generator_spec.rbc +4957 -0
  187. data/spec/rattler/back_end/parser_generator/optional_generator_spec.rbc +4704 -0
  188. data/spec/rattler/back_end/parser_generator/rule_generator_spec.rbc +545 -0
  189. data/spec/rattler/back_end/parser_generator/rule_set_generator_spec.rbc +1110 -0
  190. data/spec/rattler/back_end/parser_generator/sequence_generator_spec.rbc +5453 -0
  191. data/spec/rattler/back_end/parser_generator/skip_generator_spec.rbc +4691 -0
  192. data/spec/rattler/back_end/parser_generator/token_generator_spec.rbc +4691 -0
  193. data/spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rbc +4924 -0
  194. data/spec/rattler/back_end/ruby_generator_spec.rbc +2460 -0
  195. data/spec/rattler/back_end/shared_compiler_examples.rbc +41886 -0
  196. data/spec/rattler/grammar/analysis_spec.rbc +4365 -0
  197. data/spec/rattler/grammar/grammar_parser_spec.rbc +10344 -0
  198. data/spec/rattler/grammar/grammar_spec.rbc +1701 -0
  199. data/spec/rattler/parsers/action_code_spec.rb +0 -29
  200. data/spec/rattler/parsers/action_code_spec.rbc +4674 -0
  201. data/spec/rattler/parsers/apply_spec.rbc +851 -0
  202. data/spec/rattler/parsers/assert_spec.rbc +752 -0
  203. data/spec/rattler/parsers/back_reference_spec.rbc +1002 -0
  204. data/spec/rattler/parsers/choice_spec.rbc +1696 -0
  205. data/spec/rattler/parsers/combinator_parser_spec.rbc +361 -0
  206. data/spec/rattler/parsers/direct_action_spec.rbc +5222 -0
  207. data/spec/rattler/parsers/disallow_spec.rbc +752 -0
  208. data/spec/rattler/parsers/dispatch_action_spec.rbc +3033 -0
  209. data/spec/rattler/parsers/eof_spec.rbc +728 -0
  210. data/spec/rattler/parsers/fail_spec.rbc +548 -0
  211. data/spec/rattler/parsers/label_spec.rbc +1091 -0
  212. data/spec/rattler/parsers/{list_spec.rb → list0_spec.rb} +5 -5
  213. data/spec/rattler/parsers/list0_spec.rbc +2308 -0
  214. data/spec/rattler/parsers/list1_spec.rbc +2287 -0
  215. data/spec/rattler/parsers/list_spec.rbc +2308 -0
  216. data/spec/rattler/parsers/match_spec.rbc +780 -0
  217. data/spec/rattler/parsers/node_code_spec.rbc +1754 -0
  218. data/spec/rattler/parsers/one_or_more_spec.rbc +1698 -0
  219. data/spec/rattler/parsers/optional_spec.rbc +1717 -0
  220. data/spec/rattler/parsers/parser_dsl_spec.rb +2 -2
  221. data/spec/rattler/parsers/parser_dsl_spec.rbc +10150 -0
  222. data/spec/rattler/parsers/rule_set_spec.rbc +1060 -0
  223. data/spec/rattler/parsers/sequence_spec.rbc +2899 -0
  224. data/spec/rattler/parsers/skip_spec.rbc +753 -0
  225. data/spec/rattler/parsers/token_spec.rbc +1511 -0
  226. data/spec/rattler/parsers/zero_or_more_spec.rbc +1719 -0
  227. data/spec/rattler/runtime/extended_packrat_parser_spec.rbc +1341 -0
  228. data/spec/rattler/runtime/packrat_parser_spec.rbc +210 -0
  229. data/spec/rattler/runtime/parse_failure_spec.rbc +2244 -0
  230. data/spec/rattler/runtime/parse_node_spec.rbc +2008 -0
  231. data/spec/rattler/runtime/parser_spec.rbc +2757 -0
  232. data/spec/rattler/runtime/recursive_descent_parser_spec.rbc +210 -0
  233. data/spec/rattler/runtime/shared_parser_examples.rbc +2567 -0
  234. data/spec/rattler/util/graphviz/node_builder_spec.rbc +3439 -0
  235. data/spec/rattler/util/line_counter_spec.rbc +2272 -0
  236. data/spec/rattler/util/node_spec.rbc +15023 -0
  237. data/spec/rattler_spec.rbc +1591 -0
  238. data/spec/spec_helper.rbc +336 -0
  239. data/spec/support/combinator_parser_spec_helper.rbc +1284 -0
  240. data/spec/support/compiler_spec_helper.rbc +1941 -0
  241. data/spec/support/parser_generator_spec_helper.rbc +718 -0
  242. data/spec/support/runtime_parser_spec_helper.rbc +313 -0
  243. metadata +421 -82
@@ -13,15 +13,11 @@ module Rattler::BackEnd::ParserGenerator
13
13
  @capture_names = []
14
14
  end
15
15
 
16
- def gen_basic_nested(sequence, scope={})
17
- atomic_block { gen_basic_top_level sequence, scope }
18
- end
19
-
20
- def gen_basic_top_level(sequence, scope={})
16
+ def gen_basic(sequence, scope={})
21
17
  with_backtracking do
22
18
  if sequence.capture_count == 1 and sequence.children.last.capturing?
23
19
  @g.intersperse_nl(sequence, ' &&') do |child|
24
- scope = gen_capturing(child, scope) { generate child, :basic, scope }
20
+ scope = gen_capturing(child, scope) { gen_nested child, :basic, scope }
25
21
  end
26
22
  else
27
23
  sequence.each do |child|
@@ -32,66 +28,48 @@ module Rattler::BackEnd::ParserGenerator
32
28
  end
33
29
  end
34
30
 
35
- def gen_assert_nested(sequence, scope={})
36
- atomic_block { gen_assert_top_level sequence, scope }
37
- end
38
-
39
- def gen_assert_top_level(sequence, scope={})
40
- lookahead do
41
- @g.block("#{result_name} = begin") do
42
- sequence.each do |_|
43
- @g.suffix(' &&') { scope = gen_matching _, scope }.newline
31
+ def gen_assert(sequence, scope={})
32
+ expr :block do
33
+ lookahead do
34
+ @g.block("#{result_name} = begin") do
35
+ sequence.each do |_|
36
+ @g.suffix(' &&') { scope = gen_matching _, scope }.newline
37
+ end
38
+ @g << "true"
44
39
  end
45
- @g << "true"
40
+ @g.newline
46
41
  end
47
- @g.newline
42
+ @g << result_name
48
43
  end
49
- @g << result_name
50
- end
51
-
52
- def gen_disallow_nested(sequence, scope={})
53
- atomic_block { gen_disallow_top_level sequence, scope }
54
44
  end
55
45
 
56
- def gen_disallow_top_level(sequence, scope={})
57
- lookahead do
58
- @g.block("#{result_name} = !begin") do
59
- @g.intersperse_nl(sequence, ' &&') do |_|
60
- scope = gen_matching _, scope
46
+ def gen_disallow(sequence, scope={})
47
+ expr :block do
48
+ lookahead do
49
+ @g.block("#{result_name} = !begin") do
50
+ @g.intersperse_nl(sequence, ' &&') do |_|
51
+ scope = gen_matching _, scope
52
+ end
61
53
  end
54
+ @g.newline
62
55
  end
63
- @g.newline
56
+ @g << result_name
64
57
  end
65
- @g << result_name
66
58
  end
67
59
 
68
- def gen_dispatch_action_nested(sequence, code, scope={})
69
- atomic_block do
70
- gen_dispatch_action_top_level sequence, code, scope
71
- end
72
- end
73
-
74
- def gen_dispatch_action_top_level(sequence, code, scope={})
60
+ def gen_dispatch_action(sequence, code, scope={})
75
61
  gen_action_code(sequence, scope) do |new_scope|
76
62
  code.bind new_scope, result_array_expr(sequence)
77
63
  end
78
64
  end
79
65
 
80
- def gen_direct_action_nested(sequence, code, scope={})
81
- atomic_block { gen_direct_action_top_level sequence, code, scope }
82
- end
83
-
84
- def gen_direct_action_top_level(sequence, code, scope={})
66
+ def gen_direct_action(sequence, code, scope={})
85
67
  gen_action_code(sequence, scope) do |new_scope|
86
68
  "(#{code.bind new_scope, @capture_names})"
87
69
  end
88
70
  end
89
71
 
90
- def gen_token_nested(sequence, scope={})
91
- atomic_block { gen_token_top_level sequence, scope }
92
- end
93
-
94
- def gen_token_top_level(sequence, scope={})
72
+ def gen_token(sequence, scope={})
95
73
  with_backtracking do
96
74
  sequence.each do |_|
97
75
  @g.suffix(' &&') { scope = gen_matching _, scope }.newline
@@ -100,11 +78,7 @@ module Rattler::BackEnd::ParserGenerator
100
78
  end
101
79
  end
102
80
 
103
- def gen_skip_nested(sequence, scope={})
104
- atomic_block { gen_skip_top_level sequence, scope }
105
- end
106
-
107
- def gen_skip_top_level(sequence, scope={})
81
+ def gen_skip(sequence, scope={})
108
82
  with_backtracking do
109
83
  sequence.each do |_|
110
84
  @g.suffix(' &&') { scope = gen_matching _, scope }.newline
@@ -117,9 +91,9 @@ module Rattler::BackEnd::ParserGenerator
117
91
 
118
92
  def gen_matching(child, scope)
119
93
  if child.labeled?
120
- @g.surround("(#{capture_name} = ", ')') { generate child, :basic, scope }
94
+ @g.surround("(#{capture_name} = ", ')') { gen_nested child, :basic, scope }
121
95
  else
122
- generate child, :intermediate_skip, scope
96
+ gen_nested child, :intermediate_skip, scope
123
97
  end
124
98
  child.labeled? ? scope.merge(child.label => last_capture_name) : scope
125
99
  end
@@ -129,21 +103,23 @@ module Rattler::BackEnd::ParserGenerator
129
103
  if block_given?
130
104
  yield
131
105
  else
132
- @g.surround("(#{capture_name} = ", ')') { generate child, :basic, scope }
106
+ @g.surround("(#{capture_name} = ", ')') { gen_nested child, :basic, scope }
133
107
  end
134
108
  else
135
- generate child, :intermediate, scope
109
+ gen_nested child, :intermediate, scope
136
110
  end
137
111
  child.labeled? ? scope.merge(child.label => last_capture_name) : scope
138
112
  end
139
113
 
140
114
  def with_backtracking
141
- (@g << "#{saved_pos_name} = @scanner.pos").newline
142
- @g.block 'begin' do
143
- yield
144
- end
145
- @g.block ' || begin' do
146
- (@g << "@scanner.pos = #{saved_pos_name}").newline << 'false'
115
+ expr :block do
116
+ (@g << "#{saved_pos_name} = @scanner.pos").newline
117
+ @g.block 'begin' do
118
+ yield
119
+ end
120
+ @g.block ' || begin' do
121
+ (@g << "@scanner.pos = #{saved_pos_name}").newline << 'false'
122
+ end
147
123
  end
148
124
  end
149
125
 
@@ -0,0 +1,4867 @@
1
+ !RBIX
2
+ 3105615304195158506
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 41
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 99
23
+ 7
24
+ 2
25
+ 45
26
+ 3
27
+ 4
28
+ 43
29
+ 5
30
+ 49
31
+ 6
32
+ 2
33
+ 13
34
+ 99
35
+ 12
36
+ 7
37
+ 7
38
+ 12
39
+ 7
40
+ 8
41
+ 12
42
+ 65
43
+ 12
44
+ 49
45
+ 9
46
+ 4
47
+ 15
48
+ 49
49
+ 7
50
+ 0
51
+ 15
52
+ 2
53
+ 11
54
+ I
55
+ 6
56
+ I
57
+ 0
58
+ I
59
+ 0
60
+ I
61
+ 0
62
+ n
63
+ p
64
+ 10
65
+ s
66
+ 33
67
+ rattler/back_end/parser_generator
68
+ x
69
+ 7
70
+ require
71
+ x
72
+ 15
73
+ ParserGenerator
74
+ x
75
+ 7
76
+ Rattler
77
+ n
78
+ x
79
+ 7
80
+ BackEnd
81
+ x
82
+ 17
83
+ open_module_under
84
+ x
85
+ 15
86
+ __module_init__
87
+ M
88
+ 1
89
+ n
90
+ n
91
+ x
92
+ 15
93
+ ParserGenerator
94
+ i
95
+ 115
96
+ 5
97
+ 66
98
+ 99
99
+ 7
100
+ 0
101
+ 45
102
+ 1
103
+ 2
104
+ 65
105
+ 49
106
+ 3
107
+ 3
108
+ 13
109
+ 99
110
+ 12
111
+ 7
112
+ 4
113
+ 12
114
+ 7
115
+ 5
116
+ 12
117
+ 65
118
+ 12
119
+ 49
120
+ 6
121
+ 4
122
+ 15
123
+ 49
124
+ 4
125
+ 0
126
+ 15
127
+ 99
128
+ 7
129
+ 7
130
+ 45
131
+ 0
132
+ 8
133
+ 65
134
+ 49
135
+ 3
136
+ 3
137
+ 13
138
+ 99
139
+ 12
140
+ 7
141
+ 4
142
+ 12
143
+ 7
144
+ 9
145
+ 12
146
+ 65
147
+ 12
148
+ 49
149
+ 6
150
+ 4
151
+ 15
152
+ 49
153
+ 4
154
+ 0
155
+ 15
156
+ 99
157
+ 7
158
+ 10
159
+ 7
160
+ 11
161
+ 65
162
+ 45
163
+ 0
164
+ 12
165
+ 49
166
+ 6
167
+ 4
168
+ 15
169
+ 99
170
+ 7
171
+ 13
172
+ 45
173
+ 0
174
+ 14
175
+ 65
176
+ 49
177
+ 3
178
+ 3
179
+ 13
180
+ 99
181
+ 12
182
+ 7
183
+ 4
184
+ 12
185
+ 7
186
+ 15
187
+ 12
188
+ 65
189
+ 12
190
+ 49
191
+ 6
192
+ 4
193
+ 15
194
+ 49
195
+ 4
196
+ 0
197
+ 15
198
+ 99
199
+ 7
200
+ 16
201
+ 7
202
+ 17
203
+ 65
204
+ 45
205
+ 0
206
+ 18
207
+ 49
208
+ 6
209
+ 4
210
+ 11
211
+ I
212
+ 6
213
+ I
214
+ 0
215
+ I
216
+ 0
217
+ I
218
+ 0
219
+ n
220
+ p
221
+ 19
222
+ x
223
+ 17
224
+ SequenceGenerator
225
+ x
226
+ 13
227
+ ExprGenerator
228
+ n
229
+ x
230
+ 10
231
+ open_class
232
+ x
233
+ 14
234
+ __class_init__
235
+ M
236
+ 1
237
+ n
238
+ n
239
+ x
240
+ 17
241
+ SequenceGenerator
242
+ i
243
+ 286
244
+ 5
245
+ 66
246
+ 5
247
+ 45
248
+ 0
249
+ 1
250
+ 47
251
+ 49
252
+ 2
253
+ 1
254
+ 15
255
+ 5
256
+ 45
257
+ 3
258
+ 4
259
+ 43
260
+ 5
261
+ 47
262
+ 49
263
+ 2
264
+ 1
265
+ 15
266
+ 99
267
+ 7
268
+ 6
269
+ 7
270
+ 7
271
+ 65
272
+ 67
273
+ 49
274
+ 8
275
+ 0
276
+ 49
277
+ 9
278
+ 4
279
+ 15
280
+ 99
281
+ 7
282
+ 10
283
+ 7
284
+ 11
285
+ 65
286
+ 67
287
+ 49
288
+ 8
289
+ 0
290
+ 49
291
+ 9
292
+ 4
293
+ 15
294
+ 99
295
+ 7
296
+ 12
297
+ 7
298
+ 13
299
+ 65
300
+ 67
301
+ 49
302
+ 8
303
+ 0
304
+ 49
305
+ 9
306
+ 4
307
+ 15
308
+ 99
309
+ 7
310
+ 14
311
+ 7
312
+ 15
313
+ 65
314
+ 67
315
+ 49
316
+ 8
317
+ 0
318
+ 49
319
+ 9
320
+ 4
321
+ 15
322
+ 99
323
+ 7
324
+ 16
325
+ 7
326
+ 17
327
+ 65
328
+ 67
329
+ 49
330
+ 8
331
+ 0
332
+ 49
333
+ 9
334
+ 4
335
+ 15
336
+ 99
337
+ 7
338
+ 18
339
+ 7
340
+ 19
341
+ 65
342
+ 67
343
+ 49
344
+ 8
345
+ 0
346
+ 49
347
+ 9
348
+ 4
349
+ 15
350
+ 99
351
+ 7
352
+ 20
353
+ 7
354
+ 21
355
+ 65
356
+ 67
357
+ 49
358
+ 8
359
+ 0
360
+ 49
361
+ 9
362
+ 4
363
+ 15
364
+ 99
365
+ 7
366
+ 22
367
+ 7
368
+ 23
369
+ 65
370
+ 67
371
+ 49
372
+ 8
373
+ 0
374
+ 49
375
+ 9
376
+ 4
377
+ 15
378
+ 5
379
+ 48
380
+ 24
381
+ 15
382
+ 99
383
+ 7
384
+ 25
385
+ 7
386
+ 26
387
+ 65
388
+ 67
389
+ 49
390
+ 8
391
+ 0
392
+ 49
393
+ 9
394
+ 4
395
+ 15
396
+ 99
397
+ 7
398
+ 27
399
+ 7
400
+ 28
401
+ 65
402
+ 67
403
+ 49
404
+ 8
405
+ 0
406
+ 49
407
+ 9
408
+ 4
409
+ 15
410
+ 99
411
+ 7
412
+ 29
413
+ 7
414
+ 30
415
+ 65
416
+ 67
417
+ 49
418
+ 8
419
+ 0
420
+ 49
421
+ 9
422
+ 4
423
+ 15
424
+ 99
425
+ 7
426
+ 31
427
+ 7
428
+ 32
429
+ 65
430
+ 67
431
+ 49
432
+ 8
433
+ 0
434
+ 49
435
+ 9
436
+ 4
437
+ 15
438
+ 99
439
+ 7
440
+ 33
441
+ 7
442
+ 34
443
+ 65
444
+ 67
445
+ 49
446
+ 8
447
+ 0
448
+ 49
449
+ 9
450
+ 4
451
+ 15
452
+ 99
453
+ 7
454
+ 35
455
+ 7
456
+ 36
457
+ 65
458
+ 67
459
+ 49
460
+ 8
461
+ 0
462
+ 49
463
+ 9
464
+ 4
465
+ 15
466
+ 99
467
+ 7
468
+ 37
469
+ 7
470
+ 38
471
+ 65
472
+ 67
473
+ 49
474
+ 8
475
+ 0
476
+ 49
477
+ 9
478
+ 4
479
+ 15
480
+ 99
481
+ 7
482
+ 39
483
+ 7
484
+ 40
485
+ 65
486
+ 67
487
+ 49
488
+ 8
489
+ 0
490
+ 49
491
+ 9
492
+ 4
493
+ 15
494
+ 99
495
+ 7
496
+ 41
497
+ 7
498
+ 42
499
+ 65
500
+ 67
501
+ 49
502
+ 8
503
+ 0
504
+ 49
505
+ 9
506
+ 4
507
+ 15
508
+ 5
509
+ 7
510
+ 43
511
+ 47
512
+ 49
513
+ 44
514
+ 1
515
+ 15
516
+ 99
517
+ 7
518
+ 45
519
+ 7
520
+ 46
521
+ 65
522
+ 67
523
+ 49
524
+ 8
525
+ 0
526
+ 49
527
+ 9
528
+ 4
529
+ 11
530
+ I
531
+ 5
532
+ I
533
+ 0
534
+ I
535
+ 0
536
+ I
537
+ 0
538
+ n
539
+ p
540
+ 47
541
+ x
542
+ 19
543
+ NestedSubGenerating
544
+ n
545
+ x
546
+ 7
547
+ include
548
+ x
549
+ 7
550
+ Rattler
551
+ n
552
+ x
553
+ 7
554
+ Parsers
555
+ x
556
+ 10
557
+ initialize
558
+ M
559
+ 1
560
+ n
561
+ n
562
+ x
563
+ 10
564
+ initialize
565
+ i
566
+ 9
567
+ 54
568
+ 89
569
+ 0
570
+ 15
571
+ 35
572
+ 0
573
+ 38
574
+ 1
575
+ 11
576
+ I
577
+ 2
578
+ I
579
+ 1
580
+ I
581
+ 0
582
+ I
583
+ 0
584
+ I
585
+ 0
586
+ p
587
+ 2
588
+ x
589
+ 10
590
+ initialize
591
+ x
592
+ 14
593
+ @capture_names
594
+ p
595
+ 7
596
+ I
597
+ -1
598
+ I
599
+ b
600
+ I
601
+ 0
602
+ I
603
+ c
604
+ I
605
+ 4
606
+ I
607
+ d
608
+ I
609
+ 9
610
+ x
611
+ 105
612
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
613
+ p
614
+ 1
615
+ x
616
+ 4
617
+ args
618
+ x
619
+ 17
620
+ method_visibility
621
+ x
622
+ 15
623
+ add_defn_method
624
+ x
625
+ 9
626
+ gen_basic
627
+ M
628
+ 1
629
+ n
630
+ n
631
+ x
632
+ 9
633
+ gen_basic
634
+ i
635
+ 22
636
+ 23
637
+ 1
638
+ 10
639
+ 14
640
+ 44
641
+ 43
642
+ 0
643
+ 78
644
+ 49
645
+ 1
646
+ 1
647
+ 19
648
+ 1
649
+ 15
650
+ 5
651
+ 56
652
+ 2
653
+ 47
654
+ 50
655
+ 3
656
+ 0
657
+ 11
658
+ I
659
+ 4
660
+ I
661
+ 2
662
+ I
663
+ 1
664
+ I
665
+ 2
666
+ n
667
+ p
668
+ 4
669
+ x
670
+ 4
671
+ Hash
672
+ x
673
+ 16
674
+ new_from_literal
675
+ M
676
+ 1
677
+ p
678
+ 2
679
+ x
680
+ 9
681
+ for_block
682
+ t
683
+ n
684
+ x
685
+ 9
686
+ gen_basic
687
+ i
688
+ 65
689
+ 21
690
+ 1
691
+ 0
692
+ 49
693
+ 0
694
+ 0
695
+ 79
696
+ 83
697
+ 1
698
+ 13
699
+ 9
700
+ 25
701
+ 15
702
+ 21
703
+ 1
704
+ 0
705
+ 49
706
+ 2
707
+ 0
708
+ 49
709
+ 3
710
+ 0
711
+ 49
712
+ 4
713
+ 0
714
+ 9
715
+ 42
716
+ 39
717
+ 5
718
+ 21
719
+ 1
720
+ 0
721
+ 7
722
+ 6
723
+ 64
724
+ 56
725
+ 7
726
+ 50
727
+ 8
728
+ 2
729
+ 8
730
+ 64
731
+ 21
732
+ 1
733
+ 0
734
+ 56
735
+ 9
736
+ 50
737
+ 10
738
+ 0
739
+ 15
740
+ 39
741
+ 5
742
+ 5
743
+ 21
744
+ 1
745
+ 0
746
+ 47
747
+ 49
748
+ 11
749
+ 1
750
+ 49
751
+ 12
752
+ 1
753
+ 11
754
+ I
755
+ 5
756
+ I
757
+ 0
758
+ I
759
+ 0
760
+ I
761
+ 0
762
+ I
763
+ -2
764
+ p
765
+ 13
766
+ x
767
+ 13
768
+ capture_count
769
+ x
770
+ 2
771
+ ==
772
+ x
773
+ 8
774
+ children
775
+ x
776
+ 4
777
+ last
778
+ x
779
+ 10
780
+ capturing?
781
+ x
782
+ 2
783
+ @g
784
+ s
785
+ 3
786
+ &&
787
+ M
788
+ 1
789
+ p
790
+ 2
791
+ x
792
+ 9
793
+ for_block
794
+ t
795
+ n
796
+ x
797
+ 9
798
+ gen_basic
799
+ i
800
+ 20
801
+ 57
802
+ 19
803
+ 0
804
+ 15
805
+ 5
806
+ 20
807
+ 0
808
+ 21
809
+ 2
810
+ 1
811
+ 56
812
+ 0
813
+ 47
814
+ 50
815
+ 1
816
+ 2
817
+ 22
818
+ 2
819
+ 1
820
+ 11
821
+ I
822
+ 6
823
+ I
824
+ 1
825
+ I
826
+ 1
827
+ I
828
+ 1
829
+ n
830
+ p
831
+ 2
832
+ M
833
+ 1
834
+ p
835
+ 2
836
+ x
837
+ 9
838
+ for_block
839
+ t
840
+ n
841
+ x
842
+ 9
843
+ gen_basic
844
+ i
845
+ 14
846
+ 5
847
+ 21
848
+ 1
849
+ 0
850
+ 7
851
+ 0
852
+ 21
853
+ 3
854
+ 1
855
+ 47
856
+ 49
857
+ 1
858
+ 3
859
+ 11
860
+ I
861
+ 5
862
+ I
863
+ 0
864
+ I
865
+ 0
866
+ I
867
+ 0
868
+ I
869
+ -2
870
+ p
871
+ 2
872
+ x
873
+ 5
874
+ basic
875
+ x
876
+ 10
877
+ gen_nested
878
+ p
879
+ 3
880
+ I
881
+ 0
882
+ I
883
+ 14
884
+ I
885
+ e
886
+ x
887
+ 105
888
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
889
+ p
890
+ 0
891
+ x
892
+ 13
893
+ gen_capturing
894
+ p
895
+ 5
896
+ I
897
+ 0
898
+ I
899
+ 13
900
+ I
901
+ 4
902
+ I
903
+ 14
904
+ I
905
+ 14
906
+ x
907
+ 105
908
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
909
+ p
910
+ 1
911
+ x
912
+ 5
913
+ child
914
+ x
915
+ 14
916
+ intersperse_nl
917
+ M
918
+ 1
919
+ p
920
+ 2
921
+ x
922
+ 9
923
+ for_block
924
+ t
925
+ n
926
+ x
927
+ 9
928
+ gen_basic
929
+ i
930
+ 18
931
+ 57
932
+ 19
933
+ 0
934
+ 15
935
+ 39
936
+ 0
937
+ 7
938
+ 1
939
+ 64
940
+ 56
941
+ 2
942
+ 50
943
+ 3
944
+ 1
945
+ 49
946
+ 4
947
+ 0
948
+ 11
949
+ I
950
+ 5
951
+ I
952
+ 1
953
+ I
954
+ 1
955
+ I
956
+ 1
957
+ n
958
+ p
959
+ 5
960
+ x
961
+ 2
962
+ @g
963
+ s
964
+ 3
965
+ &&
966
+ M
967
+ 1
968
+ p
969
+ 2
970
+ x
971
+ 9
972
+ for_block
973
+ t
974
+ n
975
+ x
976
+ 9
977
+ gen_basic
978
+ i
979
+ 15
980
+ 5
981
+ 21
982
+ 1
983
+ 0
984
+ 21
985
+ 3
986
+ 1
987
+ 47
988
+ 49
989
+ 0
990
+ 2
991
+ 22
992
+ 3
993
+ 1
994
+ 11
995
+ I
996
+ 4
997
+ I
998
+ 0
999
+ I
1000
+ 0
1001
+ I
1002
+ 0
1003
+ I
1004
+ -2
1005
+ p
1006
+ 1
1007
+ x
1008
+ 13
1009
+ gen_capturing
1010
+ p
1011
+ 3
1012
+ I
1013
+ 0
1014
+ I
1015
+ 18
1016
+ I
1017
+ f
1018
+ x
1019
+ 105
1020
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1021
+ p
1022
+ 0
1023
+ x
1024
+ 6
1025
+ suffix
1026
+ x
1027
+ 7
1028
+ newline
1029
+ p
1030
+ 5
1031
+ I
1032
+ 0
1033
+ I
1034
+ 17
1035
+ I
1036
+ 4
1037
+ I
1038
+ 18
1039
+ I
1040
+ 12
1041
+ x
1042
+ 105
1043
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1044
+ p
1045
+ 1
1046
+ x
1047
+ 5
1048
+ child
1049
+ x
1050
+ 4
1051
+ each
1052
+ x
1053
+ 11
1054
+ result_expr
1055
+ x
1056
+ 2
1057
+ <<
1058
+ p
1059
+ 9
1060
+ I
1061
+ 0
1062
+ I
1063
+ 12
1064
+ I
1065
+ 1b
1066
+ I
1067
+ 13
1068
+ I
1069
+ 2a
1070
+ I
1071
+ 17
1072
+ I
1073
+ 33
1074
+ I
1075
+ 1a
1076
+ I
1077
+ 41
1078
+ x
1079
+ 105
1080
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1081
+ p
1082
+ 0
1083
+ x
1084
+ 17
1085
+ with_backtracking
1086
+ p
1087
+ 5
1088
+ I
1089
+ -1
1090
+ I
1091
+ 10
1092
+ I
1093
+ e
1094
+ I
1095
+ 11
1096
+ I
1097
+ 16
1098
+ x
1099
+ 105
1100
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1101
+ p
1102
+ 2
1103
+ x
1104
+ 8
1105
+ sequence
1106
+ x
1107
+ 5
1108
+ scope
1109
+ x
1110
+ 10
1111
+ gen_assert
1112
+ M
1113
+ 1
1114
+ n
1115
+ n
1116
+ x
1117
+ 10
1118
+ gen_assert
1119
+ i
1120
+ 24
1121
+ 23
1122
+ 1
1123
+ 10
1124
+ 14
1125
+ 44
1126
+ 43
1127
+ 0
1128
+ 78
1129
+ 49
1130
+ 1
1131
+ 1
1132
+ 19
1133
+ 1
1134
+ 15
1135
+ 5
1136
+ 7
1137
+ 2
1138
+ 56
1139
+ 3
1140
+ 47
1141
+ 50
1142
+ 4
1143
+ 1
1144
+ 11
1145
+ I
1146
+ 5
1147
+ I
1148
+ 2
1149
+ I
1150
+ 1
1151
+ I
1152
+ 2
1153
+ n
1154
+ p
1155
+ 5
1156
+ x
1157
+ 4
1158
+ Hash
1159
+ x
1160
+ 16
1161
+ new_from_literal
1162
+ x
1163
+ 5
1164
+ block
1165
+ M
1166
+ 1
1167
+ p
1168
+ 2
1169
+ x
1170
+ 9
1171
+ for_block
1172
+ t
1173
+ n
1174
+ x
1175
+ 10
1176
+ gen_assert
1177
+ i
1178
+ 17
1179
+ 5
1180
+ 56
1181
+ 0
1182
+ 47
1183
+ 50
1184
+ 1
1185
+ 0
1186
+ 15
1187
+ 39
1188
+ 2
1189
+ 5
1190
+ 48
1191
+ 3
1192
+ 49
1193
+ 4
1194
+ 1
1195
+ 11
1196
+ I
1197
+ 3
1198
+ I
1199
+ 0
1200
+ I
1201
+ 0
1202
+ I
1203
+ 0
1204
+ I
1205
+ -2
1206
+ p
1207
+ 5
1208
+ M
1209
+ 1
1210
+ p
1211
+ 2
1212
+ x
1213
+ 9
1214
+ for_block
1215
+ t
1216
+ n
1217
+ x
1218
+ 10
1219
+ gen_assert
1220
+ i
1221
+ 24
1222
+ 39
1223
+ 0
1224
+ 5
1225
+ 48
1226
+ 1
1227
+ 47
1228
+ 101
1229
+ 2
1230
+ 7
1231
+ 3
1232
+ 63
1233
+ 2
1234
+ 56
1235
+ 4
1236
+ 50
1237
+ 5
1238
+ 1
1239
+ 15
1240
+ 39
1241
+ 0
1242
+ 49
1243
+ 6
1244
+ 0
1245
+ 11
1246
+ I
1247
+ 4
1248
+ I
1249
+ 0
1250
+ I
1251
+ 0
1252
+ I
1253
+ 0
1254
+ I
1255
+ -2
1256
+ p
1257
+ 7
1258
+ x
1259
+ 2
1260
+ @g
1261
+ x
1262
+ 11
1263
+ result_name
1264
+ x
1265
+ 4
1266
+ to_s
1267
+ s
1268
+ 8
1269
+ = begin
1270
+ M
1271
+ 1
1272
+ p
1273
+ 2
1274
+ x
1275
+ 9
1276
+ for_block
1277
+ t
1278
+ n
1279
+ x
1280
+ 10
1281
+ gen_assert
1282
+ i
1283
+ 18
1284
+ 21
1285
+ 3
1286
+ 0
1287
+ 56
1288
+ 0
1289
+ 50
1290
+ 1
1291
+ 0
1292
+ 15
1293
+ 39
1294
+ 2
1295
+ 7
1296
+ 3
1297
+ 64
1298
+ 49
1299
+ 4
1300
+ 1
1301
+ 11
1302
+ I
1303
+ 3
1304
+ I
1305
+ 0
1306
+ I
1307
+ 0
1308
+ I
1309
+ 0
1310
+ I
1311
+ -2
1312
+ p
1313
+ 5
1314
+ M
1315
+ 1
1316
+ p
1317
+ 2
1318
+ x
1319
+ 9
1320
+ for_block
1321
+ t
1322
+ n
1323
+ x
1324
+ 10
1325
+ gen_assert
1326
+ i
1327
+ 18
1328
+ 57
1329
+ 19
1330
+ 0
1331
+ 15
1332
+ 39
1333
+ 0
1334
+ 7
1335
+ 1
1336
+ 64
1337
+ 56
1338
+ 2
1339
+ 50
1340
+ 3
1341
+ 1
1342
+ 49
1343
+ 4
1344
+ 0
1345
+ 11
1346
+ I
1347
+ 5
1348
+ I
1349
+ 1
1350
+ I
1351
+ 1
1352
+ I
1353
+ 1
1354
+ n
1355
+ p
1356
+ 5
1357
+ x
1358
+ 2
1359
+ @g
1360
+ s
1361
+ 3
1362
+ &&
1363
+ M
1364
+ 1
1365
+ p
1366
+ 2
1367
+ x
1368
+ 9
1369
+ for_block
1370
+ t
1371
+ n
1372
+ x
1373
+ 10
1374
+ gen_assert
1375
+ i
1376
+ 15
1377
+ 5
1378
+ 21
1379
+ 1
1380
+ 0
1381
+ 21
1382
+ 5
1383
+ 1
1384
+ 47
1385
+ 49
1386
+ 0
1387
+ 2
1388
+ 22
1389
+ 5
1390
+ 1
1391
+ 11
1392
+ I
1393
+ 4
1394
+ I
1395
+ 0
1396
+ I
1397
+ 0
1398
+ I
1399
+ 0
1400
+ I
1401
+ -2
1402
+ p
1403
+ 1
1404
+ x
1405
+ 12
1406
+ gen_matching
1407
+ p
1408
+ 3
1409
+ I
1410
+ 0
1411
+ I
1412
+ 24
1413
+ I
1414
+ f
1415
+ x
1416
+ 105
1417
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1418
+ p
1419
+ 0
1420
+ x
1421
+ 6
1422
+ suffix
1423
+ x
1424
+ 7
1425
+ newline
1426
+ p
1427
+ 5
1428
+ I
1429
+ 0
1430
+ I
1431
+ 23
1432
+ I
1433
+ 4
1434
+ I
1435
+ 24
1436
+ I
1437
+ 12
1438
+ x
1439
+ 105
1440
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1441
+ p
1442
+ 1
1443
+ x
1444
+ 1
1445
+ _
1446
+ x
1447
+ 4
1448
+ each
1449
+ x
1450
+ 2
1451
+ @g
1452
+ s
1453
+ 4
1454
+ true
1455
+ x
1456
+ 2
1457
+ <<
1458
+ p
1459
+ 5
1460
+ I
1461
+ 0
1462
+ I
1463
+ 23
1464
+ I
1465
+ 9
1466
+ I
1467
+ 26
1468
+ I
1469
+ 12
1470
+ x
1471
+ 105
1472
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1473
+ p
1474
+ 0
1475
+ x
1476
+ 5
1477
+ block
1478
+ x
1479
+ 7
1480
+ newline
1481
+ p
1482
+ 5
1483
+ I
1484
+ 0
1485
+ I
1486
+ 22
1487
+ I
1488
+ 12
1489
+ I
1490
+ 28
1491
+ I
1492
+ 18
1493
+ x
1494
+ 105
1495
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1496
+ p
1497
+ 0
1498
+ x
1499
+ 9
1500
+ lookahead
1501
+ x
1502
+ 2
1503
+ @g
1504
+ x
1505
+ 11
1506
+ result_name
1507
+ x
1508
+ 2
1509
+ <<
1510
+ p
1511
+ 5
1512
+ I
1513
+ 0
1514
+ I
1515
+ 21
1516
+ I
1517
+ 8
1518
+ I
1519
+ 2a
1520
+ I
1521
+ 11
1522
+ x
1523
+ 105
1524
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1525
+ p
1526
+ 0
1527
+ x
1528
+ 4
1529
+ expr
1530
+ p
1531
+ 5
1532
+ I
1533
+ -1
1534
+ I
1535
+ 1f
1536
+ I
1537
+ e
1538
+ I
1539
+ 20
1540
+ I
1541
+ 18
1542
+ x
1543
+ 105
1544
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1545
+ p
1546
+ 2
1547
+ x
1548
+ 8
1549
+ sequence
1550
+ x
1551
+ 5
1552
+ scope
1553
+ x
1554
+ 12
1555
+ gen_disallow
1556
+ M
1557
+ 1
1558
+ n
1559
+ n
1560
+ x
1561
+ 12
1562
+ gen_disallow
1563
+ i
1564
+ 24
1565
+ 23
1566
+ 1
1567
+ 10
1568
+ 14
1569
+ 44
1570
+ 43
1571
+ 0
1572
+ 78
1573
+ 49
1574
+ 1
1575
+ 1
1576
+ 19
1577
+ 1
1578
+ 15
1579
+ 5
1580
+ 7
1581
+ 2
1582
+ 56
1583
+ 3
1584
+ 47
1585
+ 50
1586
+ 4
1587
+ 1
1588
+ 11
1589
+ I
1590
+ 5
1591
+ I
1592
+ 2
1593
+ I
1594
+ 1
1595
+ I
1596
+ 2
1597
+ n
1598
+ p
1599
+ 5
1600
+ x
1601
+ 4
1602
+ Hash
1603
+ x
1604
+ 16
1605
+ new_from_literal
1606
+ x
1607
+ 5
1608
+ block
1609
+ M
1610
+ 1
1611
+ p
1612
+ 2
1613
+ x
1614
+ 9
1615
+ for_block
1616
+ t
1617
+ n
1618
+ x
1619
+ 12
1620
+ gen_disallow
1621
+ i
1622
+ 17
1623
+ 5
1624
+ 56
1625
+ 0
1626
+ 47
1627
+ 50
1628
+ 1
1629
+ 0
1630
+ 15
1631
+ 39
1632
+ 2
1633
+ 5
1634
+ 48
1635
+ 3
1636
+ 49
1637
+ 4
1638
+ 1
1639
+ 11
1640
+ I
1641
+ 3
1642
+ I
1643
+ 0
1644
+ I
1645
+ 0
1646
+ I
1647
+ 0
1648
+ I
1649
+ -2
1650
+ p
1651
+ 5
1652
+ M
1653
+ 1
1654
+ p
1655
+ 2
1656
+ x
1657
+ 9
1658
+ for_block
1659
+ t
1660
+ n
1661
+ x
1662
+ 12
1663
+ gen_disallow
1664
+ i
1665
+ 24
1666
+ 39
1667
+ 0
1668
+ 5
1669
+ 48
1670
+ 1
1671
+ 47
1672
+ 101
1673
+ 2
1674
+ 7
1675
+ 3
1676
+ 63
1677
+ 2
1678
+ 56
1679
+ 4
1680
+ 50
1681
+ 5
1682
+ 1
1683
+ 15
1684
+ 39
1685
+ 0
1686
+ 49
1687
+ 6
1688
+ 0
1689
+ 11
1690
+ I
1691
+ 4
1692
+ I
1693
+ 0
1694
+ I
1695
+ 0
1696
+ I
1697
+ 0
1698
+ I
1699
+ -2
1700
+ p
1701
+ 7
1702
+ x
1703
+ 2
1704
+ @g
1705
+ x
1706
+ 11
1707
+ result_name
1708
+ x
1709
+ 4
1710
+ to_s
1711
+ s
1712
+ 9
1713
+ = !begin
1714
+ M
1715
+ 1
1716
+ p
1717
+ 2
1718
+ x
1719
+ 9
1720
+ for_block
1721
+ t
1722
+ n
1723
+ x
1724
+ 12
1725
+ gen_disallow
1726
+ i
1727
+ 14
1728
+ 39
1729
+ 0
1730
+ 21
1731
+ 3
1732
+ 0
1733
+ 7
1734
+ 1
1735
+ 64
1736
+ 56
1737
+ 2
1738
+ 50
1739
+ 3
1740
+ 2
1741
+ 11
1742
+ I
1743
+ 5
1744
+ I
1745
+ 0
1746
+ I
1747
+ 0
1748
+ I
1749
+ 0
1750
+ I
1751
+ -2
1752
+ p
1753
+ 4
1754
+ x
1755
+ 2
1756
+ @g
1757
+ s
1758
+ 3
1759
+ &&
1760
+ M
1761
+ 1
1762
+ p
1763
+ 2
1764
+ x
1765
+ 9
1766
+ for_block
1767
+ t
1768
+ n
1769
+ x
1770
+ 12
1771
+ gen_disallow
1772
+ i
1773
+ 18
1774
+ 57
1775
+ 19
1776
+ 0
1777
+ 15
1778
+ 5
1779
+ 20
1780
+ 0
1781
+ 21
1782
+ 4
1783
+ 1
1784
+ 47
1785
+ 49
1786
+ 0
1787
+ 2
1788
+ 22
1789
+ 4
1790
+ 1
1791
+ 11
1792
+ I
1793
+ 5
1794
+ I
1795
+ 1
1796
+ I
1797
+ 1
1798
+ I
1799
+ 1
1800
+ n
1801
+ p
1802
+ 1
1803
+ x
1804
+ 12
1805
+ gen_matching
1806
+ p
1807
+ 5
1808
+ I
1809
+ 0
1810
+ I
1811
+ 32
1812
+ I
1813
+ 4
1814
+ I
1815
+ 33
1816
+ I
1817
+ 12
1818
+ x
1819
+ 105
1820
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1821
+ p
1822
+ 1
1823
+ x
1824
+ 1
1825
+ _
1826
+ x
1827
+ 14
1828
+ intersperse_nl
1829
+ p
1830
+ 3
1831
+ I
1832
+ 0
1833
+ I
1834
+ 32
1835
+ I
1836
+ e
1837
+ x
1838
+ 105
1839
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1840
+ p
1841
+ 0
1842
+ x
1843
+ 5
1844
+ block
1845
+ x
1846
+ 7
1847
+ newline
1848
+ p
1849
+ 5
1850
+ I
1851
+ 0
1852
+ I
1853
+ 31
1854
+ I
1855
+ 12
1856
+ I
1857
+ 36
1858
+ I
1859
+ 18
1860
+ x
1861
+ 105
1862
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1863
+ p
1864
+ 0
1865
+ x
1866
+ 9
1867
+ lookahead
1868
+ x
1869
+ 2
1870
+ @g
1871
+ x
1872
+ 11
1873
+ result_name
1874
+ x
1875
+ 2
1876
+ <<
1877
+ p
1878
+ 5
1879
+ I
1880
+ 0
1881
+ I
1882
+ 30
1883
+ I
1884
+ 8
1885
+ I
1886
+ 38
1887
+ I
1888
+ 11
1889
+ x
1890
+ 105
1891
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1892
+ p
1893
+ 0
1894
+ x
1895
+ 4
1896
+ expr
1897
+ p
1898
+ 5
1899
+ I
1900
+ -1
1901
+ I
1902
+ 2e
1903
+ I
1904
+ e
1905
+ I
1906
+ 2f
1907
+ I
1908
+ 18
1909
+ x
1910
+ 105
1911
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
1912
+ p
1913
+ 2
1914
+ x
1915
+ 8
1916
+ sequence
1917
+ x
1918
+ 5
1919
+ scope
1920
+ x
1921
+ 19
1922
+ gen_dispatch_action
1923
+ M
1924
+ 1
1925
+ n
1926
+ n
1927
+ x
1928
+ 19
1929
+ gen_dispatch_action
1930
+ i
1931
+ 26
1932
+ 23
1933
+ 2
1934
+ 10
1935
+ 14
1936
+ 44
1937
+ 43
1938
+ 0
1939
+ 78
1940
+ 49
1941
+ 1
1942
+ 1
1943
+ 19
1944
+ 2
1945
+ 15
1946
+ 5
1947
+ 20
1948
+ 0
1949
+ 20
1950
+ 2
1951
+ 56
1952
+ 2
1953
+ 47
1954
+ 50
1955
+ 3
1956
+ 2
1957
+ 11
1958
+ I
1959
+ 7
1960
+ I
1961
+ 3
1962
+ I
1963
+ 2
1964
+ I
1965
+ 3
1966
+ n
1967
+ p
1968
+ 4
1969
+ x
1970
+ 4
1971
+ Hash
1972
+ x
1973
+ 16
1974
+ new_from_literal
1975
+ M
1976
+ 1
1977
+ p
1978
+ 2
1979
+ x
1980
+ 9
1981
+ for_block
1982
+ t
1983
+ n
1984
+ x
1985
+ 19
1986
+ gen_dispatch_action
1987
+ i
1988
+ 21
1989
+ 57
1990
+ 19
1991
+ 0
1992
+ 15
1993
+ 21
1994
+ 1
1995
+ 1
1996
+ 20
1997
+ 0
1998
+ 5
1999
+ 21
2000
+ 1
2001
+ 0
2002
+ 47
2003
+ 49
2004
+ 0
2005
+ 1
2006
+ 49
2007
+ 1
2008
+ 2
2009
+ 11
2010
+ I
2011
+ 6
2012
+ I
2013
+ 1
2014
+ I
2015
+ 1
2016
+ I
2017
+ 1
2018
+ n
2019
+ p
2020
+ 2
2021
+ x
2022
+ 17
2023
+ result_array_expr
2024
+ x
2025
+ 4
2026
+ bind
2027
+ p
2028
+ 5
2029
+ I
2030
+ 0
2031
+ I
2032
+ 3d
2033
+ I
2034
+ 4
2035
+ I
2036
+ 3e
2037
+ I
2038
+ 15
2039
+ x
2040
+ 105
2041
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2042
+ p
2043
+ 1
2044
+ x
2045
+ 9
2046
+ new_scope
2047
+ x
2048
+ 15
2049
+ gen_action_code
2050
+ p
2051
+ 5
2052
+ I
2053
+ -1
2054
+ I
2055
+ 3c
2056
+ I
2057
+ e
2058
+ I
2059
+ 3d
2060
+ I
2061
+ 1a
2062
+ x
2063
+ 105
2064
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2065
+ p
2066
+ 3
2067
+ x
2068
+ 8
2069
+ sequence
2070
+ x
2071
+ 4
2072
+ code
2073
+ x
2074
+ 5
2075
+ scope
2076
+ x
2077
+ 17
2078
+ gen_direct_action
2079
+ M
2080
+ 1
2081
+ n
2082
+ n
2083
+ x
2084
+ 17
2085
+ gen_direct_action
2086
+ i
2087
+ 26
2088
+ 23
2089
+ 2
2090
+ 10
2091
+ 14
2092
+ 44
2093
+ 43
2094
+ 0
2095
+ 78
2096
+ 49
2097
+ 1
2098
+ 1
2099
+ 19
2100
+ 2
2101
+ 15
2102
+ 5
2103
+ 20
2104
+ 0
2105
+ 20
2106
+ 2
2107
+ 56
2108
+ 2
2109
+ 47
2110
+ 50
2111
+ 3
2112
+ 2
2113
+ 11
2114
+ I
2115
+ 7
2116
+ I
2117
+ 3
2118
+ I
2119
+ 2
2120
+ I
2121
+ 3
2122
+ n
2123
+ p
2124
+ 4
2125
+ x
2126
+ 4
2127
+ Hash
2128
+ x
2129
+ 16
2130
+ new_from_literal
2131
+ M
2132
+ 1
2133
+ p
2134
+ 2
2135
+ x
2136
+ 9
2137
+ for_block
2138
+ t
2139
+ n
2140
+ x
2141
+ 17
2142
+ gen_direct_action
2143
+ i
2144
+ 24
2145
+ 57
2146
+ 19
2147
+ 0
2148
+ 15
2149
+ 7
2150
+ 0
2151
+ 21
2152
+ 1
2153
+ 1
2154
+ 20
2155
+ 0
2156
+ 39
2157
+ 1
2158
+ 49
2159
+ 2
2160
+ 2
2161
+ 47
2162
+ 101
2163
+ 3
2164
+ 7
2165
+ 4
2166
+ 63
2167
+ 3
2168
+ 11
2169
+ I
2170
+ 6
2171
+ I
2172
+ 1
2173
+ I
2174
+ 1
2175
+ I
2176
+ 1
2177
+ n
2178
+ p
2179
+ 5
2180
+ s
2181
+ 1
2182
+ (
2183
+ x
2184
+ 14
2185
+ @capture_names
2186
+ x
2187
+ 4
2188
+ bind
2189
+ x
2190
+ 4
2191
+ to_s
2192
+ s
2193
+ 1
2194
+ )
2195
+ p
2196
+ 5
2197
+ I
2198
+ 0
2199
+ I
2200
+ 43
2201
+ I
2202
+ 4
2203
+ I
2204
+ 44
2205
+ I
2206
+ 18
2207
+ x
2208
+ 105
2209
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2210
+ p
2211
+ 1
2212
+ x
2213
+ 9
2214
+ new_scope
2215
+ x
2216
+ 15
2217
+ gen_action_code
2218
+ p
2219
+ 5
2220
+ I
2221
+ -1
2222
+ I
2223
+ 42
2224
+ I
2225
+ e
2226
+ I
2227
+ 43
2228
+ I
2229
+ 1a
2230
+ x
2231
+ 105
2232
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2233
+ p
2234
+ 3
2235
+ x
2236
+ 8
2237
+ sequence
2238
+ x
2239
+ 4
2240
+ code
2241
+ x
2242
+ 5
2243
+ scope
2244
+ x
2245
+ 9
2246
+ gen_token
2247
+ M
2248
+ 1
2249
+ n
2250
+ n
2251
+ x
2252
+ 9
2253
+ gen_token
2254
+ i
2255
+ 22
2256
+ 23
2257
+ 1
2258
+ 10
2259
+ 14
2260
+ 44
2261
+ 43
2262
+ 0
2263
+ 78
2264
+ 49
2265
+ 1
2266
+ 1
2267
+ 19
2268
+ 1
2269
+ 15
2270
+ 5
2271
+ 56
2272
+ 2
2273
+ 47
2274
+ 50
2275
+ 3
2276
+ 0
2277
+ 11
2278
+ I
2279
+ 4
2280
+ I
2281
+ 2
2282
+ I
2283
+ 1
2284
+ I
2285
+ 2
2286
+ n
2287
+ p
2288
+ 4
2289
+ x
2290
+ 4
2291
+ Hash
2292
+ x
2293
+ 16
2294
+ new_from_literal
2295
+ M
2296
+ 1
2297
+ p
2298
+ 2
2299
+ x
2300
+ 9
2301
+ for_block
2302
+ t
2303
+ n
2304
+ x
2305
+ 9
2306
+ gen_token
2307
+ i
2308
+ 27
2309
+ 21
2310
+ 1
2311
+ 0
2312
+ 56
2313
+ 0
2314
+ 50
2315
+ 1
2316
+ 0
2317
+ 15
2318
+ 39
2319
+ 2
2320
+ 7
2321
+ 3
2322
+ 5
2323
+ 48
2324
+ 4
2325
+ 47
2326
+ 101
2327
+ 5
2328
+ 7
2329
+ 6
2330
+ 63
2331
+ 3
2332
+ 49
2333
+ 7
2334
+ 1
2335
+ 11
2336
+ I
2337
+ 5
2338
+ I
2339
+ 0
2340
+ I
2341
+ 0
2342
+ I
2343
+ 0
2344
+ I
2345
+ -2
2346
+ p
2347
+ 8
2348
+ M
2349
+ 1
2350
+ p
2351
+ 2
2352
+ x
2353
+ 9
2354
+ for_block
2355
+ t
2356
+ n
2357
+ x
2358
+ 9
2359
+ gen_token
2360
+ i
2361
+ 18
2362
+ 57
2363
+ 19
2364
+ 0
2365
+ 15
2366
+ 39
2367
+ 0
2368
+ 7
2369
+ 1
2370
+ 64
2371
+ 56
2372
+ 2
2373
+ 50
2374
+ 3
2375
+ 1
2376
+ 49
2377
+ 4
2378
+ 0
2379
+ 11
2380
+ I
2381
+ 5
2382
+ I
2383
+ 1
2384
+ I
2385
+ 1
2386
+ I
2387
+ 1
2388
+ n
2389
+ p
2390
+ 5
2391
+ x
2392
+ 2
2393
+ @g
2394
+ s
2395
+ 3
2396
+ &&
2397
+ M
2398
+ 1
2399
+ p
2400
+ 2
2401
+ x
2402
+ 9
2403
+ for_block
2404
+ t
2405
+ n
2406
+ x
2407
+ 9
2408
+ gen_token
2409
+ i
2410
+ 15
2411
+ 5
2412
+ 21
2413
+ 1
2414
+ 0
2415
+ 21
2416
+ 3
2417
+ 1
2418
+ 47
2419
+ 49
2420
+ 0
2421
+ 2
2422
+ 22
2423
+ 3
2424
+ 1
2425
+ 11
2426
+ I
2427
+ 4
2428
+ I
2429
+ 0
2430
+ I
2431
+ 0
2432
+ I
2433
+ 0
2434
+ I
2435
+ -2
2436
+ p
2437
+ 1
2438
+ x
2439
+ 12
2440
+ gen_matching
2441
+ p
2442
+ 3
2443
+ I
2444
+ 0
2445
+ I
2446
+ 4b
2447
+ I
2448
+ f
2449
+ x
2450
+ 105
2451
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2452
+ p
2453
+ 0
2454
+ x
2455
+ 6
2456
+ suffix
2457
+ x
2458
+ 7
2459
+ newline
2460
+ p
2461
+ 5
2462
+ I
2463
+ 0
2464
+ I
2465
+ 4a
2466
+ I
2467
+ 4
2468
+ I
2469
+ 4b
2470
+ I
2471
+ 12
2472
+ x
2473
+ 105
2474
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2475
+ p
2476
+ 1
2477
+ x
2478
+ 1
2479
+ _
2480
+ x
2481
+ 4
2482
+ each
2483
+ x
2484
+ 2
2485
+ @g
2486
+ s
2487
+ 16
2488
+ @scanner.string[
2489
+ x
2490
+ 14
2491
+ saved_pos_name
2492
+ x
2493
+ 4
2494
+ to_s
2495
+ s
2496
+ 18
2497
+ ...(@scanner.pos)]
2498
+ x
2499
+ 2
2500
+ <<
2501
+ p
2502
+ 5
2503
+ I
2504
+ 0
2505
+ I
2506
+ 4a
2507
+ I
2508
+ 9
2509
+ I
2510
+ 4d
2511
+ I
2512
+ 1b
2513
+ x
2514
+ 105
2515
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2516
+ p
2517
+ 0
2518
+ x
2519
+ 17
2520
+ with_backtracking
2521
+ p
2522
+ 5
2523
+ I
2524
+ -1
2525
+ I
2526
+ 48
2527
+ I
2528
+ e
2529
+ I
2530
+ 49
2531
+ I
2532
+ 16
2533
+ x
2534
+ 105
2535
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2536
+ p
2537
+ 2
2538
+ x
2539
+ 8
2540
+ sequence
2541
+ x
2542
+ 5
2543
+ scope
2544
+ x
2545
+ 8
2546
+ gen_skip
2547
+ M
2548
+ 1
2549
+ n
2550
+ n
2551
+ x
2552
+ 8
2553
+ gen_skip
2554
+ i
2555
+ 22
2556
+ 23
2557
+ 1
2558
+ 10
2559
+ 14
2560
+ 44
2561
+ 43
2562
+ 0
2563
+ 78
2564
+ 49
2565
+ 1
2566
+ 1
2567
+ 19
2568
+ 1
2569
+ 15
2570
+ 5
2571
+ 56
2572
+ 2
2573
+ 47
2574
+ 50
2575
+ 3
2576
+ 0
2577
+ 11
2578
+ I
2579
+ 4
2580
+ I
2581
+ 2
2582
+ I
2583
+ 1
2584
+ I
2585
+ 2
2586
+ n
2587
+ p
2588
+ 4
2589
+ x
2590
+ 4
2591
+ Hash
2592
+ x
2593
+ 16
2594
+ new_from_literal
2595
+ M
2596
+ 1
2597
+ p
2598
+ 2
2599
+ x
2600
+ 9
2601
+ for_block
2602
+ t
2603
+ n
2604
+ x
2605
+ 8
2606
+ gen_skip
2607
+ i
2608
+ 18
2609
+ 21
2610
+ 1
2611
+ 0
2612
+ 56
2613
+ 0
2614
+ 50
2615
+ 1
2616
+ 0
2617
+ 15
2618
+ 39
2619
+ 2
2620
+ 7
2621
+ 3
2622
+ 64
2623
+ 49
2624
+ 4
2625
+ 1
2626
+ 11
2627
+ I
2628
+ 3
2629
+ I
2630
+ 0
2631
+ I
2632
+ 0
2633
+ I
2634
+ 0
2635
+ I
2636
+ -2
2637
+ p
2638
+ 5
2639
+ M
2640
+ 1
2641
+ p
2642
+ 2
2643
+ x
2644
+ 9
2645
+ for_block
2646
+ t
2647
+ n
2648
+ x
2649
+ 8
2650
+ gen_skip
2651
+ i
2652
+ 18
2653
+ 57
2654
+ 19
2655
+ 0
2656
+ 15
2657
+ 39
2658
+ 0
2659
+ 7
2660
+ 1
2661
+ 64
2662
+ 56
2663
+ 2
2664
+ 50
2665
+ 3
2666
+ 1
2667
+ 49
2668
+ 4
2669
+ 0
2670
+ 11
2671
+ I
2672
+ 5
2673
+ I
2674
+ 1
2675
+ I
2676
+ 1
2677
+ I
2678
+ 1
2679
+ n
2680
+ p
2681
+ 5
2682
+ x
2683
+ 2
2684
+ @g
2685
+ s
2686
+ 3
2687
+ &&
2688
+ M
2689
+ 1
2690
+ p
2691
+ 2
2692
+ x
2693
+ 9
2694
+ for_block
2695
+ t
2696
+ n
2697
+ x
2698
+ 8
2699
+ gen_skip
2700
+ i
2701
+ 15
2702
+ 5
2703
+ 21
2704
+ 1
2705
+ 0
2706
+ 21
2707
+ 3
2708
+ 1
2709
+ 47
2710
+ 49
2711
+ 0
2712
+ 2
2713
+ 22
2714
+ 3
2715
+ 1
2716
+ 11
2717
+ I
2718
+ 4
2719
+ I
2720
+ 0
2721
+ I
2722
+ 0
2723
+ I
2724
+ 0
2725
+ I
2726
+ -2
2727
+ p
2728
+ 1
2729
+ x
2730
+ 12
2731
+ gen_matching
2732
+ p
2733
+ 3
2734
+ I
2735
+ 0
2736
+ I
2737
+ 54
2738
+ I
2739
+ f
2740
+ x
2741
+ 105
2742
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2743
+ p
2744
+ 0
2745
+ x
2746
+ 6
2747
+ suffix
2748
+ x
2749
+ 7
2750
+ newline
2751
+ p
2752
+ 5
2753
+ I
2754
+ 0
2755
+ I
2756
+ 53
2757
+ I
2758
+ 4
2759
+ I
2760
+ 54
2761
+ I
2762
+ 12
2763
+ x
2764
+ 105
2765
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2766
+ p
2767
+ 1
2768
+ x
2769
+ 1
2770
+ _
2771
+ x
2772
+ 4
2773
+ each
2774
+ x
2775
+ 2
2776
+ @g
2777
+ s
2778
+ 4
2779
+ true
2780
+ x
2781
+ 2
2782
+ <<
2783
+ p
2784
+ 5
2785
+ I
2786
+ 0
2787
+ I
2788
+ 53
2789
+ I
2790
+ 9
2791
+ I
2792
+ 56
2793
+ I
2794
+ 12
2795
+ x
2796
+ 105
2797
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2798
+ p
2799
+ 0
2800
+ x
2801
+ 17
2802
+ with_backtracking
2803
+ p
2804
+ 5
2805
+ I
2806
+ -1
2807
+ I
2808
+ 51
2809
+ I
2810
+ e
2811
+ I
2812
+ 52
2813
+ I
2814
+ 16
2815
+ x
2816
+ 105
2817
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
2818
+ p
2819
+ 2
2820
+ x
2821
+ 8
2822
+ sequence
2823
+ x
2824
+ 5
2825
+ scope
2826
+ x
2827
+ 7
2828
+ private
2829
+ x
2830
+ 12
2831
+ gen_matching
2832
+ M
2833
+ 1
2834
+ n
2835
+ n
2836
+ x
2837
+ 12
2838
+ gen_matching
2839
+ i
2840
+ 80
2841
+ 20
2842
+ 0
2843
+ 49
2844
+ 0
2845
+ 0
2846
+ 9
2847
+ 31
2848
+ 39
2849
+ 1
2850
+ 7
2851
+ 2
2852
+ 5
2853
+ 48
2854
+ 3
2855
+ 47
2856
+ 101
2857
+ 4
2858
+ 7
2859
+ 5
2860
+ 63
2861
+ 3
2862
+ 7
2863
+ 6
2864
+ 64
2865
+ 56
2866
+ 7
2867
+ 50
2868
+ 8
2869
+ 2
2870
+ 8
2871
+ 42
2872
+ 5
2873
+ 20
2874
+ 0
2875
+ 7
2876
+ 9
2877
+ 20
2878
+ 1
2879
+ 47
2880
+ 49
2881
+ 10
2882
+ 3
2883
+ 15
2884
+ 20
2885
+ 0
2886
+ 49
2887
+ 0
2888
+ 0
2889
+ 9
2890
+ 77
2891
+ 20
2892
+ 1
2893
+ 44
2894
+ 43
2895
+ 11
2896
+ 79
2897
+ 49
2898
+ 12
2899
+ 1
2900
+ 13
2901
+ 20
2902
+ 0
2903
+ 49
2904
+ 13
2905
+ 0
2906
+ 5
2907
+ 48
2908
+ 14
2909
+ 49
2910
+ 15
2911
+ 2
2912
+ 15
2913
+ 49
2914
+ 16
2915
+ 1
2916
+ 8
2917
+ 79
2918
+ 20
2919
+ 1
2920
+ 11
2921
+ I
2922
+ 7
2923
+ I
2924
+ 2
2925
+ I
2926
+ 2
2927
+ I
2928
+ 2
2929
+ n
2930
+ p
2931
+ 17
2932
+ x
2933
+ 8
2934
+ labeled?
2935
+ x
2936
+ 2
2937
+ @g
2938
+ s
2939
+ 1
2940
+ (
2941
+ x
2942
+ 12
2943
+ capture_name
2944
+ x
2945
+ 4
2946
+ to_s
2947
+ s
2948
+ 3
2949
+ =
2950
+ s
2951
+ 1
2952
+ )
2953
+ M
2954
+ 1
2955
+ p
2956
+ 2
2957
+ x
2958
+ 9
2959
+ for_block
2960
+ t
2961
+ n
2962
+ x
2963
+ 12
2964
+ gen_matching
2965
+ i
2966
+ 14
2967
+ 5
2968
+ 21
2969
+ 1
2970
+ 0
2971
+ 7
2972
+ 0
2973
+ 21
2974
+ 1
2975
+ 1
2976
+ 47
2977
+ 49
2978
+ 1
2979
+ 3
2980
+ 11
2981
+ I
2982
+ 5
2983
+ I
2984
+ 0
2985
+ I
2986
+ 0
2987
+ I
2988
+ 0
2989
+ I
2990
+ -2
2991
+ p
2992
+ 2
2993
+ x
2994
+ 5
2995
+ basic
2996
+ x
2997
+ 10
2998
+ gen_nested
2999
+ p
3000
+ 3
3001
+ I
3002
+ 0
3003
+ I
3004
+ 5e
3005
+ I
3006
+ e
3007
+ x
3008
+ 105
3009
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3010
+ p
3011
+ 0
3012
+ x
3013
+ 8
3014
+ surround
3015
+ x
3016
+ 17
3017
+ intermediate_skip
3018
+ x
3019
+ 10
3020
+ gen_nested
3021
+ x
3022
+ 4
3023
+ Hash
3024
+ x
3025
+ 16
3026
+ new_from_literal
3027
+ x
3028
+ 5
3029
+ label
3030
+ x
3031
+ 17
3032
+ last_capture_name
3033
+ x
3034
+ 3
3035
+ []=
3036
+ x
3037
+ 5
3038
+ merge
3039
+ p
3040
+ 11
3041
+ I
3042
+ -1
3043
+ I
3044
+ 5c
3045
+ I
3046
+ 0
3047
+ I
3048
+ 5d
3049
+ I
3050
+ 7
3051
+ I
3052
+ 5e
3053
+ I
3054
+ 1f
3055
+ I
3056
+ 60
3057
+ I
3058
+ 2b
3059
+ I
3060
+ 62
3061
+ I
3062
+ 50
3063
+ x
3064
+ 105
3065
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3066
+ p
3067
+ 2
3068
+ x
3069
+ 5
3070
+ child
3071
+ x
3072
+ 5
3073
+ scope
3074
+ x
3075
+ 13
3076
+ gen_capturing
3077
+ M
3078
+ 1
3079
+ n
3080
+ n
3081
+ x
3082
+ 13
3083
+ gen_capturing
3084
+ i
3085
+ 87
3086
+ 20
3087
+ 0
3088
+ 49
3089
+ 0
3090
+ 0
3091
+ 9
3092
+ 38
3093
+ 94
3094
+ 9
3095
+ 14
3096
+ 60
3097
+ 0
3098
+ 8
3099
+ 36
3100
+ 39
3101
+ 1
3102
+ 7
3103
+ 2
3104
+ 5
3105
+ 48
3106
+ 3
3107
+ 47
3108
+ 101
3109
+ 4
3110
+ 7
3111
+ 5
3112
+ 63
3113
+ 3
3114
+ 7
3115
+ 6
3116
+ 64
3117
+ 56
3118
+ 7
3119
+ 50
3120
+ 8
3121
+ 2
3122
+ 8
3123
+ 49
3124
+ 5
3125
+ 20
3126
+ 0
3127
+ 7
3128
+ 9
3129
+ 20
3130
+ 1
3131
+ 47
3132
+ 49
3133
+ 10
3134
+ 3
3135
+ 15
3136
+ 20
3137
+ 0
3138
+ 49
3139
+ 11
3140
+ 0
3141
+ 9
3142
+ 84
3143
+ 20
3144
+ 1
3145
+ 44
3146
+ 43
3147
+ 12
3148
+ 79
3149
+ 49
3150
+ 13
3151
+ 1
3152
+ 13
3153
+ 20
3154
+ 0
3155
+ 49
3156
+ 14
3157
+ 0
3158
+ 5
3159
+ 48
3160
+ 15
3161
+ 49
3162
+ 16
3163
+ 2
3164
+ 15
3165
+ 49
3166
+ 17
3167
+ 1
3168
+ 8
3169
+ 86
3170
+ 20
3171
+ 1
3172
+ 11
3173
+ I
3174
+ 7
3175
+ I
3176
+ 2
3177
+ I
3178
+ 2
3179
+ I
3180
+ 2
3181
+ n
3182
+ p
3183
+ 18
3184
+ x
3185
+ 10
3186
+ capturing?
3187
+ x
3188
+ 2
3189
+ @g
3190
+ s
3191
+ 1
3192
+ (
3193
+ x
3194
+ 12
3195
+ capture_name
3196
+ x
3197
+ 4
3198
+ to_s
3199
+ s
3200
+ 3
3201
+ =
3202
+ s
3203
+ 1
3204
+ )
3205
+ M
3206
+ 1
3207
+ p
3208
+ 2
3209
+ x
3210
+ 9
3211
+ for_block
3212
+ t
3213
+ n
3214
+ x
3215
+ 13
3216
+ gen_capturing
3217
+ i
3218
+ 14
3219
+ 5
3220
+ 21
3221
+ 1
3222
+ 0
3223
+ 7
3224
+ 0
3225
+ 21
3226
+ 1
3227
+ 1
3228
+ 47
3229
+ 49
3230
+ 1
3231
+ 3
3232
+ 11
3233
+ I
3234
+ 5
3235
+ I
3236
+ 0
3237
+ I
3238
+ 0
3239
+ I
3240
+ 0
3241
+ I
3242
+ -2
3243
+ p
3244
+ 2
3245
+ x
3246
+ 5
3247
+ basic
3248
+ x
3249
+ 10
3250
+ gen_nested
3251
+ p
3252
+ 3
3253
+ I
3254
+ 0
3255
+ I
3256
+ 6a
3257
+ I
3258
+ e
3259
+ x
3260
+ 105
3261
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3262
+ p
3263
+ 0
3264
+ x
3265
+ 8
3266
+ surround
3267
+ x
3268
+ 12
3269
+ intermediate
3270
+ x
3271
+ 10
3272
+ gen_nested
3273
+ x
3274
+ 8
3275
+ labeled?
3276
+ x
3277
+ 4
3278
+ Hash
3279
+ x
3280
+ 16
3281
+ new_from_literal
3282
+ x
3283
+ 5
3284
+ label
3285
+ x
3286
+ 17
3287
+ last_capture_name
3288
+ x
3289
+ 3
3290
+ []=
3291
+ x
3292
+ 5
3293
+ merge
3294
+ p
3295
+ 15
3296
+ I
3297
+ -1
3298
+ I
3299
+ 65
3300
+ I
3301
+ 0
3302
+ I
3303
+ 66
3304
+ I
3305
+ 7
3306
+ I
3307
+ 67
3308
+ I
3309
+ a
3310
+ I
3311
+ 68
3312
+ I
3313
+ e
3314
+ I
3315
+ 6a
3316
+ I
3317
+ 26
3318
+ I
3319
+ 6d
3320
+ I
3321
+ 32
3322
+ I
3323
+ 6f
3324
+ I
3325
+ 57
3326
+ x
3327
+ 105
3328
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3329
+ p
3330
+ 2
3331
+ x
3332
+ 5
3333
+ child
3334
+ x
3335
+ 5
3336
+ scope
3337
+ x
3338
+ 17
3339
+ with_backtracking
3340
+ M
3341
+ 1
3342
+ n
3343
+ n
3344
+ x
3345
+ 17
3346
+ with_backtracking
3347
+ i
3348
+ 10
3349
+ 5
3350
+ 7
3351
+ 0
3352
+ 56
3353
+ 1
3354
+ 47
3355
+ 50
3356
+ 2
3357
+ 1
3358
+ 11
3359
+ I
3360
+ 3
3361
+ I
3362
+ 0
3363
+ I
3364
+ 0
3365
+ I
3366
+ 0
3367
+ n
3368
+ p
3369
+ 3
3370
+ x
3371
+ 5
3372
+ block
3373
+ M
3374
+ 1
3375
+ p
3376
+ 2
3377
+ x
3378
+ 9
3379
+ for_block
3380
+ t
3381
+ n
3382
+ x
3383
+ 17
3384
+ with_backtracking
3385
+ i
3386
+ 41
3387
+ 39
3388
+ 0
3389
+ 5
3390
+ 48
3391
+ 1
3392
+ 47
3393
+ 101
3394
+ 2
3395
+ 7
3396
+ 3
3397
+ 63
3398
+ 2
3399
+ 49
3400
+ 4
3401
+ 1
3402
+ 49
3403
+ 5
3404
+ 0
3405
+ 15
3406
+ 39
3407
+ 0
3408
+ 7
3409
+ 6
3410
+ 64
3411
+ 56
3412
+ 7
3413
+ 50
3414
+ 8
3415
+ 1
3416
+ 15
3417
+ 39
3418
+ 0
3419
+ 7
3420
+ 9
3421
+ 64
3422
+ 56
3423
+ 10
3424
+ 50
3425
+ 8
3426
+ 1
3427
+ 11
3428
+ I
3429
+ 4
3430
+ I
3431
+ 0
3432
+ I
3433
+ 0
3434
+ I
3435
+ 0
3436
+ I
3437
+ -2
3438
+ p
3439
+ 11
3440
+ x
3441
+ 2
3442
+ @g
3443
+ x
3444
+ 14
3445
+ saved_pos_name
3446
+ x
3447
+ 4
3448
+ to_s
3449
+ s
3450
+ 15
3451
+ = @scanner.pos
3452
+ x
3453
+ 2
3454
+ <<
3455
+ x
3456
+ 7
3457
+ newline
3458
+ s
3459
+ 5
3460
+ begin
3461
+ M
3462
+ 1
3463
+ p
3464
+ 2
3465
+ x
3466
+ 9
3467
+ for_block
3468
+ t
3469
+ n
3470
+ x
3471
+ 17
3472
+ with_backtracking
3473
+ i
3474
+ 3
3475
+ 60
3476
+ 0
3477
+ 11
3478
+ I
3479
+ 2
3480
+ I
3481
+ 0
3482
+ I
3483
+ 0
3484
+ I
3485
+ 0
3486
+ I
3487
+ -2
3488
+ p
3489
+ 0
3490
+ p
3491
+ 3
3492
+ I
3493
+ 0
3494
+ I
3495
+ 76
3496
+ I
3497
+ 3
3498
+ x
3499
+ 105
3500
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3501
+ p
3502
+ 0
3503
+ x
3504
+ 5
3505
+ block
3506
+ s
3507
+ 9
3508
+ || begin
3509
+ M
3510
+ 1
3511
+ p
3512
+ 2
3513
+ x
3514
+ 9
3515
+ for_block
3516
+ t
3517
+ n
3518
+ x
3519
+ 17
3520
+ with_backtracking
3521
+ i
3522
+ 25
3523
+ 39
3524
+ 0
3525
+ 7
3526
+ 1
3527
+ 5
3528
+ 48
3529
+ 2
3530
+ 47
3531
+ 101
3532
+ 3
3533
+ 63
3534
+ 2
3535
+ 49
3536
+ 4
3537
+ 1
3538
+ 49
3539
+ 5
3540
+ 0
3541
+ 7
3542
+ 6
3543
+ 64
3544
+ 49
3545
+ 4
3546
+ 1
3547
+ 11
3548
+ I
3549
+ 4
3550
+ I
3551
+ 0
3552
+ I
3553
+ 0
3554
+ I
3555
+ 0
3556
+ I
3557
+ -2
3558
+ p
3559
+ 7
3560
+ x
3561
+ 2
3562
+ @g
3563
+ s
3564
+ 15
3565
+ @scanner.pos =
3566
+ x
3567
+ 14
3568
+ saved_pos_name
3569
+ x
3570
+ 4
3571
+ to_s
3572
+ x
3573
+ 2
3574
+ <<
3575
+ x
3576
+ 7
3577
+ newline
3578
+ s
3579
+ 5
3580
+ false
3581
+ p
3582
+ 3
3583
+ I
3584
+ 0
3585
+ I
3586
+ 79
3587
+ I
3588
+ 19
3589
+ x
3590
+ 105
3591
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3592
+ p
3593
+ 0
3594
+ p
3595
+ 7
3596
+ I
3597
+ 0
3598
+ I
3599
+ 74
3600
+ I
3601
+ 13
3602
+ I
3603
+ 75
3604
+ I
3605
+ 1e
3606
+ I
3607
+ 78
3608
+ I
3609
+ 29
3610
+ x
3611
+ 105
3612
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3613
+ p
3614
+ 0
3615
+ x
3616
+ 4
3617
+ expr
3618
+ p
3619
+ 5
3620
+ I
3621
+ -1
3622
+ I
3623
+ 72
3624
+ I
3625
+ 0
3626
+ I
3627
+ 73
3628
+ I
3629
+ a
3630
+ x
3631
+ 105
3632
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3633
+ p
3634
+ 0
3635
+ x
3636
+ 11
3637
+ result_expr
3638
+ M
3639
+ 1
3640
+ n
3641
+ n
3642
+ x
3643
+ 11
3644
+ result_expr
3645
+ i
3646
+ 45
3647
+ 39
3648
+ 0
3649
+ 49
3650
+ 1
3651
+ 0
3652
+ 13
3653
+ 78
3654
+ 12
3655
+ 49
3656
+ 2
3657
+ 1
3658
+ 9
3659
+ 19
3660
+ 15
3661
+ 7
3662
+ 3
3663
+ 64
3664
+ 8
3665
+ 44
3666
+ 13
3667
+ 79
3668
+ 12
3669
+ 49
3670
+ 2
3671
+ 1
3672
+ 9
3673
+ 36
3674
+ 15
3675
+ 39
3676
+ 0
3677
+ 78
3678
+ 49
3679
+ 4
3680
+ 1
3681
+ 8
3682
+ 44
3683
+ 15
3684
+ 5
3685
+ 20
3686
+ 0
3687
+ 47
3688
+ 49
3689
+ 5
3690
+ 1
3691
+ 11
3692
+ I
3693
+ 4
3694
+ I
3695
+ 1
3696
+ I
3697
+ 1
3698
+ I
3699
+ 1
3700
+ n
3701
+ p
3702
+ 6
3703
+ x
3704
+ 14
3705
+ @capture_names
3706
+ x
3707
+ 4
3708
+ size
3709
+ x
3710
+ 3
3711
+ ===
3712
+ s
3713
+ 4
3714
+ true
3715
+ x
3716
+ 2
3717
+ []
3718
+ x
3719
+ 17
3720
+ result_array_expr
3721
+ p
3722
+ 11
3723
+ I
3724
+ -1
3725
+ I
3726
+ 7e
3727
+ I
3728
+ 0
3729
+ I
3730
+ 7f
3731
+ I
3732
+ 5
3733
+ I
3734
+ 80
3735
+ I
3736
+ 13
3737
+ I
3738
+ 81
3739
+ I
3740
+ 25
3741
+ I
3742
+ 82
3743
+ I
3744
+ 2d
3745
+ x
3746
+ 105
3747
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3748
+ p
3749
+ 1
3750
+ x
3751
+ 8
3752
+ sequence
3753
+ x
3754
+ 17
3755
+ result_array_expr
3756
+ M
3757
+ 1
3758
+ n
3759
+ n
3760
+ x
3761
+ 17
3762
+ result_array_expr
3763
+ i
3764
+ 27
3765
+ 20
3766
+ 0
3767
+ 56
3768
+ 0
3769
+ 50
3770
+ 1
3771
+ 0
3772
+ 9
3773
+ 23
3774
+ 7
3775
+ 2
3776
+ 5
3777
+ 48
3778
+ 3
3779
+ 47
3780
+ 101
3781
+ 4
3782
+ 7
3783
+ 5
3784
+ 63
3785
+ 3
3786
+ 8
3787
+ 26
3788
+ 5
3789
+ 48
3790
+ 3
3791
+ 11
3792
+ I
3793
+ 4
3794
+ I
3795
+ 1
3796
+ I
3797
+ 1
3798
+ I
3799
+ 1
3800
+ n
3801
+ p
3802
+ 6
3803
+ M
3804
+ 1
3805
+ p
3806
+ 2
3807
+ x
3808
+ 9
3809
+ for_block
3810
+ t
3811
+ n
3812
+ x
3813
+ 17
3814
+ result_array_expr
3815
+ i
3816
+ 12
3817
+ 57
3818
+ 19
3819
+ 0
3820
+ 15
3821
+ 45
3822
+ 0
3823
+ 1
3824
+ 20
3825
+ 0
3826
+ 86
3827
+ 2
3828
+ 11
3829
+ I
3830
+ 4
3831
+ I
3832
+ 1
3833
+ I
3834
+ 1
3835
+ I
3836
+ 1
3837
+ n
3838
+ p
3839
+ 3
3840
+ x
3841
+ 5
3842
+ Apply
3843
+ n
3844
+ x
3845
+ 3
3846
+ ===
3847
+ p
3848
+ 3
3849
+ I
3850
+ 0
3851
+ I
3852
+ 87
3853
+ I
3854
+ c
3855
+ x
3856
+ 105
3857
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3858
+ p
3859
+ 1
3860
+ x
3861
+ 1
3862
+ _
3863
+ x
3864
+ 4
3865
+ any?
3866
+ s
3867
+ 16
3868
+ select_captures(
3869
+ x
3870
+ 18
3871
+ capture_names_expr
3872
+ x
3873
+ 4
3874
+ to_s
3875
+ s
3876
+ 1
3877
+ )
3878
+ p
3879
+ 9
3880
+ I
3881
+ -1
3882
+ I
3883
+ 86
3884
+ I
3885
+ 0
3886
+ I
3887
+ 87
3888
+ I
3889
+ 9
3890
+ I
3891
+ 88
3892
+ I
3893
+ 17
3894
+ I
3895
+ 8a
3896
+ I
3897
+ 1b
3898
+ x
3899
+ 105
3900
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
3901
+ p
3902
+ 1
3903
+ x
3904
+ 8
3905
+ sequence
3906
+ x
3907
+ 15
3908
+ gen_action_code
3909
+ M
3910
+ 1
3911
+ n
3912
+ n
3913
+ x
3914
+ 15
3915
+ gen_action_code
3916
+ i
3917
+ 22
3918
+ 23
3919
+ 1
3920
+ 10
3921
+ 14
3922
+ 44
3923
+ 43
3924
+ 0
3925
+ 78
3926
+ 49
3927
+ 1
3928
+ 1
3929
+ 19
3930
+ 1
3931
+ 15
3932
+ 5
3933
+ 56
3934
+ 2
3935
+ 47
3936
+ 50
3937
+ 3
3938
+ 0
3939
+ 11
3940
+ I
3941
+ 4
3942
+ I
3943
+ 2
3944
+ I
3945
+ 1
3946
+ I
3947
+ 2
3948
+ n
3949
+ p
3950
+ 4
3951
+ x
3952
+ 4
3953
+ Hash
3954
+ x
3955
+ 16
3956
+ new_from_literal
3957
+ M
3958
+ 1
3959
+ p
3960
+ 2
3961
+ x
3962
+ 9
3963
+ for_block
3964
+ t
3965
+ n
3966
+ x
3967
+ 15
3968
+ gen_action_code
3969
+ i
3970
+ 20
3971
+ 21
3972
+ 1
3973
+ 0
3974
+ 56
3975
+ 0
3976
+ 50
3977
+ 1
3978
+ 0
3979
+ 15
3980
+ 39
3981
+ 2
3982
+ 21
3983
+ 1
3984
+ 1
3985
+ 60
3986
+ 1
3987
+ 49
3988
+ 3
3989
+ 1
3990
+ 11
3991
+ I
3992
+ 4
3993
+ I
3994
+ 1
3995
+ I
3996
+ 0
3997
+ I
3998
+ 0
3999
+ I
4000
+ -2
4001
+ p
4002
+ 4
4003
+ M
4004
+ 1
4005
+ p
4006
+ 2
4007
+ x
4008
+ 9
4009
+ for_block
4010
+ t
4011
+ n
4012
+ x
4013
+ 15
4014
+ gen_action_code
4015
+ i
4016
+ 19
4017
+ 57
4018
+ 22
4019
+ 1
4020
+ 0
4021
+ 15
4022
+ 39
4023
+ 0
4024
+ 7
4025
+ 1
4026
+ 64
4027
+ 56
4028
+ 2
4029
+ 50
4030
+ 3
4031
+ 1
4032
+ 49
4033
+ 4
4034
+ 0
4035
+ 11
4036
+ I
4037
+ 4
4038
+ I
4039
+ 0
4040
+ I
4041
+ 1
4042
+ I
4043
+ 1
4044
+ n
4045
+ p
4046
+ 5
4047
+ x
4048
+ 2
4049
+ @g
4050
+ s
4051
+ 3
4052
+ &&
4053
+ M
4054
+ 1
4055
+ p
4056
+ 2
4057
+ x
4058
+ 9
4059
+ for_block
4060
+ t
4061
+ n
4062
+ x
4063
+ 15
4064
+ gen_action_code
4065
+ i
4066
+ 15
4067
+ 5
4068
+ 21
4069
+ 2
4070
+ 0
4071
+ 21
4072
+ 3
4073
+ 1
4074
+ 47
4075
+ 49
4076
+ 0
4077
+ 2
4078
+ 22
4079
+ 3
4080
+ 1
4081
+ 11
4082
+ I
4083
+ 4
4084
+ I
4085
+ 0
4086
+ I
4087
+ 0
4088
+ I
4089
+ 0
4090
+ I
4091
+ -2
4092
+ p
4093
+ 1
4094
+ x
4095
+ 13
4096
+ gen_capturing
4097
+ p
4098
+ 3
4099
+ I
4100
+ 0
4101
+ I
4102
+ 91
4103
+ I
4104
+ f
4105
+ x
4106
+ 105
4107
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4108
+ p
4109
+ 0
4110
+ x
4111
+ 6
4112
+ suffix
4113
+ x
4114
+ 7
4115
+ newline
4116
+ p
4117
+ 5
4118
+ I
4119
+ 0
4120
+ I
4121
+ 90
4122
+ I
4123
+ 5
4124
+ I
4125
+ 91
4126
+ I
4127
+ 13
4128
+ x
4129
+ 105
4130
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4131
+ p
4132
+ 0
4133
+ x
4134
+ 4
4135
+ each
4136
+ x
4137
+ 2
4138
+ @g
4139
+ x
4140
+ 2
4141
+ <<
4142
+ p
4143
+ 5
4144
+ I
4145
+ 0
4146
+ I
4147
+ 90
4148
+ I
4149
+ 9
4150
+ I
4151
+ 93
4152
+ I
4153
+ 14
4154
+ x
4155
+ 105
4156
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4157
+ p
4158
+ 1
4159
+ x
4160
+ 5
4161
+ child
4162
+ x
4163
+ 17
4164
+ with_backtracking
4165
+ p
4166
+ 5
4167
+ I
4168
+ -1
4169
+ I
4170
+ 8e
4171
+ I
4172
+ e
4173
+ I
4174
+ 8f
4175
+ I
4176
+ 16
4177
+ x
4178
+ 105
4179
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4180
+ p
4181
+ 2
4182
+ x
4183
+ 8
4184
+ sequence
4185
+ x
4186
+ 5
4187
+ scope
4188
+ x
4189
+ 18
4190
+ capture_names_expr
4191
+ M
4192
+ 1
4193
+ n
4194
+ n
4195
+ x
4196
+ 18
4197
+ capture_names_expr
4198
+ i
4199
+ 19
4200
+ 7
4201
+ 0
4202
+ 64
4203
+ 39
4204
+ 1
4205
+ 7
4206
+ 2
4207
+ 64
4208
+ 49
4209
+ 3
4210
+ 1
4211
+ 81
4212
+ 4
4213
+ 7
4214
+ 5
4215
+ 64
4216
+ 81
4217
+ 4
4218
+ 11
4219
+ I
4220
+ 3
4221
+ I
4222
+ 0
4223
+ I
4224
+ 0
4225
+ I
4226
+ 0
4227
+ n
4228
+ p
4229
+ 6
4230
+ s
4231
+ 1
4232
+ [
4233
+ x
4234
+ 14
4235
+ @capture_names
4236
+ s
4237
+ 2
4238
+ ,
4239
+ x
4240
+ 4
4241
+ join
4242
+ x
4243
+ 1
4244
+ +
4245
+ s
4246
+ 1
4247
+ ]
4248
+ p
4249
+ 5
4250
+ I
4251
+ -1
4252
+ I
4253
+ 97
4254
+ I
4255
+ 0
4256
+ I
4257
+ 98
4258
+ I
4259
+ 13
4260
+ x
4261
+ 105
4262
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4263
+ p
4264
+ 0
4265
+ x
4266
+ 12
4267
+ capture_name
4268
+ M
4269
+ 1
4270
+ n
4271
+ n
4272
+ x
4273
+ 12
4274
+ capture_name
4275
+ i
4276
+ 32
4277
+ 39
4278
+ 0
4279
+ 7
4280
+ 1
4281
+ 5
4282
+ 48
4283
+ 2
4284
+ 47
4285
+ 101
4286
+ 3
4287
+ 7
4288
+ 4
4289
+ 39
4290
+ 0
4291
+ 49
4292
+ 5
4293
+ 0
4294
+ 47
4295
+ 101
4296
+ 3
4297
+ 63
4298
+ 4
4299
+ 49
4300
+ 6
4301
+ 1
4302
+ 15
4303
+ 39
4304
+ 0
4305
+ 49
4306
+ 7
4307
+ 0
4308
+ 11
4309
+ I
4310
+ 5
4311
+ I
4312
+ 0
4313
+ I
4314
+ 0
4315
+ I
4316
+ 0
4317
+ n
4318
+ p
4319
+ 8
4320
+ x
4321
+ 14
4322
+ @capture_names
4323
+ s
4324
+ 1
4325
+ r
4326
+ x
4327
+ 14
4328
+ sequence_level
4329
+ x
4330
+ 4
4331
+ to_s
4332
+ s
4333
+ 1
4334
+ _
4335
+ x
4336
+ 4
4337
+ size
4338
+ x
4339
+ 2
4340
+ <<
4341
+ x
4342
+ 4
4343
+ last
4344
+ p
4345
+ 7
4346
+ I
4347
+ -1
4348
+ I
4349
+ 9b
4350
+ I
4351
+ 0
4352
+ I
4353
+ 9c
4354
+ I
4355
+ 1a
4356
+ I
4357
+ 9d
4358
+ I
4359
+ 20
4360
+ x
4361
+ 105
4362
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4363
+ p
4364
+ 0
4365
+ x
4366
+ 17
4367
+ last_capture_name
4368
+ M
4369
+ 1
4370
+ n
4371
+ n
4372
+ x
4373
+ 17
4374
+ last_capture_name
4375
+ i
4376
+ 6
4377
+ 39
4378
+ 0
4379
+ 49
4380
+ 1
4381
+ 0
4382
+ 11
4383
+ I
4384
+ 1
4385
+ I
4386
+ 0
4387
+ I
4388
+ 0
4389
+ I
4390
+ 0
4391
+ n
4392
+ p
4393
+ 2
4394
+ x
4395
+ 14
4396
+ @capture_names
4397
+ x
4398
+ 4
4399
+ last
4400
+ p
4401
+ 5
4402
+ I
4403
+ -1
4404
+ I
4405
+ a0
4406
+ I
4407
+ 0
4408
+ I
4409
+ a1
4410
+ I
4411
+ 6
4412
+ x
4413
+ 105
4414
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4415
+ p
4416
+ 0
4417
+ x
4418
+ 13
4419
+ capture_names
4420
+ x
4421
+ 11
4422
+ attr_reader
4423
+ x
4424
+ 14
4425
+ saved_pos_name
4426
+ M
4427
+ 1
4428
+ n
4429
+ n
4430
+ x
4431
+ 14
4432
+ saved_pos_name
4433
+ i
4434
+ 11
4435
+ 7
4436
+ 0
4437
+ 5
4438
+ 48
4439
+ 1
4440
+ 47
4441
+ 101
4442
+ 2
4443
+ 63
4444
+ 2
4445
+ 11
4446
+ I
4447
+ 2
4448
+ I
4449
+ 0
4450
+ I
4451
+ 0
4452
+ I
4453
+ 0
4454
+ n
4455
+ p
4456
+ 3
4457
+ s
4458
+ 1
4459
+ p
4460
+ x
4461
+ 14
4462
+ sequence_level
4463
+ x
4464
+ 4
4465
+ to_s
4466
+ p
4467
+ 5
4468
+ I
4469
+ -1
4470
+ I
4471
+ a6
4472
+ I
4473
+ 0
4474
+ I
4475
+ a7
4476
+ I
4477
+ b
4478
+ x
4479
+ 105
4480
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4481
+ p
4482
+ 0
4483
+ p
4484
+ 45
4485
+ I
4486
+ 2
4487
+ I
4488
+ 7
4489
+ I
4490
+ b
4491
+ I
4492
+ 9
4493
+ I
4494
+ 16
4495
+ I
4496
+ b
4497
+ I
4498
+ 24
4499
+ I
4500
+ 10
4501
+ I
4502
+ 32
4503
+ I
4504
+ 1f
4505
+ I
4506
+ 40
4507
+ I
4508
+ 2e
4509
+ I
4510
+ 4e
4511
+ I
4512
+ 3c
4513
+ I
4514
+ 5c
4515
+ I
4516
+ 42
4517
+ I
4518
+ 6a
4519
+ I
4520
+ 48
4521
+ I
4522
+ 78
4523
+ I
4524
+ 51
4525
+ I
4526
+ 86
4527
+ I
4528
+ 5a
4529
+ I
4530
+ 8a
4531
+ I
4532
+ 5c
4533
+ I
4534
+ 98
4535
+ I
4536
+ 65
4537
+ I
4538
+ a6
4539
+ I
4540
+ 72
4541
+ I
4542
+ b4
4543
+ I
4544
+ 7e
4545
+ I
4546
+ c2
4547
+ I
4548
+ 86
4549
+ I
4550
+ d0
4551
+ I
4552
+ 8e
4553
+ I
4554
+ de
4555
+ I
4556
+ 97
4557
+ I
4558
+ ec
4559
+ I
4560
+ 9b
4561
+ I
4562
+ fa
4563
+ I
4564
+ a0
4565
+ I
4566
+ 108
4567
+ I
4568
+ a4
4569
+ I
4570
+ 110
4571
+ I
4572
+ a6
4573
+ I
4574
+ 11e
4575
+ x
4576
+ 105
4577
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4578
+ p
4579
+ 0
4580
+ x
4581
+ 13
4582
+ attach_method
4583
+ x
4584
+ 23
4585
+ NestedSequenceGenerator
4586
+ n
4587
+ M
4588
+ 1
4589
+ n
4590
+ n
4591
+ x
4592
+ 23
4593
+ NestedSequenceGenerator
4594
+ i
4595
+ 11
4596
+ 5
4597
+ 66
4598
+ 5
4599
+ 45
4600
+ 0
4601
+ 1
4602
+ 47
4603
+ 49
4604
+ 2
4605
+ 1
4606
+ 11
4607
+ I
4608
+ 2
4609
+ I
4610
+ 0
4611
+ I
4612
+ 0
4613
+ I
4614
+ 0
4615
+ n
4616
+ p
4617
+ 3
4618
+ x
4619
+ 6
4620
+ Nested
4621
+ n
4622
+ x
4623
+ 7
4624
+ include
4625
+ p
4626
+ 3
4627
+ I
4628
+ 2
4629
+ I
4630
+ ae
4631
+ I
4632
+ b
4633
+ x
4634
+ 105
4635
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4636
+ p
4637
+ 0
4638
+ x
4639
+ 6
4640
+ nested
4641
+ M
4642
+ 1
4643
+ n
4644
+ n
4645
+ x
4646
+ 6
4647
+ nested
4648
+ i
4649
+ 11
4650
+ 45
4651
+ 0
4652
+ 1
4653
+ 20
4654
+ 0
4655
+ 36
4656
+ 1
4657
+ 51
4658
+ 2
4659
+ 0
4660
+ 11
4661
+ I
4662
+ 4
4663
+ I
4664
+ 1
4665
+ I
4666
+ 0
4667
+ I
4668
+ 0
4669
+ I
4670
+ 0
4671
+ p
4672
+ 3
4673
+ x
4674
+ 23
4675
+ NestedSequenceGenerator
4676
+ n
4677
+ x
4678
+ 3
4679
+ new
4680
+ p
4681
+ 5
4682
+ I
4683
+ -1
4684
+ I
4685
+ b1
4686
+ I
4687
+ 0
4688
+ I
4689
+ b2
4690
+ I
4691
+ b
4692
+ x
4693
+ 105
4694
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4695
+ p
4696
+ 1
4697
+ x
4698
+ 4
4699
+ args
4700
+ n
4701
+ x
4702
+ 25
4703
+ TopLevelSequenceGenerator
4704
+ n
4705
+ M
4706
+ 1
4707
+ n
4708
+ n
4709
+ x
4710
+ 25
4711
+ TopLevelSequenceGenerator
4712
+ i
4713
+ 11
4714
+ 5
4715
+ 66
4716
+ 5
4717
+ 45
4718
+ 0
4719
+ 1
4720
+ 47
4721
+ 49
4722
+ 2
4723
+ 1
4724
+ 11
4725
+ I
4726
+ 2
4727
+ I
4728
+ 0
4729
+ I
4730
+ 0
4731
+ I
4732
+ 0
4733
+ n
4734
+ p
4735
+ 3
4736
+ x
4737
+ 8
4738
+ TopLevel
4739
+ n
4740
+ x
4741
+ 7
4742
+ include
4743
+ p
4744
+ 3
4745
+ I
4746
+ 2
4747
+ I
4748
+ b7
4749
+ I
4750
+ b
4751
+ x
4752
+ 105
4753
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4754
+ p
4755
+ 0
4756
+ x
4757
+ 9
4758
+ top_level
4759
+ M
4760
+ 1
4761
+ n
4762
+ n
4763
+ x
4764
+ 9
4765
+ top_level
4766
+ i
4767
+ 11
4768
+ 45
4769
+ 0
4770
+ 1
4771
+ 20
4772
+ 0
4773
+ 36
4774
+ 1
4775
+ 51
4776
+ 2
4777
+ 0
4778
+ 11
4779
+ I
4780
+ 4
4781
+ I
4782
+ 1
4783
+ I
4784
+ 0
4785
+ I
4786
+ 0
4787
+ I
4788
+ 0
4789
+ p
4790
+ 3
4791
+ x
4792
+ 25
4793
+ TopLevelSequenceGenerator
4794
+ n
4795
+ x
4796
+ 3
4797
+ new
4798
+ p
4799
+ 5
4800
+ I
4801
+ -1
4802
+ I
4803
+ ba
4804
+ I
4805
+ 0
4806
+ I
4807
+ bb
4808
+ I
4809
+ b
4810
+ x
4811
+ 105
4812
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4813
+ p
4814
+ 1
4815
+ x
4816
+ 4
4817
+ args
4818
+ n
4819
+ p
4820
+ 11
4821
+ I
4822
+ 2
4823
+ I
4824
+ 6
4825
+ I
4826
+ 1f
4827
+ I
4828
+ ad
4829
+ I
4830
+ 3c
4831
+ I
4832
+ b1
4833
+ I
4834
+ 49
4835
+ I
4836
+ b6
4837
+ I
4838
+ 66
4839
+ I
4840
+ ba
4841
+ I
4842
+ 73
4843
+ x
4844
+ 105
4845
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4846
+ p
4847
+ 0
4848
+ x
4849
+ 13
4850
+ attach_method
4851
+ p
4852
+ 5
4853
+ I
4854
+ 0
4855
+ I
4856
+ 1
4857
+ I
4858
+ 9
4859
+ I
4860
+ 3
4861
+ I
4862
+ 29
4863
+ x
4864
+ 105
4865
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/parser_generator/sequence_generator.rb
4866
+ p
4867
+ 0