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,1299 @@
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
+ 7
67
+ rattler
68
+ x
69
+ 7
70
+ require
71
+ x
72
+ 9
73
+ Optimizer
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
+ 9
93
+ Optimizer
94
+ i
95
+ 31
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
+ 11
127
+ I
128
+ 6
129
+ I
130
+ 0
131
+ I
132
+ 0
133
+ I
134
+ 0
135
+ n
136
+ p
137
+ 7
138
+ x
139
+ 26
140
+ JoinMatchCapturingSequence
141
+ x
142
+ 12
143
+ Optimization
144
+ n
145
+ x
146
+ 10
147
+ open_class
148
+ x
149
+ 14
150
+ __class_init__
151
+ M
152
+ 1
153
+ n
154
+ n
155
+ x
156
+ 26
157
+ JoinMatchCapturingSequence
158
+ i
159
+ 109
160
+ 5
161
+ 66
162
+ 5
163
+ 45
164
+ 0
165
+ 1
166
+ 47
167
+ 49
168
+ 2
169
+ 1
170
+ 15
171
+ 5
172
+ 45
173
+ 3
174
+ 4
175
+ 43
176
+ 5
177
+ 47
178
+ 49
179
+ 2
180
+ 1
181
+ 15
182
+ 5
183
+ 45
184
+ 3
185
+ 6
186
+ 43
187
+ 7
188
+ 43
189
+ 8
190
+ 47
191
+ 49
192
+ 2
193
+ 1
194
+ 15
195
+ 5
196
+ 48
197
+ 9
198
+ 15
199
+ 99
200
+ 7
201
+ 10
202
+ 7
203
+ 11
204
+ 65
205
+ 67
206
+ 49
207
+ 12
208
+ 0
209
+ 49
210
+ 13
211
+ 4
212
+ 15
213
+ 99
214
+ 7
215
+ 14
216
+ 7
217
+ 15
218
+ 65
219
+ 67
220
+ 49
221
+ 12
222
+ 0
223
+ 49
224
+ 13
225
+ 4
226
+ 15
227
+ 99
228
+ 7
229
+ 16
230
+ 7
231
+ 17
232
+ 65
233
+ 67
234
+ 49
235
+ 12
236
+ 0
237
+ 49
238
+ 13
239
+ 4
240
+ 15
241
+ 99
242
+ 7
243
+ 18
244
+ 7
245
+ 19
246
+ 65
247
+ 67
248
+ 49
249
+ 12
250
+ 0
251
+ 49
252
+ 13
253
+ 4
254
+ 15
255
+ 99
256
+ 7
257
+ 20
258
+ 7
259
+ 21
260
+ 65
261
+ 67
262
+ 49
263
+ 12
264
+ 0
265
+ 49
266
+ 13
267
+ 4
268
+ 11
269
+ I
270
+ 5
271
+ I
272
+ 0
273
+ I
274
+ 0
275
+ I
276
+ 0
277
+ n
278
+ p
279
+ 22
280
+ x
281
+ 12
282
+ MatchJoining
283
+ n
284
+ x
285
+ 7
286
+ include
287
+ x
288
+ 7
289
+ Rattler
290
+ n
291
+ x
292
+ 7
293
+ Parsers
294
+ n
295
+ x
296
+ 7
297
+ BackEnd
298
+ x
299
+ 15
300
+ ParserGenerator
301
+ x
302
+ 9
303
+ protected
304
+ x
305
+ 12
306
+ _applies_to?
307
+ M
308
+ 1
309
+ n
310
+ n
311
+ x
312
+ 12
313
+ _applies_to?
314
+ i
315
+ 31
316
+ 20
317
+ 1
318
+ 49
319
+ 0
320
+ 0
321
+ 13
322
+ 9
323
+ 30
324
+ 15
325
+ 20
326
+ 0
327
+ 45
328
+ 1
329
+ 2
330
+ 49
331
+ 3
332
+ 1
333
+ 13
334
+ 9
335
+ 30
336
+ 15
337
+ 5
338
+ 20
339
+ 0
340
+ 56
341
+ 4
342
+ 47
343
+ 50
344
+ 5
345
+ 1
346
+ 11
347
+ I
348
+ 5
349
+ I
350
+ 2
351
+ I
352
+ 2
353
+ I
354
+ 2
355
+ n
356
+ p
357
+ 6
358
+ x
359
+ 10
360
+ capturing?
361
+ x
362
+ 8
363
+ Sequence
364
+ n
365
+ x
366
+ 5
367
+ is_a?
368
+ M
369
+ 1
370
+ p
371
+ 2
372
+ x
373
+ 9
374
+ for_block
375
+ t
376
+ n
377
+ x
378
+ 12
379
+ _applies_to?
380
+ i
381
+ 12
382
+ 57
383
+ 19
384
+ 0
385
+ 15
386
+ 5
387
+ 20
388
+ 0
389
+ 47
390
+ 49
391
+ 0
392
+ 1
393
+ 11
394
+ I
395
+ 4
396
+ I
397
+ 1
398
+ I
399
+ 1
400
+ I
401
+ 1
402
+ n
403
+ p
404
+ 1
405
+ x
406
+ 15
407
+ eligible_child?
408
+ p
409
+ 3
410
+ I
411
+ 0
412
+ I
413
+ 1b
414
+ I
415
+ c
416
+ x
417
+ 109
418
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
419
+ p
420
+ 1
421
+ x
422
+ 1
423
+ _
424
+ x
425
+ 14
426
+ any_neighbors?
427
+ p
428
+ 9
429
+ I
430
+ -1
431
+ I
432
+ 18
433
+ I
434
+ 0
435
+ I
436
+ 19
437
+ I
438
+ 9
439
+ I
440
+ 1a
441
+ I
442
+ 15
443
+ I
444
+ 1b
445
+ I
446
+ 1f
447
+ x
448
+ 109
449
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
450
+ p
451
+ 2
452
+ x
453
+ 6
454
+ parser
455
+ x
456
+ 7
457
+ context
458
+ x
459
+ 17
460
+ method_visibility
461
+ x
462
+ 15
463
+ add_defn_method
464
+ x
465
+ 15
466
+ eligible_child?
467
+ M
468
+ 1
469
+ n
470
+ n
471
+ x
472
+ 15
473
+ eligible_child?
474
+ i
475
+ 60
476
+ 20
477
+ 0
478
+ 45
479
+ 0
480
+ 1
481
+ 49
482
+ 2
483
+ 1
484
+ 13
485
+ 10
486
+ 59
487
+ 15
488
+ 20
489
+ 0
490
+ 45
491
+ 3
492
+ 4
493
+ 49
494
+ 2
495
+ 1
496
+ 13
497
+ 9
498
+ 32
499
+ 15
500
+ 20
501
+ 0
502
+ 49
503
+ 5
504
+ 0
505
+ 79
506
+ 83
507
+ 6
508
+ 13
509
+ 10
510
+ 59
511
+ 15
512
+ 20
513
+ 0
514
+ 45
515
+ 7
516
+ 8
517
+ 49
518
+ 2
519
+ 1
520
+ 13
521
+ 9
522
+ 59
523
+ 15
524
+ 20
525
+ 0
526
+ 49
527
+ 9
528
+ 0
529
+ 45
530
+ 0
531
+ 10
532
+ 49
533
+ 2
534
+ 1
535
+ 11
536
+ I
537
+ 3
538
+ I
539
+ 1
540
+ I
541
+ 1
542
+ I
543
+ 1
544
+ n
545
+ p
546
+ 11
547
+ x
548
+ 5
549
+ Match
550
+ n
551
+ x
552
+ 5
553
+ is_a?
554
+ x
555
+ 10
556
+ GroupMatch
557
+ n
558
+ x
559
+ 10
560
+ num_groups
561
+ x
562
+ 2
563
+ ==
564
+ x
565
+ 4
566
+ Skip
567
+ n
568
+ x
569
+ 5
570
+ child
571
+ n
572
+ p
573
+ 9
574
+ I
575
+ -1
576
+ I
577
+ 1e
578
+ I
579
+ 0
580
+ I
581
+ 1f
582
+ I
583
+ c
584
+ I
585
+ 20
586
+ I
587
+ 24
588
+ I
589
+ 21
590
+ I
591
+ 3c
592
+ x
593
+ 109
594
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
595
+ p
596
+ 1
597
+ x
598
+ 5
599
+ child
600
+ x
601
+ 15
602
+ create_patterns
603
+ M
604
+ 1
605
+ n
606
+ n
607
+ x
608
+ 15
609
+ create_patterns
610
+ i
611
+ 41
612
+ 78
613
+ 19
614
+ 1
615
+ 15
616
+ 20
617
+ 0
618
+ 56
619
+ 0
620
+ 50
621
+ 1
622
+ 0
623
+ 19
624
+ 2
625
+ 15
626
+ 44
627
+ 43
628
+ 2
629
+ 80
630
+ 49
631
+ 3
632
+ 1
633
+ 13
634
+ 7
635
+ 4
636
+ 20
637
+ 2
638
+ 49
639
+ 5
640
+ 2
641
+ 15
642
+ 13
643
+ 7
644
+ 6
645
+ 20
646
+ 1
647
+ 49
648
+ 5
649
+ 2
650
+ 15
651
+ 11
652
+ 11
653
+ I
654
+ 7
655
+ I
656
+ 3
657
+ I
658
+ 1
659
+ I
660
+ 1
661
+ n
662
+ p
663
+ 7
664
+ M
665
+ 1
666
+ p
667
+ 2
668
+ x
669
+ 9
670
+ for_block
671
+ t
672
+ n
673
+ x
674
+ 15
675
+ create_patterns
676
+ i
677
+ 126
678
+ 57
679
+ 19
680
+ 0
681
+ 15
682
+ 20
683
+ 0
684
+ 13
685
+ 45
686
+ 0
687
+ 1
688
+ 12
689
+ 49
690
+ 2
691
+ 1
692
+ 9
693
+ 46
694
+ 15
695
+ 21
696
+ 1
697
+ 1
698
+ 79
699
+ 81
700
+ 3
701
+ 22
702
+ 1
703
+ 1
704
+ 15
705
+ 7
706
+ 4
707
+ 20
708
+ 0
709
+ 49
710
+ 5
711
+ 0
712
+ 49
713
+ 6
714
+ 0
715
+ 47
716
+ 101
717
+ 7
718
+ 7
719
+ 8
720
+ 63
721
+ 3
722
+ 8
723
+ 125
724
+ 13
725
+ 45
726
+ 9
727
+ 10
728
+ 12
729
+ 49
730
+ 2
731
+ 1
732
+ 9
733
+ 90
734
+ 15
735
+ 21
736
+ 1
737
+ 1
738
+ 20
739
+ 0
740
+ 49
741
+ 11
742
+ 0
743
+ 81
744
+ 3
745
+ 22
746
+ 1
747
+ 1
748
+ 15
749
+ 7
750
+ 12
751
+ 20
752
+ 0
753
+ 49
754
+ 5
755
+ 0
756
+ 49
757
+ 6
758
+ 0
759
+ 47
760
+ 101
761
+ 7
762
+ 7
763
+ 8
764
+ 63
765
+ 3
766
+ 8
767
+ 125
768
+ 13
769
+ 45
770
+ 13
771
+ 14
772
+ 12
773
+ 49
774
+ 2
775
+ 1
776
+ 9
777
+ 123
778
+ 15
779
+ 7
780
+ 12
781
+ 20
782
+ 0
783
+ 49
784
+ 15
785
+ 0
786
+ 49
787
+ 5
788
+ 0
789
+ 49
790
+ 6
791
+ 0
792
+ 47
793
+ 101
794
+ 7
795
+ 7
796
+ 8
797
+ 63
798
+ 3
799
+ 8
800
+ 125
801
+ 15
802
+ 1
803
+ 11
804
+ I
805
+ 5
806
+ I
807
+ 1
808
+ I
809
+ 1
810
+ I
811
+ 1
812
+ n
813
+ p
814
+ 16
815
+ x
816
+ 5
817
+ Match
818
+ n
819
+ x
820
+ 3
821
+ ===
822
+ x
823
+ 1
824
+ +
825
+ s
826
+ 1
827
+ (
828
+ x
829
+ 2
830
+ re
831
+ x
832
+ 6
833
+ source
834
+ x
835
+ 4
836
+ to_s
837
+ s
838
+ 1
839
+ )
840
+ x
841
+ 10
842
+ GroupMatch
843
+ n
844
+ x
845
+ 10
846
+ num_groups
847
+ s
848
+ 3
849
+ (?>
850
+ x
851
+ 4
852
+ Skip
853
+ n
854
+ x
855
+ 5
856
+ child
857
+ p
858
+ 23
859
+ I
860
+ 0
861
+ I
862
+ 26
863
+ I
864
+ 4
865
+ I
866
+ 27
867
+ I
868
+ 6
869
+ I
870
+ 29
871
+ I
872
+ 11
873
+ I
874
+ 2a
875
+ I
876
+ 1b
877
+ I
878
+ 2b
879
+ I
880
+ 2e
881
+ I
882
+ 2d
883
+ I
884
+ 39
885
+ I
886
+ 2e
887
+ I
888
+ 47
889
+ I
890
+ 2f
891
+ I
892
+ 5a
893
+ I
894
+ 31
895
+ I
896
+ 65
897
+ I
898
+ 32
899
+ I
900
+ 7c
901
+ I
902
+ 27
903
+ I
904
+ 7e
905
+ x
906
+ 109
907
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
908
+ p
909
+ 1
910
+ x
911
+ 6
912
+ parser
913
+ x
914
+ 3
915
+ map
916
+ x
917
+ 4
918
+ Hash
919
+ x
920
+ 16
921
+ new_from_literal
922
+ x
923
+ 8
924
+ patterns
925
+ x
926
+ 3
927
+ []=
928
+ x
929
+ 10
930
+ num_groups
931
+ p
932
+ 9
933
+ I
934
+ -1
935
+ I
936
+ 24
937
+ I
938
+ 0
939
+ I
940
+ 25
941
+ I
942
+ 4
943
+ I
944
+ 26
945
+ I
946
+ e
947
+ I
948
+ 36
949
+ I
950
+ 29
951
+ x
952
+ 109
953
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
954
+ p
955
+ 3
956
+ x
957
+ 7
958
+ parsers
959
+ x
960
+ 10
961
+ num_groups
962
+ x
963
+ 8
964
+ patterns
965
+ x
966
+ 13
967
+ join_patterns
968
+ M
969
+ 1
970
+ n
971
+ n
972
+ x
973
+ 13
974
+ join_patterns
975
+ i
976
+ 31
977
+ 20
978
+ 0
979
+ 44
980
+ 43
981
+ 0
982
+ 79
983
+ 49
984
+ 1
985
+ 1
986
+ 13
987
+ 7
988
+ 2
989
+ 20
990
+ 0
991
+ 7
992
+ 3
993
+ 49
994
+ 4
995
+ 1
996
+ 49
997
+ 5
998
+ 0
999
+ 49
1000
+ 6
1001
+ 2
1002
+ 15
1003
+ 49
1004
+ 7
1005
+ 1
1006
+ 11
1007
+ 11
1008
+ I
1009
+ 7
1010
+ I
1011
+ 1
1012
+ I
1013
+ 1
1014
+ I
1015
+ 1
1016
+ n
1017
+ p
1018
+ 8
1019
+ x
1020
+ 4
1021
+ Hash
1022
+ x
1023
+ 16
1024
+ new_from_literal
1025
+ x
1026
+ 7
1027
+ pattern
1028
+ x
1029
+ 8
1030
+ patterns
1031
+ x
1032
+ 2
1033
+ []
1034
+ x
1035
+ 4
1036
+ join
1037
+ x
1038
+ 3
1039
+ []=
1040
+ x
1041
+ 5
1042
+ merge
1043
+ p
1044
+ 5
1045
+ I
1046
+ -1
1047
+ I
1048
+ 39
1049
+ I
1050
+ 0
1051
+ I
1052
+ 3a
1053
+ I
1054
+ 1f
1055
+ x
1056
+ 109
1057
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
1058
+ p
1059
+ 1
1060
+ x
1061
+ 4
1062
+ info
1063
+ x
1064
+ 12
1065
+ create_match
1066
+ M
1067
+ 1
1068
+ n
1069
+ n
1070
+ x
1071
+ 12
1072
+ create_match
1073
+ i
1074
+ 66
1075
+ 20
1076
+ 0
1077
+ 7
1078
+ 0
1079
+ 49
1080
+ 1
1081
+ 1
1082
+ 54
1083
+ 52
1084
+ 2
1085
+ 1
1086
+ 19
1087
+ 1
1088
+ 15
1089
+ 20
1090
+ 0
1091
+ 7
1092
+ 3
1093
+ 49
1094
+ 1
1095
+ 1
1096
+ 78
1097
+ 85
1098
+ 4
1099
+ 9
1100
+ 57
1101
+ 45
1102
+ 5
1103
+ 6
1104
+ 20
1105
+ 1
1106
+ 44
1107
+ 43
1108
+ 7
1109
+ 79
1110
+ 49
1111
+ 8
1112
+ 1
1113
+ 13
1114
+ 7
1115
+ 3
1116
+ 20
1117
+ 0
1118
+ 7
1119
+ 3
1120
+ 49
1121
+ 1
1122
+ 1
1123
+ 49
1124
+ 9
1125
+ 2
1126
+ 15
1127
+ 49
1128
+ 1
1129
+ 2
1130
+ 8
1131
+ 65
1132
+ 45
1133
+ 10
1134
+ 11
1135
+ 20
1136
+ 1
1137
+ 49
1138
+ 1
1139
+ 1
1140
+ 11
1141
+ I
1142
+ 9
1143
+ I
1144
+ 2
1145
+ I
1146
+ 1
1147
+ I
1148
+ 1
1149
+ n
1150
+ p
1151
+ 12
1152
+ x
1153
+ 7
1154
+ pattern
1155
+ x
1156
+ 2
1157
+ []
1158
+ x
1159
+ 12
1160
+ create_match
1161
+ x
1162
+ 10
1163
+ num_groups
1164
+ x
1165
+ 1
1166
+ >
1167
+ x
1168
+ 10
1169
+ GroupMatch
1170
+ n
1171
+ x
1172
+ 4
1173
+ Hash
1174
+ x
1175
+ 16
1176
+ new_from_literal
1177
+ x
1178
+ 3
1179
+ []=
1180
+ x
1181
+ 4
1182
+ Skip
1183
+ n
1184
+ p
1185
+ 11
1186
+ I
1187
+ -1
1188
+ I
1189
+ 3d
1190
+ I
1191
+ 0
1192
+ I
1193
+ 3e
1194
+ I
1195
+ e
1196
+ I
1197
+ 3f
1198
+ I
1199
+ 1a
1200
+ I
1201
+ 40
1202
+ I
1203
+ 39
1204
+ I
1205
+ 42
1206
+ I
1207
+ 42
1208
+ x
1209
+ 109
1210
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
1211
+ p
1212
+ 2
1213
+ x
1214
+ 4
1215
+ info
1216
+ x
1217
+ 5
1218
+ match
1219
+ p
1220
+ 19
1221
+ I
1222
+ 2
1223
+ I
1224
+ 11
1225
+ I
1226
+ b
1227
+ I
1228
+ 13
1229
+ I
1230
+ 16
1231
+ I
1232
+ 14
1233
+ I
1234
+ 23
1235
+ I
1236
+ 16
1237
+ I
1238
+ 27
1239
+ I
1240
+ 18
1241
+ I
1242
+ 35
1243
+ I
1244
+ 1e
1245
+ I
1246
+ 43
1247
+ I
1248
+ 24
1249
+ I
1250
+ 51
1251
+ I
1252
+ 39
1253
+ I
1254
+ 5f
1255
+ I
1256
+ 3d
1257
+ I
1258
+ 6d
1259
+ x
1260
+ 109
1261
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
1262
+ p
1263
+ 0
1264
+ x
1265
+ 13
1266
+ attach_method
1267
+ p
1268
+ 3
1269
+ I
1270
+ 2
1271
+ I
1272
+ 10
1273
+ I
1274
+ 1f
1275
+ x
1276
+ 109
1277
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
1278
+ p
1279
+ 0
1280
+ x
1281
+ 13
1282
+ attach_method
1283
+ p
1284
+ 5
1285
+ I
1286
+ 0
1287
+ I
1288
+ 7
1289
+ I
1290
+ 9
1291
+ I
1292
+ 9
1293
+ I
1294
+ 29
1295
+ x
1296
+ 109
1297
+ /home/jarhart/Dropbox/Workspaces/Ruby/rattler/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
1298
+ p
1299
+ 0