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