rattler 0.4.2 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +9 -3
- data/features/command_line/dest_option.feature +1 -1
- data/features/command_line/lib_option.feature +2 -2
- data/features/command_line/output_option.feature +2 -2
- data/features/command_line/parser_generator.feature +3 -3
- data/features/grammar/any_character.feature +0 -4
- data/features/grammar/back_reference.feature +0 -4
- data/features/grammar/character_class.feature +0 -4
- data/features/grammar/comments.feature +0 -4
- data/features/grammar/e_symbol.feature +18 -0
- data/features/grammar/eof.feature +0 -4
- data/features/grammar/fail.feature +0 -4
- data/features/grammar/list_matching.feature +52 -3
- data/features/grammar/literal.feature +0 -4
- data/features/grammar/negative_lookahead.feature +0 -4
- data/features/grammar/negative_semantic_predicate.feature +99 -0
- data/features/grammar/node_action.feature +17 -4
- data/features/grammar/nonterminal.feature +3 -7
- data/features/grammar/one_or_more.feature +0 -4
- data/features/grammar/optional.feature +0 -4
- data/features/grammar/ordered_choice.feature +0 -4
- data/features/grammar/positive_lookahead.feature +0 -4
- data/features/grammar/positive_semantic_predicate.feature +99 -0
- data/features/grammar/posix_class.feature +3 -6
- data/features/grammar/repeat.feature +50 -0
- data/features/grammar/sequence.feature +0 -4
- data/features/grammar/side_effect.feature +81 -0
- data/features/grammar/skip_operator.feature +2 -5
- data/features/grammar/start_rule.feature +1 -5
- data/features/grammar/symantic_action.feature +9 -4
- data/features/grammar/token.feature +0 -4
- data/features/grammar/whitespace.feature +0 -4
- data/features/grammar/word_literal.feature +0 -4
- data/features/grammar/zero_or_more.feature +0 -4
- data/features/step_definitions/grammar_steps.rb +5 -1
- data/lib/rattler/back_end/optimizer.rb +1 -0
- data/lib/rattler/back_end/optimizer/reduce_repeat_match.rb +20 -8
- data/lib/rattler/back_end/optimizer/simplify_redundant_repeat.rb +10 -7
- data/lib/rattler/back_end/optimizer/specialize_repeat.rb +40 -0
- data/lib/rattler/back_end/parser_generator.rb +11 -6
- data/lib/rattler/back_end/parser_generator/delegating_generator.rb +20 -0
- data/lib/rattler/back_end/parser_generator/e_symbol_generator.rb +52 -0
- data/lib/rattler/back_end/parser_generator/eof_generator.rb +58 -0
- data/lib/rattler/back_end/parser_generator/expr_generator.rb +6 -2
- data/lib/rattler/back_end/parser_generator/gen_method_names.rb +15 -5
- data/lib/rattler/back_end/parser_generator/general_list_generator.rb +194 -0
- data/lib/rattler/back_end/parser_generator/general_repeat_generator.rb +177 -0
- data/lib/rattler/back_end/parser_generator/label_generator.rb +4 -1
- data/lib/rattler/back_end/parser_generator/list0_generating.rb +36 -0
- data/lib/rattler/back_end/parser_generator/list1_generating.rb +30 -0
- data/lib/rattler/back_end/parser_generator/list_generator.rb +16 -20
- data/lib/rattler/back_end/parser_generator/one_or_more_generating.rb +25 -0
- data/lib/rattler/back_end/parser_generator/{optional_generator.rb → optional_generating.rb} +66 -81
- data/lib/rattler/back_end/parser_generator/predicate_propogating.rb +4 -4
- data/lib/rattler/back_end/parser_generator/repeat_generator.rb +53 -0
- data/lib/rattler/back_end/parser_generator/skip_propogating.rb +2 -2
- data/lib/rattler/back_end/parser_generator/sub_generating.rb +16 -18
- data/lib/rattler/back_end/parser_generator/token_propogating.rb +1 -1
- data/lib/rattler/back_end/parser_generator/zero_or_more_generating.rb +31 -0
- data/lib/rattler/grammar/grammar_parser.rb +20 -0
- data/lib/rattler/grammar/metagrammar.rb +131 -13
- data/lib/rattler/grammar/rattler.rtlr +25 -12
- data/lib/rattler/parsers.rb +9 -5
- data/lib/rattler/parsers/assert_code.rb +31 -0
- data/lib/rattler/parsers/atomic.rb +19 -0
- data/lib/rattler/parsers/direct_action.rb +12 -4
- data/lib/rattler/parsers/disallow_code.rb +31 -0
- data/lib/rattler/parsers/dispatch_action.rb +3 -2
- data/lib/rattler/parsers/e_symbol.rb +47 -0
- data/lib/rattler/parsers/effect_code.rb +31 -0
- data/lib/rattler/parsers/eof.rb +6 -13
- data/lib/rattler/parsers/list_parser.rb +33 -14
- data/lib/rattler/parsers/match.rb +1 -6
- data/lib/rattler/parsers/parser_dsl.rb +78 -35
- data/lib/rattler/parsers/predicate.rb +1 -4
- data/lib/rattler/parsers/repeat.rb +76 -0
- data/lib/rattler/parsers/semantic_assert.rb +19 -0
- data/lib/rattler/parsers/semantic_disallow.rb +19 -0
- data/lib/rattler/parsers/side_effect.rb +19 -0
- data/lib/rattler/parsers/skip.rb +1 -9
- data/lib/rattler/parsers/token.rb +1 -6
- data/lib/rattler/util/graphviz/node_builder.rb +6 -3
- data/spec/rattler/back_end/assert_compiler_examples.rb +187 -0
- data/spec/rattler/back_end/direct_action_compiler_examples.rb +227 -0
- data/spec/rattler/back_end/disallow_compiler_examples.rb +187 -0
- data/spec/rattler/back_end/dispatch_action_compiler_examples.rb +225 -0
- data/spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rb +45 -33
- data/spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rb +32 -172
- data/spec/rattler/back_end/parser_generator/e_symbol_generator_spec.rb +149 -0
- data/spec/rattler/back_end/parser_generator/eof_generator_spec.rb +152 -0
- data/spec/rattler/back_end/parser_generator/label_generator_spec.rb +4 -4
- data/spec/rattler/back_end/parser_generator/list0_generator_examples.rb +322 -0
- data/spec/rattler/back_end/parser_generator/list1_generator_examples.rb +343 -0
- data/spec/rattler/back_end/parser_generator/list_generator_spec.rb +597 -140
- data/spec/rattler/back_end/parser_generator/one_or_more_generator_examples.rb +292 -0
- data/spec/rattler/back_end/parser_generator/optional_generator_examples.rb +233 -0
- data/spec/rattler/back_end/parser_generator/repeat_generator_spec.rb +281 -0
- data/spec/rattler/back_end/parser_generator/zero_or_more_generator_examples.rb +277 -0
- data/spec/rattler/back_end/semantic_assert_compiler_examples.rb +152 -0
- data/spec/rattler/back_end/semantic_disallow_compiler_examples.rb +152 -0
- data/spec/rattler/back_end/shared_compiler_examples.rb +106 -651
- data/spec/rattler/back_end/side_effect_compiler_examples.rb +227 -0
- data/spec/rattler/back_end/skip_compiler_examples.rb +161 -0
- data/spec/rattler/back_end/token_compiler_examples.rb +262 -0
- data/spec/rattler/grammar/grammar_parser_spec.rb +302 -23
- data/spec/rattler/parsers/apply_spec.rb +6 -0
- data/spec/rattler/parsers/assert_spec.rb +18 -7
- data/spec/rattler/parsers/back_reference_spec.rb +9 -0
- data/spec/rattler/parsers/choice_spec.rb +36 -21
- data/spec/rattler/parsers/direct_action_spec.rb +76 -36
- data/spec/rattler/parsers/disallow_spec.rb +18 -7
- data/spec/rattler/parsers/dispatch_action_spec.rb +128 -22
- data/spec/rattler/parsers/e_symbol_spec.rb +30 -0
- data/spec/rattler/parsers/eof_spec.rb +15 -6
- data/spec/rattler/parsers/label_spec.rb +15 -2
- data/spec/rattler/parsers/list_parser_spec.rb +187 -0
- data/spec/rattler/parsers/match_spec.rb +16 -7
- data/spec/rattler/parsers/parser_dsl_spec.rb +82 -23
- data/spec/rattler/parsers/repeat_spec.rb +233 -0
- data/spec/rattler/parsers/semantic_assert_spec.rb +83 -0
- data/spec/rattler/parsers/semantic_disallow_spec.rb +83 -0
- data/spec/rattler/parsers/sequence_spec.rb +34 -20
- data/spec/rattler/parsers/side_effect_spec.rb +214 -0
- data/spec/rattler/parsers/skip_spec.rb +17 -6
- data/spec/rattler_spec.rb +2 -0
- data/spec/support/compiler_spec_helper.rb +8 -0
- metadata +156 -447
- data/bin/rtlr.compiled.rbc +0 -201
- data/features/step_definitions/cli_steps.rbc +0 -149
- data/features/step_definitions/grammar_steps.rbc +0 -1211
- data/features/support/env.rbc +0 -389
- data/lib/rattler.rbc +0 -1231
- data/lib/rattler/back_end.rbc +0 -286
- data/lib/rattler/back_end/compiler.rbc +0 -1394
- data/lib/rattler/back_end/optimizer.rbc +0 -2000
- data/lib/rattler/back_end/optimizer/composite_reducing.rbc +0 -337
- data/lib/rattler/back_end/optimizer/flatten_choice.rbc +0 -443
- data/lib/rattler/back_end/optimizer/flatten_sequence.rbc +0 -827
- data/lib/rattler/back_end/optimizer/flattening.rbc +0 -570
- data/lib/rattler/back_end/optimizer/inline_regular_rules.rbc +0 -691
- data/lib/rattler/back_end/optimizer/join_match_capturing_sequence.rbc +0 -1299
- data/lib/rattler/back_end/optimizer/join_match_choice.rbc +0 -523
- data/lib/rattler/back_end/optimizer/join_match_matching_sequence.rbc +0 -619
- data/lib/rattler/back_end/optimizer/join_match_sequence.rbc +0 -174
- data/lib/rattler/back_end/optimizer/join_predicate_bare_match.rbc +0 -1505
- data/lib/rattler/back_end/optimizer/join_predicate_match.rbc +0 -174
- data/lib/rattler/back_end/optimizer/join_predicate_nested_match.rbc +0 -620
- data/lib/rattler/back_end/optimizer/join_predicate_or_bare_match.rbc +0 -1502
- data/lib/rattler/back_end/optimizer/join_predicate_or_match.rbc +0 -174
- data/lib/rattler/back_end/optimizer/join_predicate_or_nested_match.rbc +0 -616
- data/lib/rattler/back_end/optimizer/match_joining.rbc +0 -1454
- data/lib/rattler/back_end/optimizer/optimization.rbc +0 -1366
- data/lib/rattler/back_end/optimizer/optimization_context.rbc +0 -1386
- data/lib/rattler/back_end/optimizer/optimization_sequence.rbc +0 -520
- data/lib/rattler/back_end/optimizer/optimize_children.rbc +0 -793
- data/lib/rattler/back_end/optimizer/reduce_repeat_match.rbc +0 -788
- data/lib/rattler/back_end/optimizer/remove_meaningless_wrapper.rbc +0 -508
- data/lib/rattler/back_end/optimizer/simplify_redundant_repeat.rbc +0 -807
- data/lib/rattler/back_end/optimizer/simplify_token_match.rbc +0 -561
- data/lib/rattler/back_end/parser_generator.rbc +0 -1326
- data/lib/rattler/back_end/parser_generator/apply_generator.rbc +0 -2148
- data/lib/rattler/back_end/parser_generator/assert_generator.rbc +0 -1967
- data/lib/rattler/back_end/parser_generator/back_reference_generator.rbc +0 -1665
- data/lib/rattler/back_end/parser_generator/choice_generator.rbc +0 -2793
- data/lib/rattler/back_end/parser_generator/direct_action_generator.rbc +0 -1071
- data/lib/rattler/back_end/parser_generator/disallow_generator.rbc +0 -1967
- data/lib/rattler/back_end/parser_generator/dispatch_action_generator.rbc +0 -1071
- data/lib/rattler/back_end/parser_generator/expr_generator.rbc +0 -2295
- data/lib/rattler/back_end/parser_generator/fail_generator.rbc +0 -1216
- data/lib/rattler/back_end/parser_generator/gen_method_names.rbc +0 -296
- data/lib/rattler/back_end/parser_generator/group_match.rbc +0 -612
- data/lib/rattler/back_end/parser_generator/group_match_generator.rbc +0 -1647
- data/lib/rattler/back_end/parser_generator/label_generator.rbc +0 -1401
- data/lib/rattler/back_end/parser_generator/list1_generator.rb +0 -54
- data/lib/rattler/back_end/parser_generator/list1_generator.rbc +0 -1237
- data/lib/rattler/back_end/parser_generator/list_generating.rb +0 -71
- data/lib/rattler/back_end/parser_generator/list_generating.rbc +0 -1900
- data/lib/rattler/back_end/parser_generator/list_generator.rbc +0 -1068
- data/lib/rattler/back_end/parser_generator/match_generator.rbc +0 -1743
- data/lib/rattler/back_end/parser_generator/nested.rbc +0 -496
- data/lib/rattler/back_end/parser_generator/one_or_more_generator.rb +0 -56
- data/lib/rattler/back_end/parser_generator/one_or_more_generator.rbc +0 -1277
- data/lib/rattler/back_end/parser_generator/optional_generator.rbc +0 -2025
- data/lib/rattler/back_end/parser_generator/predicate_propogating.rbc +0 -648
- data/lib/rattler/back_end/parser_generator/repeat_generating.rb +0 -57
- data/lib/rattler/back_end/parser_generator/repeat_generating.rbc +0 -1549
- data/lib/rattler/back_end/parser_generator/rule_generator.rbc +0 -1239
- data/lib/rattler/back_end/parser_generator/rule_set_generator.rbc +0 -2641
- data/lib/rattler/back_end/parser_generator/sequence_generator.rbc +0 -4867
- data/lib/rattler/back_end/parser_generator/skip_generator.rbc +0 -1278
- data/lib/rattler/back_end/parser_generator/skip_propogating.rbc +0 -432
- data/lib/rattler/back_end/parser_generator/sub_generating.rbc +0 -2785
- data/lib/rattler/back_end/parser_generator/token_generator.rbc +0 -755
- data/lib/rattler/back_end/parser_generator/token_propogating.rbc +0 -324
- data/lib/rattler/back_end/parser_generator/top_level.rbc +0 -352
- data/lib/rattler/back_end/parser_generator/zero_or_more_generator.rb +0 -53
- data/lib/rattler/back_end/parser_generator/zero_or_more_generator.rbc +0 -1111
- data/lib/rattler/back_end/ruby_generator.rbc +0 -1841
- data/lib/rattler/grammar.rbc +0 -557
- data/lib/rattler/grammar/analysis.rbc +0 -1944
- data/lib/rattler/grammar/grammar.rbc +0 -1090
- data/lib/rattler/grammar/grammar_dsl.rbc +0 -1401
- data/lib/rattler/grammar/grammar_parser.rbc +0 -2096
- data/lib/rattler/grammar/metagrammar.rbc +0 -11014
- data/lib/rattler/parsers.rbc +0 -1006
- data/lib/rattler/parsers/action_code.rbc +0 -1577
- data/lib/rattler/parsers/apply.rbc +0 -562
- data/lib/rattler/parsers/assert.rbc +0 -378
- data/lib/rattler/parsers/back_reference.rbc +0 -871
- data/lib/rattler/parsers/choice.rbc +0 -607
- data/lib/rattler/parsers/combinator_parser.rbc +0 -612
- data/lib/rattler/parsers/combining.rbc +0 -570
- data/lib/rattler/parsers/direct_action.rbc +0 -1472
- data/lib/rattler/parsers/disallow.rbc +0 -379
- data/lib/rattler/parsers/dispatch_action.rbc +0 -2078
- data/lib/rattler/parsers/eof.rbc +0 -567
- data/lib/rattler/parsers/fail.rbc +0 -745
- data/lib/rattler/parsers/label.rbc +0 -749
- data/lib/rattler/parsers/list.rbc +0 -292
- data/lib/rattler/parsers/list0.rb +0 -26
- data/lib/rattler/parsers/list0.rbc +0 -292
- data/lib/rattler/parsers/list1.rb +0 -26
- data/lib/rattler/parsers/list1.rbc +0 -305
- data/lib/rattler/parsers/list_parser.rbc +0 -886
- data/lib/rattler/parsers/match.rbc +0 -621
- data/lib/rattler/parsers/node_code.rbc +0 -1064
- data/lib/rattler/parsers/one_or_more.rb +0 -47
- data/lib/rattler/parsers/one_or_more.rbc +0 -475
- data/lib/rattler/parsers/optional.rb +0 -42
- data/lib/rattler/parsers/optional.rbc +0 -450
- data/lib/rattler/parsers/parser.rbc +0 -994
- data/lib/rattler/parsers/parser_dsl.rbc +0 -4765
- data/lib/rattler/parsers/predicate.rbc +0 -490
- data/lib/rattler/parsers/rule.rbc +0 -777
- data/lib/rattler/parsers/rule_set.rbc +0 -1438
- data/lib/rattler/parsers/sequence.rbc +0 -1040
- data/lib/rattler/parsers/skip.rbc +0 -613
- data/lib/rattler/parsers/token.rbc +0 -457
- data/lib/rattler/parsers/zero_or_more.rb +0 -40
- data/lib/rattler/parsers/zero_or_more.rbc +0 -462
- data/lib/rattler/runner.rbc +0 -3813
- data/lib/rattler/runtime.rbc +0 -370
- data/lib/rattler/runtime/extended_packrat_parser.rbc +0 -2351
- data/lib/rattler/runtime/packrat_parser.rbc +0 -1390
- data/lib/rattler/runtime/parse_failure.rbc +0 -909
- data/lib/rattler/runtime/parse_node.rbc +0 -1007
- data/lib/rattler/runtime/parser.rbc +0 -2267
- data/lib/rattler/runtime/parser_helper.rbc +0 -337
- data/lib/rattler/runtime/recursive_descent_parser.rbc +0 -942
- data/lib/rattler/util.rbc +0 -286
- data/lib/rattler/util/graphviz.rbc +0 -327
- data/lib/rattler/util/graphviz/node_builder.rbc +0 -2207
- data/lib/rattler/util/line_counter.rbc +0 -988
- data/lib/rattler/util/node.rbc +0 -2393
- data/lib/rattler/util/parser_spec_helper.rbc +0 -2533
- data/spec/rattler/back_end/compiler_spec.rbc +0 -1187
- data/spec/rattler/back_end/optimizer/flatten_choice_spec.rbc +0 -2093
- data/spec/rattler/back_end/optimizer/flatten_sequence_spec.rbc +0 -4055
- data/spec/rattler/back_end/optimizer/inline_regular_rules_spec.rbc +0 -2345
- data/spec/rattler/back_end/optimizer/join_match_capturing_sequence_spec.rbc +0 -7006
- data/spec/rattler/back_end/optimizer/join_match_choice_spec.rbc +0 -3252
- data/spec/rattler/back_end/optimizer/join_match_matching_sequence_spec.rbc +0 -3681
- data/spec/rattler/back_end/optimizer/join_predicate_bare_match_spec.rbc +0 -5603
- data/spec/rattler/back_end/optimizer/join_predicate_nested_match_spec.rbc +0 -5232
- data/spec/rattler/back_end/optimizer/join_predicate_or_bare_match_spec.rbc +0 -4272
- data/spec/rattler/back_end/optimizer/join_predicate_or_nested_match_spec.rbc +0 -4342
- data/spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rbc +0 -2960
- data/spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rbc +0 -6929
- data/spec/rattler/back_end/optimizer/simplify_token_match_spec.rbc +0 -2327
- data/spec/rattler/back_end/optimizer_spec.rbc +0 -372
- data/spec/rattler/back_end/parser_generator/apply_generator_spec.rbc +0 -4710
- data/spec/rattler/back_end/parser_generator/assert_generator_spec.rbc +0 -4697
- data/spec/rattler/back_end/parser_generator/back_reference_generator_spec.rbc +0 -4855
- data/spec/rattler/back_end/parser_generator/choice_generator_spec.rbc +0 -5350
- data/spec/rattler/back_end/parser_generator/direct_action_generator_spec.rbc +0 -4737
- data/spec/rattler/back_end/parser_generator/disallow_generator_spec.rbc +0 -4697
- data/spec/rattler/back_end/parser_generator/dispatch_action_generator_spec.rbc +0 -4731
- data/spec/rattler/back_end/parser_generator/fail_generator_spec.rbc +0 -2115
- data/spec/rattler/back_end/parser_generator/group_match_generator_spec.rbc +0 -4195
- data/spec/rattler/back_end/parser_generator/group_match_spec.rbc +0 -1414
- data/spec/rattler/back_end/parser_generator/label_generator_spec.rbc +0 -4696
- data/spec/rattler/back_end/parser_generator/list1_generator_spec.rb +0 -309
- data/spec/rattler/back_end/parser_generator/list1_generator_spec.rbc +0 -5213
- data/spec/rattler/back_end/parser_generator/list_generator_spec.rbc +0 -5179
- data/spec/rattler/back_end/parser_generator/match_generator_spec.rbc +0 -4681
- data/spec/rattler/back_end/parser_generator/one_or_more_generator_spec.rb +0 -259
- data/spec/rattler/back_end/parser_generator/one_or_more_generator_spec.rbc +0 -4957
- data/spec/rattler/back_end/parser_generator/optional_generator_spec.rb +0 -190
- data/spec/rattler/back_end/parser_generator/optional_generator_spec.rbc +0 -4704
- data/spec/rattler/back_end/parser_generator/rule_generator_spec.rbc +0 -545
- data/spec/rattler/back_end/parser_generator/rule_set_generator_spec.rbc +0 -1110
- data/spec/rattler/back_end/parser_generator/sequence_generator_spec.rbc +0 -5453
- data/spec/rattler/back_end/parser_generator/skip_generator_spec.rbc +0 -4691
- data/spec/rattler/back_end/parser_generator/token_generator_spec.rbc +0 -4691
- data/spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rb +0 -244
- data/spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rbc +0 -4924
- data/spec/rattler/back_end/ruby_generator_spec.rbc +0 -2460
- data/spec/rattler/back_end/shared_compiler_examples.rbc +0 -41886
- data/spec/rattler/grammar/analysis_spec.rbc +0 -4365
- data/spec/rattler/grammar/grammar_parser_spec.rbc +0 -10344
- data/spec/rattler/grammar/grammar_spec.rbc +0 -1701
- data/spec/rattler/parsers/action_code_spec.rbc +0 -4674
- data/spec/rattler/parsers/apply_spec.rbc +0 -851
- data/spec/rattler/parsers/assert_spec.rbc +0 -752
- data/spec/rattler/parsers/back_reference_spec.rbc +0 -1002
- data/spec/rattler/parsers/choice_spec.rbc +0 -1696
- data/spec/rattler/parsers/combinator_parser_spec.rbc +0 -361
- data/spec/rattler/parsers/direct_action_spec.rbc +0 -5222
- data/spec/rattler/parsers/disallow_spec.rbc +0 -752
- data/spec/rattler/parsers/dispatch_action_spec.rbc +0 -3033
- data/spec/rattler/parsers/eof_spec.rbc +0 -728
- data/spec/rattler/parsers/fail_spec.rbc +0 -548
- data/spec/rattler/parsers/label_spec.rbc +0 -1091
- data/spec/rattler/parsers/list0_spec.rb +0 -82
- data/spec/rattler/parsers/list0_spec.rbc +0 -2308
- data/spec/rattler/parsers/list1_spec.rb +0 -82
- data/spec/rattler/parsers/list1_spec.rbc +0 -2287
- data/spec/rattler/parsers/list_spec.rbc +0 -2308
- data/spec/rattler/parsers/match_spec.rbc +0 -780
- data/spec/rattler/parsers/node_code_spec.rbc +0 -1754
- data/spec/rattler/parsers/one_or_more_spec.rb +0 -64
- data/spec/rattler/parsers/one_or_more_spec.rbc +0 -1698
- data/spec/rattler/parsers/optional_spec.rb +0 -64
- data/spec/rattler/parsers/optional_spec.rbc +0 -1717
- data/spec/rattler/parsers/parser_dsl_spec.rbc +0 -10150
- data/spec/rattler/parsers/rule_set_spec.rbc +0 -1060
- data/spec/rattler/parsers/sequence_spec.rbc +0 -2899
- data/spec/rattler/parsers/skip_spec.rbc +0 -753
- data/spec/rattler/parsers/token_spec.rbc +0 -1511
- data/spec/rattler/parsers/zero_or_more_spec.rb +0 -64
- data/spec/rattler/parsers/zero_or_more_spec.rbc +0 -1719
- data/spec/rattler/runtime/extended_packrat_parser_spec.rbc +0 -1341
- data/spec/rattler/runtime/packrat_parser_spec.rbc +0 -210
- data/spec/rattler/runtime/parse_failure_spec.rbc +0 -2244
- data/spec/rattler/runtime/parse_node_spec.rbc +0 -2008
- data/spec/rattler/runtime/parser_spec.rbc +0 -2757
- data/spec/rattler/runtime/recursive_descent_parser_spec.rbc +0 -210
- data/spec/rattler/runtime/shared_parser_examples.rbc +0 -2567
- data/spec/rattler/util/graphviz/node_builder_spec.rbc +0 -3439
- data/spec/rattler/util/line_counter_spec.rbc +0 -2272
- data/spec/rattler/util/node_spec.rbc +0 -15023
- data/spec/rattler_spec.rbc +0 -1591
- data/spec/spec_helper.rbc +0 -336
- data/spec/support/combinator_parser_spec_helper.rbc +0 -1284
- data/spec/support/compiler_spec_helper.rbc +0 -1941
- data/spec/support/parser_generator_spec_helper.rbc +0 -718
- data/spec/support/runtime_parser_spec_helper.rbc +0 -313
@@ -0,0 +1,214 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
|
+
|
3
|
+
describe SideEffect do
|
4
|
+
include CombinatorParserSpecHelper
|
5
|
+
|
6
|
+
subject { SideEffect[nested, code] }
|
7
|
+
|
8
|
+
before { $__side_effect_result__ = nil }
|
9
|
+
|
10
|
+
describe '#parse' do
|
11
|
+
|
12
|
+
context 'with a capturing parser' do
|
13
|
+
|
14
|
+
let(:nested) { Match[/[[:digit:]]+/] }
|
15
|
+
let(:code) { '|s| $__side_effect_result__ = s * 2' }
|
16
|
+
|
17
|
+
context 'when the parser matches' do
|
18
|
+
it 'applies the action binding the captured results as arguments' do
|
19
|
+
parsing('451a').should result_in('451').at(3)
|
20
|
+
$__side_effect_result__.should == '451451'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
context 'when the parser fails' do
|
25
|
+
it 'fails' do
|
26
|
+
parsing('foo').should fail
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context 'using the "_" character' do
|
31
|
+
|
32
|
+
let(:code) { '$__side_effect_result__ = _ * 2' }
|
33
|
+
|
34
|
+
it 'applies the action binding the captured result as "_"' do
|
35
|
+
parsing('321a').should result_in('321').at(3)
|
36
|
+
$__side_effect_result__.should == '321321'
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
context 'with a sequence parser' do
|
42
|
+
|
43
|
+
let :nested do
|
44
|
+
Sequence[Match[/[[:alpha:]]+/], Skip[Match[/\=/]], Match[/[[:digit:]]+/]]
|
45
|
+
end
|
46
|
+
|
47
|
+
let(:code) { '|l, r| $__side_effect_result__ = "#{r} -> #{l}"' }
|
48
|
+
|
49
|
+
context 'when the parser matches' do
|
50
|
+
it 'applies the action binding the captured results as arguments' do
|
51
|
+
parsing('val=42 ').should result_in(['val', '42']).at(6)
|
52
|
+
$__side_effect_result__.should == '42 -> val'
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
context 'using the "_" character' do
|
57
|
+
|
58
|
+
let(:code) { '$__side_effect_result__ = _.join " <- "' }
|
59
|
+
|
60
|
+
it 'applies the action binding the captured result array as "_"' do
|
61
|
+
parsing('val=42 ').should result_in(['val', '42']).at(6)
|
62
|
+
$__side_effect_result__.should == 'val <- 42'
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
context 'with an optional parser' do
|
68
|
+
|
69
|
+
let(:nested) { Repeat[Match[/\d/], 0, 1] }
|
70
|
+
let(:code) { '|s| $__side_effect_result__ = s' }
|
71
|
+
|
72
|
+
context 'when the nested parser matches' do
|
73
|
+
it 'applies the action to an array containing the match' do
|
74
|
+
parsing('451a').should result_in(['4']).at(1)
|
75
|
+
$__side_effect_result__.should == ['4']
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
context 'with a zero-or-more parser' do
|
81
|
+
|
82
|
+
let(:nested) { Repeat[Match[/\d/], 0, nil] }
|
83
|
+
let(:code) { '|s| $__side_effect_result__ = s * 2' }
|
84
|
+
|
85
|
+
context 'when the nested parser matches' do
|
86
|
+
it 'applies the action to an array containing the matches' do
|
87
|
+
parsing('451a').should result_in(%w{4 5 1}).at(3)
|
88
|
+
$__side_effect_result__.should == %w{4 5 1 4 5 1}
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
context 'with a one-or-more parser' do
|
94
|
+
|
95
|
+
let(:nested) { Repeat[Match[/\d/], 1, nil] }
|
96
|
+
let(:code) { '|s| $__side_effect_result__ = s * 2' }
|
97
|
+
|
98
|
+
context 'when the nested parser matches' do
|
99
|
+
it 'applies the action to an array containing the matches' do
|
100
|
+
parsing('451a').should result_in(%w{4 5 1}).at(3)
|
101
|
+
$__side_effect_result__.should == %w{4 5 1 4 5 1}
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
context 'with a list parser' do
|
107
|
+
|
108
|
+
let(:nested) { ListParser[Match[/[[:digit:]]+/], Match[/,/], 2, 4] }
|
109
|
+
let(:code) { '$__side_effect_result__ = _.map {|s| s.to_i }' }
|
110
|
+
|
111
|
+
context 'when the nested parser matches' do
|
112
|
+
it 'applies the action to an array containing the matches' do
|
113
|
+
parsing('1,2,42').should result_in(["1", "2", "42"]).at(6)
|
114
|
+
$__side_effect_result__.should == [1, 2, 42]
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
context 'with a token parser' do
|
120
|
+
|
121
|
+
let(:nested) { Token[Match[/[[:digit:]]+/]] }
|
122
|
+
let(:code) { '|s| $__side_effect_result__ = s.to_i' }
|
123
|
+
|
124
|
+
context 'when the parser matches' do
|
125
|
+
it 'applies the action to the matched string' do
|
126
|
+
parsing('42 ').should result_in('42').at(2)
|
127
|
+
$__side_effect_result__.should == 42
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
131
|
+
|
132
|
+
context 'with a non-capturing parser' do
|
133
|
+
|
134
|
+
let(:nested) { Skip[Match[/\w+/]] }
|
135
|
+
let(:code) { '$__side_effect_result__ = 42' }
|
136
|
+
|
137
|
+
context 'when the parser matches' do
|
138
|
+
it 'applies the action with no arguments' do
|
139
|
+
parsing('abc123 ').should result_in(true).at(6)
|
140
|
+
$__side_effect_result__.should == 42
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|
144
|
+
|
145
|
+
context 'with a labeled parser' do
|
146
|
+
|
147
|
+
let(:nested) { Label[:word, Match[/[[:alpha:]]+/]] }
|
148
|
+
let(:code) { '$__side_effect_result__ = word * 2' }
|
149
|
+
|
150
|
+
context 'when the parser matches' do
|
151
|
+
it 'applies the action binding the label to the result' do
|
152
|
+
parsing('foo ').should result_in('foo').at(3)
|
153
|
+
$__side_effect_result__.should == 'foofoo'
|
154
|
+
end
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
context 'with a sequence of labeled parsers' do
|
159
|
+
|
160
|
+
let :nested do
|
161
|
+
Sequence[
|
162
|
+
Label[:left, Match[/[[:alpha:]]+/]],
|
163
|
+
Match[/\=/],
|
164
|
+
Label[:right, Match[/[[:digit:]]+/]]
|
165
|
+
]
|
166
|
+
end
|
167
|
+
|
168
|
+
let(:code) { '$__side_effect_result__ = "#{right} -> #{left}"' }
|
169
|
+
|
170
|
+
context 'when the parser matches' do
|
171
|
+
it 'applies the action binding the labels to the results' do
|
172
|
+
parsing('val=42 ').should result_in(['val', '=', '42']).at(6)
|
173
|
+
$__side_effect_result__.should == '42 -> val'
|
174
|
+
end
|
175
|
+
end
|
176
|
+
end
|
177
|
+
end
|
178
|
+
|
179
|
+
describe '#capturing?' do
|
180
|
+
|
181
|
+
let(:code) { '' }
|
182
|
+
|
183
|
+
context 'with a capturing parser' do
|
184
|
+
|
185
|
+
let(:nested) { Match[/\w+/] }
|
186
|
+
|
187
|
+
it 'is true' do
|
188
|
+
subject.should be_capturing
|
189
|
+
end
|
190
|
+
end
|
191
|
+
|
192
|
+
context 'with a non-capturing parser' do
|
193
|
+
|
194
|
+
let(:nested) { Skip[Match[/\s*/]] }
|
195
|
+
|
196
|
+
it 'is false' do
|
197
|
+
subject.should_not be_capturing
|
198
|
+
end
|
199
|
+
end
|
200
|
+
end
|
201
|
+
|
202
|
+
describe '#with_ws' do
|
203
|
+
|
204
|
+
let(:ws) { Match[/\s*/] }
|
205
|
+
let(:nested) { Match[/\w+/] }
|
206
|
+
let(:code) { '' }
|
207
|
+
|
208
|
+
it 'applies #with_ws to the nested parser' do
|
209
|
+
subject.with_ws(ws).
|
210
|
+
should == SideEffect[Sequence[Skip[ws], nested], code]
|
211
|
+
end
|
212
|
+
end
|
213
|
+
|
214
|
+
end
|
@@ -3,27 +3,38 @@ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
|
3
3
|
describe Skip do
|
4
4
|
include CombinatorParserSpecHelper
|
5
5
|
|
6
|
-
subject { Skip[
|
7
|
-
|
6
|
+
subject { Skip[nested] }
|
7
|
+
|
8
|
+
let(:nested) { Match[/\w+/] }
|
9
|
+
|
8
10
|
describe '#parse' do
|
9
|
-
|
11
|
+
|
10
12
|
context 'when the parser matches' do
|
11
13
|
it 'matches returning true' do
|
12
14
|
parsing('abc123 ').should result_in(true).at(6)
|
13
15
|
end
|
14
16
|
end
|
15
|
-
|
17
|
+
|
16
18
|
context 'when the parser fails' do
|
17
19
|
it 'fails' do
|
18
20
|
parsing(' ').should fail
|
19
21
|
end
|
20
22
|
end
|
21
23
|
end
|
22
|
-
|
24
|
+
|
23
25
|
describe '#capturing?' do
|
24
26
|
it 'is false' do
|
25
27
|
subject.should_not be_capturing
|
26
28
|
end
|
27
29
|
end
|
28
|
-
|
30
|
+
|
31
|
+
describe '#with_ws' do
|
32
|
+
|
33
|
+
let(:ws) { Match[/\s*/] }
|
34
|
+
|
35
|
+
it 'applies #with_ws to the nested parser' do
|
36
|
+
subject.with_ws(ws).should == Skip[Sequence[Skip[ws], nested]]
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
29
40
|
end
|
data/spec/rattler_spec.rb
CHANGED
@@ -13,6 +13,10 @@ module CompilerSpecHelper
|
|
13
13
|
RSpec::Matchers.define :parse do |source|
|
14
14
|
match do |parser_class|
|
15
15
|
parser = parser_class.new(source)
|
16
|
+
if @from
|
17
|
+
parser.pos = @from
|
18
|
+
@other_parser.pos = @from
|
19
|
+
end
|
16
20
|
@repeat ||= 1
|
17
21
|
actual_results = (1..@repeat).map { parser.parse or false }
|
18
22
|
if @other_parser
|
@@ -30,6 +34,10 @@ module CompilerSpecHelper
|
|
30
34
|
not (@wrong_result or @wrong_fail or @wrong_success)
|
31
35
|
end
|
32
36
|
|
37
|
+
chain :from do |pos|
|
38
|
+
@from = pos
|
39
|
+
end
|
40
|
+
|
33
41
|
chain :succeeding do |*args|
|
34
42
|
@repeat = args.shift unless args.empty?
|
35
43
|
@should_succeed = true
|
metadata
CHANGED
@@ -1,393 +1,241 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: rattler
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.5.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 4
|
9
|
-
- 2
|
10
|
-
version: 0.4.2
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Jason Arhart
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
date: 2011-03-17 00:00:00 -07:00
|
12
|
+
date: 2011-07-29 00:00:00.000000000 -07:00
|
19
13
|
default_executable: rtlr
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
type: :development
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
23
16
|
name: bundler
|
24
|
-
requirement: &
|
17
|
+
requirement: &24195900 !ruby/object:Gem::Requirement
|
25
18
|
none: false
|
26
|
-
requirements:
|
19
|
+
requirements:
|
27
20
|
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 23
|
30
|
-
segments:
|
31
|
-
- 1
|
32
|
-
- 0
|
33
|
-
- 0
|
21
|
+
- !ruby/object:Gem::Version
|
34
22
|
version: 1.0.0
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
23
|
type: :development
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: *24195900
|
26
|
+
- !ruby/object:Gem::Dependency
|
39
27
|
name: jeweler
|
40
|
-
requirement: &
|
28
|
+
requirement: &24195400 !ruby/object:Gem::Requirement
|
41
29
|
none: false
|
42
|
-
requirements:
|
30
|
+
requirements:
|
43
31
|
- - ~>
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
hash: 7
|
46
|
-
segments:
|
47
|
-
- 1
|
48
|
-
- 5
|
49
|
-
- 2
|
32
|
+
- !ruby/object:Gem::Version
|
50
33
|
version: 1.5.2
|
51
|
-
prerelease: false
|
52
|
-
version_requirements: *id002
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
34
|
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: *24195400
|
37
|
+
- !ruby/object:Gem::Dependency
|
55
38
|
name: rspec
|
56
|
-
requirement: &
|
39
|
+
requirement: &24194920 !ruby/object:Gem::Requirement
|
57
40
|
none: false
|
58
|
-
requirements:
|
59
|
-
- -
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
hash: 3
|
62
|
-
segments:
|
63
|
-
- 2
|
64
|
-
- 3
|
65
|
-
- 0
|
41
|
+
requirements:
|
42
|
+
- - ! '>='
|
43
|
+
- !ruby/object:Gem::Version
|
66
44
|
version: 2.3.0
|
67
|
-
prerelease: false
|
68
|
-
version_requirements: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
45
|
type: :development
|
46
|
+
prerelease: false
|
47
|
+
version_requirements: *24194920
|
48
|
+
- !ruby/object:Gem::Dependency
|
71
49
|
name: cucumber
|
72
|
-
requirement: &
|
50
|
+
requirement: &24194380 !ruby/object:Gem::Requirement
|
73
51
|
none: false
|
74
|
-
requirements:
|
75
|
-
- -
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
hash: 63
|
78
|
-
segments:
|
79
|
-
- 0
|
80
|
-
- 8
|
81
|
-
- 0
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
82
55
|
version: 0.8.0
|
83
|
-
prerelease: false
|
84
|
-
version_requirements: *id004
|
85
|
-
- !ruby/object:Gem::Dependency
|
86
56
|
type: :development
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: *24194380
|
59
|
+
- !ruby/object:Gem::Dependency
|
87
60
|
name: aruba
|
88
|
-
requirement: &
|
61
|
+
requirement: &24193860 !ruby/object:Gem::Requirement
|
89
62
|
none: false
|
90
|
-
requirements:
|
91
|
-
- -
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
hash: 19
|
94
|
-
segments:
|
95
|
-
- 0
|
96
|
-
- 3
|
97
|
-
- 0
|
63
|
+
requirements:
|
64
|
+
- - ! '>='
|
65
|
+
- !ruby/object:Gem::Version
|
98
66
|
version: 0.3.0
|
99
|
-
prerelease: false
|
100
|
-
version_requirements: *id005
|
101
|
-
- !ruby/object:Gem::Dependency
|
102
67
|
type: :development
|
68
|
+
prerelease: false
|
69
|
+
version_requirements: *24193860
|
70
|
+
- !ruby/object:Gem::Dependency
|
103
71
|
name: yard
|
104
|
-
requirement: &
|
72
|
+
requirement: &24193340 !ruby/object:Gem::Requirement
|
105
73
|
none: false
|
106
|
-
requirements:
|
107
|
-
- -
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
hash: 7
|
110
|
-
segments:
|
111
|
-
- 0
|
112
|
-
- 6
|
113
|
-
- 0
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
114
77
|
version: 0.6.0
|
115
|
-
prerelease: false
|
116
|
-
version_requirements: *id006
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
78
|
type: :development
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: *24193340
|
81
|
+
- !ruby/object:Gem::Dependency
|
119
82
|
name: watchr
|
120
|
-
requirement: &
|
83
|
+
requirement: &24192800 !ruby/object:Gem::Requirement
|
121
84
|
none: false
|
122
|
-
requirements:
|
123
|
-
- -
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
hash: 1
|
126
|
-
segments:
|
127
|
-
- 0
|
128
|
-
- 5
|
129
|
-
- 5
|
85
|
+
requirements:
|
86
|
+
- - ! '>='
|
87
|
+
- !ruby/object:Gem::Version
|
130
88
|
version: 0.5.5
|
131
|
-
prerelease: false
|
132
|
-
version_requirements: *id007
|
133
|
-
- !ruby/object:Gem::Dependency
|
134
89
|
type: :development
|
90
|
+
prerelease: false
|
91
|
+
version_requirements: *24192800
|
92
|
+
- !ruby/object:Gem::Dependency
|
135
93
|
name: ruby-graphviz
|
136
|
-
requirement: &
|
94
|
+
requirement: &24192240 !ruby/object:Gem::Requirement
|
137
95
|
none: false
|
138
|
-
requirements:
|
139
|
-
- -
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
hash: 55
|
142
|
-
segments:
|
143
|
-
- 0
|
144
|
-
- 9
|
145
|
-
- 6
|
96
|
+
requirements:
|
97
|
+
- - ! '>='
|
98
|
+
- !ruby/object:Gem::Version
|
146
99
|
version: 0.9.6
|
100
|
+
type: :development
|
147
101
|
prerelease: false
|
148
|
-
version_requirements: *
|
102
|
+
version_requirements: *24192240
|
149
103
|
description: Simple language recognition tool for Ruby based on packrat parsing
|
150
104
|
email: jarhart@gmail.com
|
151
|
-
executables:
|
105
|
+
executables:
|
152
106
|
- rtlr
|
153
107
|
extensions: []
|
154
|
-
|
155
|
-
extra_rdoc_files:
|
108
|
+
extra_rdoc_files:
|
156
109
|
- LICENSE.txt
|
157
110
|
- README.rdoc
|
158
|
-
files:
|
111
|
+
files:
|
159
112
|
- bin/rtlr
|
160
|
-
- bin/rtlr.compiled.rbc
|
161
113
|
- lib/rattler.rb
|
162
|
-
- lib/rattler.rbc
|
163
114
|
- lib/rattler/back_end.rb
|
164
|
-
- lib/rattler/back_end.rbc
|
165
115
|
- lib/rattler/back_end/compiler.rb
|
166
|
-
- lib/rattler/back_end/compiler.rbc
|
167
116
|
- lib/rattler/back_end/optimizer.rb
|
168
|
-
- lib/rattler/back_end/optimizer.rbc
|
169
117
|
- lib/rattler/back_end/optimizer/composite_reducing.rb
|
170
|
-
- lib/rattler/back_end/optimizer/composite_reducing.rbc
|
171
118
|
- lib/rattler/back_end/optimizer/flatten_choice.rb
|
172
|
-
- lib/rattler/back_end/optimizer/flatten_choice.rbc
|
173
119
|
- lib/rattler/back_end/optimizer/flatten_sequence.rb
|
174
|
-
- lib/rattler/back_end/optimizer/flatten_sequence.rbc
|
175
120
|
- lib/rattler/back_end/optimizer/flattening.rb
|
176
|
-
- lib/rattler/back_end/optimizer/flattening.rbc
|
177
121
|
- lib/rattler/back_end/optimizer/inline_regular_rules.rb
|
178
|
-
- lib/rattler/back_end/optimizer/inline_regular_rules.rbc
|
179
122
|
- lib/rattler/back_end/optimizer/join_match_capturing_sequence.rb
|
180
|
-
- lib/rattler/back_end/optimizer/join_match_capturing_sequence.rbc
|
181
123
|
- lib/rattler/back_end/optimizer/join_match_choice.rb
|
182
|
-
- lib/rattler/back_end/optimizer/join_match_choice.rbc
|
183
124
|
- lib/rattler/back_end/optimizer/join_match_matching_sequence.rb
|
184
|
-
- lib/rattler/back_end/optimizer/join_match_matching_sequence.rbc
|
185
125
|
- lib/rattler/back_end/optimizer/join_match_sequence.rb
|
186
|
-
- lib/rattler/back_end/optimizer/join_match_sequence.rbc
|
187
126
|
- lib/rattler/back_end/optimizer/join_predicate_bare_match.rb
|
188
|
-
- lib/rattler/back_end/optimizer/join_predicate_bare_match.rbc
|
189
127
|
- lib/rattler/back_end/optimizer/join_predicate_match.rb
|
190
|
-
- lib/rattler/back_end/optimizer/join_predicate_match.rbc
|
191
128
|
- lib/rattler/back_end/optimizer/join_predicate_nested_match.rb
|
192
|
-
- lib/rattler/back_end/optimizer/join_predicate_nested_match.rbc
|
193
129
|
- lib/rattler/back_end/optimizer/join_predicate_or_bare_match.rb
|
194
|
-
- lib/rattler/back_end/optimizer/join_predicate_or_bare_match.rbc
|
195
130
|
- lib/rattler/back_end/optimizer/join_predicate_or_match.rb
|
196
|
-
- lib/rattler/back_end/optimizer/join_predicate_or_match.rbc
|
197
131
|
- lib/rattler/back_end/optimizer/join_predicate_or_nested_match.rb
|
198
|
-
- lib/rattler/back_end/optimizer/join_predicate_or_nested_match.rbc
|
199
132
|
- lib/rattler/back_end/optimizer/match_joining.rb
|
200
|
-
- lib/rattler/back_end/optimizer/match_joining.rbc
|
201
133
|
- lib/rattler/back_end/optimizer/optimization.rb
|
202
|
-
- lib/rattler/back_end/optimizer/optimization.rbc
|
203
134
|
- lib/rattler/back_end/optimizer/optimization_context.rb
|
204
|
-
- lib/rattler/back_end/optimizer/optimization_context.rbc
|
205
135
|
- lib/rattler/back_end/optimizer/optimization_sequence.rb
|
206
|
-
- lib/rattler/back_end/optimizer/optimization_sequence.rbc
|
207
136
|
- lib/rattler/back_end/optimizer/optimize_children.rb
|
208
|
-
- lib/rattler/back_end/optimizer/optimize_children.rbc
|
209
137
|
- lib/rattler/back_end/optimizer/reduce_repeat_match.rb
|
210
|
-
- lib/rattler/back_end/optimizer/reduce_repeat_match.rbc
|
211
138
|
- lib/rattler/back_end/optimizer/remove_meaningless_wrapper.rb
|
212
|
-
- lib/rattler/back_end/optimizer/remove_meaningless_wrapper.rbc
|
213
139
|
- lib/rattler/back_end/optimizer/simplify_redundant_repeat.rb
|
214
|
-
- lib/rattler/back_end/optimizer/simplify_redundant_repeat.rbc
|
215
140
|
- lib/rattler/back_end/optimizer/simplify_token_match.rb
|
216
|
-
- lib/rattler/back_end/optimizer/
|
141
|
+
- lib/rattler/back_end/optimizer/specialize_repeat.rb
|
217
142
|
- lib/rattler/back_end/parser_generator.rb
|
218
|
-
- lib/rattler/back_end/parser_generator.rbc
|
219
143
|
- lib/rattler/back_end/parser_generator/apply_generator.rb
|
220
|
-
- lib/rattler/back_end/parser_generator/apply_generator.rbc
|
221
144
|
- lib/rattler/back_end/parser_generator/assert_generator.rb
|
222
|
-
- lib/rattler/back_end/parser_generator/assert_generator.rbc
|
223
145
|
- lib/rattler/back_end/parser_generator/back_reference_generator.rb
|
224
|
-
- lib/rattler/back_end/parser_generator/back_reference_generator.rbc
|
225
146
|
- lib/rattler/back_end/parser_generator/choice_generator.rb
|
226
|
-
- lib/rattler/back_end/parser_generator/
|
147
|
+
- lib/rattler/back_end/parser_generator/delegating_generator.rb
|
227
148
|
- lib/rattler/back_end/parser_generator/direct_action_generator.rb
|
228
|
-
- lib/rattler/back_end/parser_generator/direct_action_generator.rbc
|
229
149
|
- lib/rattler/back_end/parser_generator/disallow_generator.rb
|
230
|
-
- lib/rattler/back_end/parser_generator/disallow_generator.rbc
|
231
150
|
- lib/rattler/back_end/parser_generator/dispatch_action_generator.rb
|
232
|
-
- lib/rattler/back_end/parser_generator/
|
151
|
+
- lib/rattler/back_end/parser_generator/e_symbol_generator.rb
|
152
|
+
- lib/rattler/back_end/parser_generator/eof_generator.rb
|
233
153
|
- lib/rattler/back_end/parser_generator/expr_generator.rb
|
234
|
-
- lib/rattler/back_end/parser_generator/expr_generator.rbc
|
235
154
|
- lib/rattler/back_end/parser_generator/fail_generator.rb
|
236
|
-
- lib/rattler/back_end/parser_generator/fail_generator.rbc
|
237
155
|
- lib/rattler/back_end/parser_generator/gen_method_names.rb
|
238
|
-
- lib/rattler/back_end/parser_generator/
|
156
|
+
- lib/rattler/back_end/parser_generator/general_list_generator.rb
|
157
|
+
- lib/rattler/back_end/parser_generator/general_repeat_generator.rb
|
239
158
|
- lib/rattler/back_end/parser_generator/group_match.rb
|
240
|
-
- lib/rattler/back_end/parser_generator/group_match.rbc
|
241
159
|
- lib/rattler/back_end/parser_generator/group_match_generator.rb
|
242
|
-
- lib/rattler/back_end/parser_generator/group_match_generator.rbc
|
243
160
|
- lib/rattler/back_end/parser_generator/label_generator.rb
|
244
|
-
- lib/rattler/back_end/parser_generator/
|
245
|
-
- lib/rattler/back_end/parser_generator/
|
246
|
-
- lib/rattler/back_end/parser_generator/list1_generator.rbc
|
247
|
-
- lib/rattler/back_end/parser_generator/list_generating.rb
|
248
|
-
- lib/rattler/back_end/parser_generator/list_generating.rbc
|
161
|
+
- lib/rattler/back_end/parser_generator/list0_generating.rb
|
162
|
+
- lib/rattler/back_end/parser_generator/list1_generating.rb
|
249
163
|
- lib/rattler/back_end/parser_generator/list_generator.rb
|
250
|
-
- lib/rattler/back_end/parser_generator/list_generator.rbc
|
251
164
|
- lib/rattler/back_end/parser_generator/match_generator.rb
|
252
|
-
- lib/rattler/back_end/parser_generator/match_generator.rbc
|
253
165
|
- lib/rattler/back_end/parser_generator/nested.rb
|
254
|
-
- lib/rattler/back_end/parser_generator/
|
255
|
-
- lib/rattler/back_end/parser_generator/
|
256
|
-
- lib/rattler/back_end/parser_generator/one_or_more_generator.rbc
|
257
|
-
- lib/rattler/back_end/parser_generator/optional_generator.rb
|
258
|
-
- lib/rattler/back_end/parser_generator/optional_generator.rbc
|
166
|
+
- lib/rattler/back_end/parser_generator/one_or_more_generating.rb
|
167
|
+
- lib/rattler/back_end/parser_generator/optional_generating.rb
|
259
168
|
- lib/rattler/back_end/parser_generator/predicate_propogating.rb
|
260
|
-
- lib/rattler/back_end/parser_generator/
|
261
|
-
- lib/rattler/back_end/parser_generator/repeat_generating.rb
|
262
|
-
- lib/rattler/back_end/parser_generator/repeat_generating.rbc
|
169
|
+
- lib/rattler/back_end/parser_generator/repeat_generator.rb
|
263
170
|
- lib/rattler/back_end/parser_generator/rule_generator.rb
|
264
|
-
- lib/rattler/back_end/parser_generator/rule_generator.rbc
|
265
171
|
- lib/rattler/back_end/parser_generator/rule_set_generator.rb
|
266
|
-
- lib/rattler/back_end/parser_generator/rule_set_generator.rbc
|
267
172
|
- lib/rattler/back_end/parser_generator/sequence_generator.rb
|
268
|
-
- lib/rattler/back_end/parser_generator/sequence_generator.rbc
|
269
173
|
- lib/rattler/back_end/parser_generator/skip_generator.rb
|
270
|
-
- lib/rattler/back_end/parser_generator/skip_generator.rbc
|
271
174
|
- lib/rattler/back_end/parser_generator/skip_propogating.rb
|
272
|
-
- lib/rattler/back_end/parser_generator/skip_propogating.rbc
|
273
175
|
- lib/rattler/back_end/parser_generator/sub_generating.rb
|
274
|
-
- lib/rattler/back_end/parser_generator/sub_generating.rbc
|
275
176
|
- lib/rattler/back_end/parser_generator/token_generator.rb
|
276
|
-
- lib/rattler/back_end/parser_generator/token_generator.rbc
|
277
177
|
- lib/rattler/back_end/parser_generator/token_propogating.rb
|
278
|
-
- lib/rattler/back_end/parser_generator/token_propogating.rbc
|
279
178
|
- lib/rattler/back_end/parser_generator/top_level.rb
|
280
|
-
- lib/rattler/back_end/parser_generator/
|
281
|
-
- lib/rattler/back_end/parser_generator/zero_or_more_generator.rb
|
282
|
-
- lib/rattler/back_end/parser_generator/zero_or_more_generator.rbc
|
179
|
+
- lib/rattler/back_end/parser_generator/zero_or_more_generating.rb
|
283
180
|
- lib/rattler/back_end/ruby_generator.rb
|
284
|
-
- lib/rattler/back_end/ruby_generator.rbc
|
285
181
|
- lib/rattler/grammar.rb
|
286
|
-
- lib/rattler/grammar.rbc
|
287
182
|
- lib/rattler/grammar/analysis.rb
|
288
|
-
- lib/rattler/grammar/analysis.rbc
|
289
183
|
- lib/rattler/grammar/grammar.rb
|
290
|
-
- lib/rattler/grammar/grammar.rbc
|
291
184
|
- lib/rattler/grammar/grammar_dsl.rb
|
292
|
-
- lib/rattler/grammar/grammar_dsl.rbc
|
293
185
|
- lib/rattler/grammar/grammar_parser.rb
|
294
|
-
- lib/rattler/grammar/grammar_parser.rbc
|
295
186
|
- lib/rattler/grammar/metagrammar.rb
|
296
|
-
- lib/rattler/grammar/metagrammar.rbc
|
297
187
|
- lib/rattler/grammar/rattler.rtlr
|
298
188
|
- lib/rattler/parsers.rb
|
299
|
-
- lib/rattler/parsers.rbc
|
300
189
|
- lib/rattler/parsers/action_code.rb
|
301
|
-
- lib/rattler/parsers/action_code.rbc
|
302
190
|
- lib/rattler/parsers/apply.rb
|
303
|
-
- lib/rattler/parsers/apply.rbc
|
304
191
|
- lib/rattler/parsers/assert.rb
|
305
|
-
- lib/rattler/parsers/
|
192
|
+
- lib/rattler/parsers/assert_code.rb
|
193
|
+
- lib/rattler/parsers/atomic.rb
|
306
194
|
- lib/rattler/parsers/back_reference.rb
|
307
|
-
- lib/rattler/parsers/back_reference.rbc
|
308
195
|
- lib/rattler/parsers/choice.rb
|
309
|
-
- lib/rattler/parsers/choice.rbc
|
310
196
|
- lib/rattler/parsers/combinator_parser.rb
|
311
|
-
- lib/rattler/parsers/combinator_parser.rbc
|
312
197
|
- lib/rattler/parsers/combining.rb
|
313
|
-
- lib/rattler/parsers/combining.rbc
|
314
198
|
- lib/rattler/parsers/direct_action.rb
|
315
|
-
- lib/rattler/parsers/direct_action.rbc
|
316
199
|
- lib/rattler/parsers/disallow.rb
|
317
|
-
- lib/rattler/parsers/
|
200
|
+
- lib/rattler/parsers/disallow_code.rb
|
318
201
|
- lib/rattler/parsers/dispatch_action.rb
|
319
|
-
- lib/rattler/parsers/
|
202
|
+
- lib/rattler/parsers/e_symbol.rb
|
203
|
+
- lib/rattler/parsers/effect_code.rb
|
320
204
|
- lib/rattler/parsers/eof.rb
|
321
|
-
- lib/rattler/parsers/eof.rbc
|
322
205
|
- lib/rattler/parsers/fail.rb
|
323
|
-
- lib/rattler/parsers/fail.rbc
|
324
206
|
- lib/rattler/parsers/label.rb
|
325
|
-
- lib/rattler/parsers/label.rbc
|
326
|
-
- lib/rattler/parsers/list.rbc
|
327
|
-
- lib/rattler/parsers/list0.rb
|
328
|
-
- lib/rattler/parsers/list0.rbc
|
329
|
-
- lib/rattler/parsers/list1.rb
|
330
|
-
- lib/rattler/parsers/list1.rbc
|
331
207
|
- lib/rattler/parsers/list_parser.rb
|
332
|
-
- lib/rattler/parsers/list_parser.rbc
|
333
208
|
- lib/rattler/parsers/match.rb
|
334
|
-
- lib/rattler/parsers/match.rbc
|
335
209
|
- lib/rattler/parsers/node_code.rb
|
336
|
-
- lib/rattler/parsers/node_code.rbc
|
337
|
-
- lib/rattler/parsers/one_or_more.rb
|
338
|
-
- lib/rattler/parsers/one_or_more.rbc
|
339
|
-
- lib/rattler/parsers/optional.rb
|
340
|
-
- lib/rattler/parsers/optional.rbc
|
341
210
|
- lib/rattler/parsers/parser.rb
|
342
|
-
- lib/rattler/parsers/parser.rbc
|
343
211
|
- lib/rattler/parsers/parser_dsl.rb
|
344
|
-
- lib/rattler/parsers/parser_dsl.rbc
|
345
212
|
- lib/rattler/parsers/predicate.rb
|
346
|
-
- lib/rattler/parsers/
|
213
|
+
- lib/rattler/parsers/repeat.rb
|
347
214
|
- lib/rattler/parsers/rule.rb
|
348
|
-
- lib/rattler/parsers/rule.rbc
|
349
215
|
- lib/rattler/parsers/rule_set.rb
|
350
|
-
- lib/rattler/parsers/
|
216
|
+
- lib/rattler/parsers/semantic_assert.rb
|
217
|
+
- lib/rattler/parsers/semantic_disallow.rb
|
351
218
|
- lib/rattler/parsers/sequence.rb
|
352
|
-
- lib/rattler/parsers/
|
219
|
+
- lib/rattler/parsers/side_effect.rb
|
353
220
|
- lib/rattler/parsers/skip.rb
|
354
|
-
- lib/rattler/parsers/skip.rbc
|
355
221
|
- lib/rattler/parsers/token.rb
|
356
|
-
- lib/rattler/parsers/token.rbc
|
357
|
-
- lib/rattler/parsers/zero_or_more.rb
|
358
|
-
- lib/rattler/parsers/zero_or_more.rbc
|
359
222
|
- lib/rattler/runner.rb
|
360
|
-
- lib/rattler/runner.rbc
|
361
223
|
- lib/rattler/runtime.rb
|
362
|
-
- lib/rattler/runtime.rbc
|
363
224
|
- lib/rattler/runtime/extended_packrat_parser.rb
|
364
|
-
- lib/rattler/runtime/extended_packrat_parser.rbc
|
365
225
|
- lib/rattler/runtime/packrat_parser.rb
|
366
|
-
- lib/rattler/runtime/packrat_parser.rbc
|
367
226
|
- lib/rattler/runtime/parse_failure.rb
|
368
|
-
- lib/rattler/runtime/parse_failure.rbc
|
369
227
|
- lib/rattler/runtime/parse_node.rb
|
370
|
-
- lib/rattler/runtime/parse_node.rbc
|
371
228
|
- lib/rattler/runtime/parser.rb
|
372
|
-
- lib/rattler/runtime/parser.rbc
|
373
229
|
- lib/rattler/runtime/parser_helper.rb
|
374
|
-
- lib/rattler/runtime/parser_helper.rbc
|
375
230
|
- lib/rattler/runtime/recursive_descent_parser.rb
|
376
|
-
- lib/rattler/runtime/recursive_descent_parser.rbc
|
377
231
|
- lib/rattler/runtime/syntax_error.rb
|
378
232
|
- lib/rattler/util.rb
|
379
|
-
- lib/rattler/util.rbc
|
380
233
|
- lib/rattler/util/graphviz.rb
|
381
|
-
- lib/rattler/util/graphviz.rbc
|
382
234
|
- lib/rattler/util/graphviz/digraph_builder.rb
|
383
235
|
- lib/rattler/util/graphviz/node_builder.rb
|
384
|
-
- lib/rattler/util/graphviz/node_builder.rbc
|
385
236
|
- lib/rattler/util/line_counter.rb
|
386
|
-
- lib/rattler/util/line_counter.rbc
|
387
237
|
- lib/rattler/util/node.rb
|
388
|
-
- lib/rattler/util/node.rbc
|
389
238
|
- lib/rattler/util/parser_spec_helper.rb
|
390
|
-
- lib/rattler/util/parser_spec_helper.rbc
|
391
239
|
- LICENSE.txt
|
392
240
|
- README.rdoc
|
393
241
|
- features/command_line/dest_option.feature
|
@@ -398,20 +246,25 @@ files:
|
|
398
246
|
- features/grammar/back_reference.feature
|
399
247
|
- features/grammar/character_class.feature
|
400
248
|
- features/grammar/comments.feature
|
249
|
+
- features/grammar/e_symbol.feature
|
401
250
|
- features/grammar/eof.feature
|
402
251
|
- features/grammar/fail.feature
|
403
252
|
- features/grammar/labels.feature
|
404
253
|
- features/grammar/list_matching.feature
|
405
254
|
- features/grammar/literal.feature
|
406
255
|
- features/grammar/negative_lookahead.feature
|
256
|
+
- features/grammar/negative_semantic_predicate.feature
|
407
257
|
- features/grammar/node_action.feature
|
408
258
|
- features/grammar/nonterminal.feature
|
409
259
|
- features/grammar/one_or_more.feature
|
410
260
|
- features/grammar/optional.feature
|
411
261
|
- features/grammar/ordered_choice.feature
|
412
262
|
- features/grammar/positive_lookahead.feature
|
263
|
+
- features/grammar/positive_semantic_predicate.feature
|
413
264
|
- features/grammar/posix_class.feature
|
265
|
+
- features/grammar/repeat.feature
|
414
266
|
- features/grammar/sequence.feature
|
267
|
+
- features/grammar/side_effect.feature
|
415
268
|
- features/grammar/skip_operator.feature
|
416
269
|
- features/grammar/start_rule.feature
|
417
270
|
- features/grammar/symantic_action.feature
|
@@ -420,211 +273,134 @@ files:
|
|
420
273
|
- features/grammar/word_literal.feature
|
421
274
|
- features/grammar/zero_or_more.feature
|
422
275
|
- features/step_definitions/cli_steps.rb
|
423
|
-
- features/step_definitions/cli_steps.rbc
|
424
276
|
- features/step_definitions/grammar_steps.rb
|
425
|
-
- features/step_definitions/grammar_steps.rbc
|
426
277
|
- features/support/env.rb
|
427
|
-
-
|
278
|
+
- spec/rattler/back_end/assert_compiler_examples.rb
|
428
279
|
- spec/rattler/back_end/compiler_spec.rb
|
429
|
-
- spec/rattler/back_end/
|
280
|
+
- spec/rattler/back_end/direct_action_compiler_examples.rb
|
281
|
+
- spec/rattler/back_end/disallow_compiler_examples.rb
|
282
|
+
- spec/rattler/back_end/dispatch_action_compiler_examples.rb
|
430
283
|
- spec/rattler/back_end/optimizer/flatten_choice_spec.rb
|
431
|
-
- spec/rattler/back_end/optimizer/flatten_choice_spec.rbc
|
432
284
|
- spec/rattler/back_end/optimizer/flatten_sequence_spec.rb
|
433
|
-
- spec/rattler/back_end/optimizer/flatten_sequence_spec.rbc
|
434
285
|
- spec/rattler/back_end/optimizer/inline_regular_rules_spec.rb
|
435
|
-
- spec/rattler/back_end/optimizer/inline_regular_rules_spec.rbc
|
436
286
|
- spec/rattler/back_end/optimizer/join_match_capturing_sequence_spec.rb
|
437
|
-
- spec/rattler/back_end/optimizer/join_match_capturing_sequence_spec.rbc
|
438
287
|
- spec/rattler/back_end/optimizer/join_match_choice_spec.rb
|
439
|
-
- spec/rattler/back_end/optimizer/join_match_choice_spec.rbc
|
440
288
|
- spec/rattler/back_end/optimizer/join_match_matching_sequence_spec.rb
|
441
|
-
- spec/rattler/back_end/optimizer/join_match_matching_sequence_spec.rbc
|
442
289
|
- spec/rattler/back_end/optimizer/join_predicate_bare_match_spec.rb
|
443
|
-
- spec/rattler/back_end/optimizer/join_predicate_bare_match_spec.rbc
|
444
290
|
- spec/rattler/back_end/optimizer/join_predicate_nested_match_spec.rb
|
445
|
-
- spec/rattler/back_end/optimizer/join_predicate_nested_match_spec.rbc
|
446
291
|
- spec/rattler/back_end/optimizer/join_predicate_or_bare_match_spec.rb
|
447
|
-
- spec/rattler/back_end/optimizer/join_predicate_or_bare_match_spec.rbc
|
448
292
|
- spec/rattler/back_end/optimizer/join_predicate_or_nested_match_spec.rb
|
449
|
-
- spec/rattler/back_end/optimizer/join_predicate_or_nested_match_spec.rbc
|
450
293
|
- spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rb
|
451
|
-
- spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rbc
|
452
294
|
- spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rb
|
453
|
-
- spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rbc
|
454
295
|
- spec/rattler/back_end/optimizer/simplify_token_match_spec.rb
|
455
|
-
- spec/rattler/back_end/optimizer/simplify_token_match_spec.rbc
|
456
296
|
- spec/rattler/back_end/optimizer_spec.rb
|
457
|
-
- spec/rattler/back_end/optimizer_spec.rbc
|
458
297
|
- spec/rattler/back_end/parser_generator/apply_generator_spec.rb
|
459
|
-
- spec/rattler/back_end/parser_generator/apply_generator_spec.rbc
|
460
298
|
- spec/rattler/back_end/parser_generator/assert_generator_spec.rb
|
461
|
-
- spec/rattler/back_end/parser_generator/assert_generator_spec.rbc
|
462
299
|
- spec/rattler/back_end/parser_generator/back_reference_generator_spec.rb
|
463
|
-
- spec/rattler/back_end/parser_generator/back_reference_generator_spec.rbc
|
464
300
|
- spec/rattler/back_end/parser_generator/choice_generator_spec.rb
|
465
|
-
- spec/rattler/back_end/parser_generator/choice_generator_spec.rbc
|
466
301
|
- spec/rattler/back_end/parser_generator/direct_action_generator_spec.rb
|
467
|
-
- spec/rattler/back_end/parser_generator/direct_action_generator_spec.rbc
|
468
302
|
- spec/rattler/back_end/parser_generator/disallow_generator_spec.rb
|
469
|
-
- spec/rattler/back_end/parser_generator/disallow_generator_spec.rbc
|
470
303
|
- spec/rattler/back_end/parser_generator/dispatch_action_generator_spec.rb
|
471
|
-
- spec/rattler/back_end/parser_generator/
|
304
|
+
- spec/rattler/back_end/parser_generator/e_symbol_generator_spec.rb
|
305
|
+
- spec/rattler/back_end/parser_generator/eof_generator_spec.rb
|
472
306
|
- spec/rattler/back_end/parser_generator/fail_generator_spec.rb
|
473
|
-
- spec/rattler/back_end/parser_generator/fail_generator_spec.rbc
|
474
307
|
- spec/rattler/back_end/parser_generator/group_match_generator_spec.rb
|
475
|
-
- spec/rattler/back_end/parser_generator/group_match_generator_spec.rbc
|
476
308
|
- spec/rattler/back_end/parser_generator/group_match_spec.rb
|
477
|
-
- spec/rattler/back_end/parser_generator/group_match_spec.rbc
|
478
309
|
- spec/rattler/back_end/parser_generator/label_generator_spec.rb
|
479
|
-
- spec/rattler/back_end/parser_generator/
|
480
|
-
- spec/rattler/back_end/parser_generator/
|
481
|
-
- spec/rattler/back_end/parser_generator/list1_generator_spec.rbc
|
310
|
+
- spec/rattler/back_end/parser_generator/list0_generator_examples.rb
|
311
|
+
- spec/rattler/back_end/parser_generator/list1_generator_examples.rb
|
482
312
|
- spec/rattler/back_end/parser_generator/list_generator_spec.rb
|
483
|
-
- spec/rattler/back_end/parser_generator/list_generator_spec.rbc
|
484
313
|
- spec/rattler/back_end/parser_generator/match_generator_spec.rb
|
485
|
-
- spec/rattler/back_end/parser_generator/
|
486
|
-
- spec/rattler/back_end/parser_generator/
|
487
|
-
- spec/rattler/back_end/parser_generator/
|
488
|
-
- spec/rattler/back_end/parser_generator/optional_generator_spec.rb
|
489
|
-
- spec/rattler/back_end/parser_generator/optional_generator_spec.rbc
|
314
|
+
- spec/rattler/back_end/parser_generator/one_or_more_generator_examples.rb
|
315
|
+
- spec/rattler/back_end/parser_generator/optional_generator_examples.rb
|
316
|
+
- spec/rattler/back_end/parser_generator/repeat_generator_spec.rb
|
490
317
|
- spec/rattler/back_end/parser_generator/rule_generator_spec.rb
|
491
|
-
- spec/rattler/back_end/parser_generator/rule_generator_spec.rbc
|
492
318
|
- spec/rattler/back_end/parser_generator/rule_set_generator_spec.rb
|
493
|
-
- spec/rattler/back_end/parser_generator/rule_set_generator_spec.rbc
|
494
319
|
- spec/rattler/back_end/parser_generator/sequence_generator_spec.rb
|
495
|
-
- spec/rattler/back_end/parser_generator/sequence_generator_spec.rbc
|
496
320
|
- spec/rattler/back_end/parser_generator/skip_generator_spec.rb
|
497
|
-
- spec/rattler/back_end/parser_generator/skip_generator_spec.rbc
|
498
321
|
- spec/rattler/back_end/parser_generator/token_generator_spec.rb
|
499
|
-
- spec/rattler/back_end/parser_generator/
|
500
|
-
- spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rb
|
501
|
-
- spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rbc
|
322
|
+
- spec/rattler/back_end/parser_generator/zero_or_more_generator_examples.rb
|
502
323
|
- spec/rattler/back_end/ruby_generator_spec.rb
|
503
|
-
- spec/rattler/back_end/
|
324
|
+
- spec/rattler/back_end/semantic_assert_compiler_examples.rb
|
325
|
+
- spec/rattler/back_end/semantic_disallow_compiler_examples.rb
|
504
326
|
- spec/rattler/back_end/shared_compiler_examples.rb
|
505
|
-
- spec/rattler/back_end/
|
327
|
+
- spec/rattler/back_end/side_effect_compiler_examples.rb
|
328
|
+
- spec/rattler/back_end/skip_compiler_examples.rb
|
329
|
+
- spec/rattler/back_end/token_compiler_examples.rb
|
506
330
|
- spec/rattler/grammar/analysis_spec.rb
|
507
|
-
- spec/rattler/grammar/analysis_spec.rbc
|
508
331
|
- spec/rattler/grammar/grammar_parser_spec.rb
|
509
|
-
- spec/rattler/grammar/grammar_parser_spec.rbc
|
510
332
|
- spec/rattler/grammar/grammar_spec.rb
|
511
|
-
- spec/rattler/grammar/grammar_spec.rbc
|
512
333
|
- spec/rattler/parsers/action_code_spec.rb
|
513
|
-
- spec/rattler/parsers/action_code_spec.rbc
|
514
334
|
- spec/rattler/parsers/apply_spec.rb
|
515
|
-
- spec/rattler/parsers/apply_spec.rbc
|
516
335
|
- spec/rattler/parsers/assert_spec.rb
|
517
|
-
- spec/rattler/parsers/assert_spec.rbc
|
518
336
|
- spec/rattler/parsers/back_reference_spec.rb
|
519
|
-
- spec/rattler/parsers/back_reference_spec.rbc
|
520
337
|
- spec/rattler/parsers/choice_spec.rb
|
521
|
-
- spec/rattler/parsers/choice_spec.rbc
|
522
338
|
- spec/rattler/parsers/combinator_parser_spec.rb
|
523
|
-
- spec/rattler/parsers/combinator_parser_spec.rbc
|
524
339
|
- spec/rattler/parsers/direct_action_spec.rb
|
525
|
-
- spec/rattler/parsers/direct_action_spec.rbc
|
526
340
|
- spec/rattler/parsers/disallow_spec.rb
|
527
|
-
- spec/rattler/parsers/disallow_spec.rbc
|
528
341
|
- spec/rattler/parsers/dispatch_action_spec.rb
|
529
|
-
- spec/rattler/parsers/
|
342
|
+
- spec/rattler/parsers/e_symbol_spec.rb
|
530
343
|
- spec/rattler/parsers/eof_spec.rb
|
531
|
-
- spec/rattler/parsers/eof_spec.rbc
|
532
344
|
- spec/rattler/parsers/fail_spec.rb
|
533
|
-
- spec/rattler/parsers/fail_spec.rbc
|
534
345
|
- spec/rattler/parsers/label_spec.rb
|
535
|
-
- spec/rattler/parsers/
|
536
|
-
- spec/rattler/parsers/list0_spec.rb
|
537
|
-
- spec/rattler/parsers/list0_spec.rbc
|
538
|
-
- spec/rattler/parsers/list1_spec.rb
|
539
|
-
- spec/rattler/parsers/list1_spec.rbc
|
540
|
-
- spec/rattler/parsers/list_spec.rbc
|
346
|
+
- spec/rattler/parsers/list_parser_spec.rb
|
541
347
|
- spec/rattler/parsers/match_spec.rb
|
542
|
-
- spec/rattler/parsers/match_spec.rbc
|
543
348
|
- spec/rattler/parsers/node_code_spec.rb
|
544
|
-
- spec/rattler/parsers/node_code_spec.rbc
|
545
|
-
- spec/rattler/parsers/one_or_more_spec.rb
|
546
|
-
- spec/rattler/parsers/one_or_more_spec.rbc
|
547
|
-
- spec/rattler/parsers/optional_spec.rb
|
548
|
-
- spec/rattler/parsers/optional_spec.rbc
|
549
349
|
- spec/rattler/parsers/parser_dsl_spec.rb
|
550
|
-
- spec/rattler/parsers/
|
350
|
+
- spec/rattler/parsers/repeat_spec.rb
|
551
351
|
- spec/rattler/parsers/rule_set_spec.rb
|
552
|
-
- spec/rattler/parsers/
|
352
|
+
- spec/rattler/parsers/semantic_assert_spec.rb
|
353
|
+
- spec/rattler/parsers/semantic_disallow_spec.rb
|
553
354
|
- spec/rattler/parsers/sequence_spec.rb
|
554
|
-
- spec/rattler/parsers/
|
355
|
+
- spec/rattler/parsers/side_effect_spec.rb
|
555
356
|
- spec/rattler/parsers/skip_spec.rb
|
556
|
-
- spec/rattler/parsers/skip_spec.rbc
|
557
357
|
- spec/rattler/parsers/token_spec.rb
|
558
|
-
- spec/rattler/parsers/token_spec.rbc
|
559
|
-
- spec/rattler/parsers/zero_or_more_spec.rb
|
560
|
-
- spec/rattler/parsers/zero_or_more_spec.rbc
|
561
358
|
- spec/rattler/runtime/extended_packrat_parser_spec.rb
|
562
|
-
- spec/rattler/runtime/extended_packrat_parser_spec.rbc
|
563
359
|
- spec/rattler/runtime/packrat_parser_spec.rb
|
564
|
-
- spec/rattler/runtime/packrat_parser_spec.rbc
|
565
360
|
- spec/rattler/runtime/parse_failure_spec.rb
|
566
|
-
- spec/rattler/runtime/parse_failure_spec.rbc
|
567
361
|
- spec/rattler/runtime/parse_node_spec.rb
|
568
|
-
- spec/rattler/runtime/parse_node_spec.rbc
|
569
362
|
- spec/rattler/runtime/parser_spec.rb
|
570
|
-
- spec/rattler/runtime/parser_spec.rbc
|
571
363
|
- spec/rattler/runtime/recursive_descent_parser_spec.rb
|
572
|
-
- spec/rattler/runtime/recursive_descent_parser_spec.rbc
|
573
364
|
- spec/rattler/runtime/shared_parser_examples.rb
|
574
|
-
- spec/rattler/runtime/shared_parser_examples.rbc
|
575
365
|
- spec/rattler/util/graphviz/node_builder_spec.rb
|
576
|
-
- spec/rattler/util/graphviz/node_builder_spec.rbc
|
577
366
|
- spec/rattler/util/line_counter_spec.rb
|
578
|
-
- spec/rattler/util/line_counter_spec.rbc
|
579
367
|
- spec/rattler/util/node_spec.rb
|
580
|
-
- spec/rattler/util/node_spec.rbc
|
581
368
|
- spec/rattler_spec.rb
|
582
|
-
- spec/rattler_spec.rbc
|
583
369
|
- spec/spec_helper.rb
|
584
|
-
- spec/spec_helper.rbc
|
585
370
|
- spec/support/combinator_parser_spec_helper.rb
|
586
|
-
- spec/support/combinator_parser_spec_helper.rbc
|
587
371
|
- spec/support/compiler_spec_helper.rb
|
588
|
-
- spec/support/compiler_spec_helper.rbc
|
589
372
|
- spec/support/parser_generator_spec_helper.rb
|
590
|
-
- spec/support/parser_generator_spec_helper.rbc
|
591
373
|
- spec/support/runtime_parser_spec_helper.rb
|
592
|
-
- spec/support/runtime_parser_spec_helper.rbc
|
593
374
|
has_rdoc: true
|
594
375
|
homepage: http://github.com/jarhart/rattler
|
595
|
-
licenses:
|
376
|
+
licenses:
|
596
377
|
- MIT
|
597
378
|
post_install_message:
|
598
379
|
rdoc_options: []
|
599
|
-
|
600
|
-
require_paths:
|
380
|
+
require_paths:
|
601
381
|
- lib
|
602
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
382
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
603
383
|
none: false
|
604
|
-
requirements:
|
605
|
-
- -
|
606
|
-
- !ruby/object:Gem::Version
|
607
|
-
|
608
|
-
segments:
|
384
|
+
requirements:
|
385
|
+
- - ! '>='
|
386
|
+
- !ruby/object:Gem::Version
|
387
|
+
version: '0'
|
388
|
+
segments:
|
609
389
|
- 0
|
610
|
-
|
611
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
390
|
+
hash: -304185397942742836
|
391
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
612
392
|
none: false
|
613
|
-
requirements:
|
614
|
-
- -
|
615
|
-
- !ruby/object:Gem::Version
|
616
|
-
|
617
|
-
segments:
|
618
|
-
- 0
|
619
|
-
version: "0"
|
393
|
+
requirements:
|
394
|
+
- - ! '>='
|
395
|
+
- !ruby/object:Gem::Version
|
396
|
+
version: '0'
|
620
397
|
requirements: []
|
621
|
-
|
622
398
|
rubyforge_project:
|
623
|
-
rubygems_version: 1.
|
399
|
+
rubygems_version: 1.6.2
|
624
400
|
signing_key:
|
625
401
|
specification_version: 3
|
626
402
|
summary: Ruby Tool for Language Recognition
|
627
|
-
test_files:
|
403
|
+
test_files:
|
628
404
|
- features/command_line/dest_option.feature
|
629
405
|
- features/command_line/lib_option.feature
|
630
406
|
- features/command_line/output_option.feature
|
@@ -633,20 +409,25 @@ test_files:
|
|
633
409
|
- features/grammar/back_reference.feature
|
634
410
|
- features/grammar/character_class.feature
|
635
411
|
- features/grammar/comments.feature
|
412
|
+
- features/grammar/e_symbol.feature
|
636
413
|
- features/grammar/eof.feature
|
637
414
|
- features/grammar/fail.feature
|
638
415
|
- features/grammar/labels.feature
|
639
416
|
- features/grammar/list_matching.feature
|
640
417
|
- features/grammar/literal.feature
|
641
418
|
- features/grammar/negative_lookahead.feature
|
419
|
+
- features/grammar/negative_semantic_predicate.feature
|
642
420
|
- features/grammar/node_action.feature
|
643
421
|
- features/grammar/nonterminal.feature
|
644
422
|
- features/grammar/one_or_more.feature
|
645
423
|
- features/grammar/optional.feature
|
646
424
|
- features/grammar/ordered_choice.feature
|
647
425
|
- features/grammar/positive_lookahead.feature
|
426
|
+
- features/grammar/positive_semantic_predicate.feature
|
648
427
|
- features/grammar/posix_class.feature
|
428
|
+
- features/grammar/repeat.feature
|
649
429
|
- features/grammar/sequence.feature
|
430
|
+
- features/grammar/side_effect.feature
|
650
431
|
- features/grammar/skip_operator.feature
|
651
432
|
- features/grammar/start_rule.feature
|
652
433
|
- features/grammar/symantic_action.feature
|
@@ -655,173 +436,101 @@ test_files:
|
|
655
436
|
- features/grammar/word_literal.feature
|
656
437
|
- features/grammar/zero_or_more.feature
|
657
438
|
- features/step_definitions/cli_steps.rb
|
658
|
-
- features/step_definitions/cli_steps.rbc
|
659
439
|
- features/step_definitions/grammar_steps.rb
|
660
|
-
- features/step_definitions/grammar_steps.rbc
|
661
440
|
- features/support/env.rb
|
662
|
-
-
|
441
|
+
- spec/rattler/back_end/assert_compiler_examples.rb
|
663
442
|
- spec/rattler/back_end/compiler_spec.rb
|
664
|
-
- spec/rattler/back_end/
|
443
|
+
- spec/rattler/back_end/direct_action_compiler_examples.rb
|
444
|
+
- spec/rattler/back_end/disallow_compiler_examples.rb
|
445
|
+
- spec/rattler/back_end/dispatch_action_compiler_examples.rb
|
665
446
|
- spec/rattler/back_end/optimizer/flatten_choice_spec.rb
|
666
|
-
- spec/rattler/back_end/optimizer/flatten_choice_spec.rbc
|
667
447
|
- spec/rattler/back_end/optimizer/flatten_sequence_spec.rb
|
668
|
-
- spec/rattler/back_end/optimizer/flatten_sequence_spec.rbc
|
669
448
|
- spec/rattler/back_end/optimizer/inline_regular_rules_spec.rb
|
670
|
-
- spec/rattler/back_end/optimizer/inline_regular_rules_spec.rbc
|
671
449
|
- spec/rattler/back_end/optimizer/join_match_capturing_sequence_spec.rb
|
672
|
-
- spec/rattler/back_end/optimizer/join_match_capturing_sequence_spec.rbc
|
673
450
|
- spec/rattler/back_end/optimizer/join_match_choice_spec.rb
|
674
|
-
- spec/rattler/back_end/optimizer/join_match_choice_spec.rbc
|
675
451
|
- spec/rattler/back_end/optimizer/join_match_matching_sequence_spec.rb
|
676
|
-
- spec/rattler/back_end/optimizer/join_match_matching_sequence_spec.rbc
|
677
452
|
- spec/rattler/back_end/optimizer/join_predicate_bare_match_spec.rb
|
678
|
-
- spec/rattler/back_end/optimizer/join_predicate_bare_match_spec.rbc
|
679
453
|
- spec/rattler/back_end/optimizer/join_predicate_nested_match_spec.rb
|
680
|
-
- spec/rattler/back_end/optimizer/join_predicate_nested_match_spec.rbc
|
681
454
|
- spec/rattler/back_end/optimizer/join_predicate_or_bare_match_spec.rb
|
682
|
-
- spec/rattler/back_end/optimizer/join_predicate_or_bare_match_spec.rbc
|
683
455
|
- spec/rattler/back_end/optimizer/join_predicate_or_nested_match_spec.rb
|
684
|
-
- spec/rattler/back_end/optimizer/join_predicate_or_nested_match_spec.rbc
|
685
456
|
- spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rb
|
686
|
-
- spec/rattler/back_end/optimizer/reduce_repeat_match_spec.rbc
|
687
457
|
- spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rb
|
688
|
-
- spec/rattler/back_end/optimizer/simplify_redundant_repeat_spec.rbc
|
689
458
|
- spec/rattler/back_end/optimizer/simplify_token_match_spec.rb
|
690
|
-
- spec/rattler/back_end/optimizer/simplify_token_match_spec.rbc
|
691
459
|
- spec/rattler/back_end/optimizer_spec.rb
|
692
|
-
- spec/rattler/back_end/optimizer_spec.rbc
|
693
460
|
- spec/rattler/back_end/parser_generator/apply_generator_spec.rb
|
694
|
-
- spec/rattler/back_end/parser_generator/apply_generator_spec.rbc
|
695
461
|
- spec/rattler/back_end/parser_generator/assert_generator_spec.rb
|
696
|
-
- spec/rattler/back_end/parser_generator/assert_generator_spec.rbc
|
697
462
|
- spec/rattler/back_end/parser_generator/back_reference_generator_spec.rb
|
698
|
-
- spec/rattler/back_end/parser_generator/back_reference_generator_spec.rbc
|
699
463
|
- spec/rattler/back_end/parser_generator/choice_generator_spec.rb
|
700
|
-
- spec/rattler/back_end/parser_generator/choice_generator_spec.rbc
|
701
464
|
- spec/rattler/back_end/parser_generator/direct_action_generator_spec.rb
|
702
|
-
- spec/rattler/back_end/parser_generator/direct_action_generator_spec.rbc
|
703
465
|
- spec/rattler/back_end/parser_generator/disallow_generator_spec.rb
|
704
|
-
- spec/rattler/back_end/parser_generator/disallow_generator_spec.rbc
|
705
466
|
- spec/rattler/back_end/parser_generator/dispatch_action_generator_spec.rb
|
706
|
-
- spec/rattler/back_end/parser_generator/
|
467
|
+
- spec/rattler/back_end/parser_generator/e_symbol_generator_spec.rb
|
468
|
+
- spec/rattler/back_end/parser_generator/eof_generator_spec.rb
|
707
469
|
- spec/rattler/back_end/parser_generator/fail_generator_spec.rb
|
708
|
-
- spec/rattler/back_end/parser_generator/fail_generator_spec.rbc
|
709
470
|
- spec/rattler/back_end/parser_generator/group_match_generator_spec.rb
|
710
|
-
- spec/rattler/back_end/parser_generator/group_match_generator_spec.rbc
|
711
471
|
- spec/rattler/back_end/parser_generator/group_match_spec.rb
|
712
|
-
- spec/rattler/back_end/parser_generator/group_match_spec.rbc
|
713
472
|
- spec/rattler/back_end/parser_generator/label_generator_spec.rb
|
714
|
-
- spec/rattler/back_end/parser_generator/
|
715
|
-
- spec/rattler/back_end/parser_generator/
|
716
|
-
- spec/rattler/back_end/parser_generator/list1_generator_spec.rbc
|
473
|
+
- spec/rattler/back_end/parser_generator/list0_generator_examples.rb
|
474
|
+
- spec/rattler/back_end/parser_generator/list1_generator_examples.rb
|
717
475
|
- spec/rattler/back_end/parser_generator/list_generator_spec.rb
|
718
|
-
- spec/rattler/back_end/parser_generator/list_generator_spec.rbc
|
719
476
|
- spec/rattler/back_end/parser_generator/match_generator_spec.rb
|
720
|
-
- spec/rattler/back_end/parser_generator/
|
721
|
-
- spec/rattler/back_end/parser_generator/
|
722
|
-
- spec/rattler/back_end/parser_generator/
|
723
|
-
- spec/rattler/back_end/parser_generator/optional_generator_spec.rb
|
724
|
-
- spec/rattler/back_end/parser_generator/optional_generator_spec.rbc
|
477
|
+
- spec/rattler/back_end/parser_generator/one_or_more_generator_examples.rb
|
478
|
+
- spec/rattler/back_end/parser_generator/optional_generator_examples.rb
|
479
|
+
- spec/rattler/back_end/parser_generator/repeat_generator_spec.rb
|
725
480
|
- spec/rattler/back_end/parser_generator/rule_generator_spec.rb
|
726
|
-
- spec/rattler/back_end/parser_generator/rule_generator_spec.rbc
|
727
481
|
- spec/rattler/back_end/parser_generator/rule_set_generator_spec.rb
|
728
|
-
- spec/rattler/back_end/parser_generator/rule_set_generator_spec.rbc
|
729
482
|
- spec/rattler/back_end/parser_generator/sequence_generator_spec.rb
|
730
|
-
- spec/rattler/back_end/parser_generator/sequence_generator_spec.rbc
|
731
483
|
- spec/rattler/back_end/parser_generator/skip_generator_spec.rb
|
732
|
-
- spec/rattler/back_end/parser_generator/skip_generator_spec.rbc
|
733
484
|
- spec/rattler/back_end/parser_generator/token_generator_spec.rb
|
734
|
-
- spec/rattler/back_end/parser_generator/
|
735
|
-
- spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rb
|
736
|
-
- spec/rattler/back_end/parser_generator/zero_or_more_generator_spec.rbc
|
485
|
+
- spec/rattler/back_end/parser_generator/zero_or_more_generator_examples.rb
|
737
486
|
- spec/rattler/back_end/ruby_generator_spec.rb
|
738
|
-
- spec/rattler/back_end/
|
487
|
+
- spec/rattler/back_end/semantic_assert_compiler_examples.rb
|
488
|
+
- spec/rattler/back_end/semantic_disallow_compiler_examples.rb
|
739
489
|
- spec/rattler/back_end/shared_compiler_examples.rb
|
740
|
-
- spec/rattler/back_end/
|
490
|
+
- spec/rattler/back_end/side_effect_compiler_examples.rb
|
491
|
+
- spec/rattler/back_end/skip_compiler_examples.rb
|
492
|
+
- spec/rattler/back_end/token_compiler_examples.rb
|
741
493
|
- spec/rattler/grammar/analysis_spec.rb
|
742
|
-
- spec/rattler/grammar/analysis_spec.rbc
|
743
494
|
- spec/rattler/grammar/grammar_parser_spec.rb
|
744
|
-
- spec/rattler/grammar/grammar_parser_spec.rbc
|
745
495
|
- spec/rattler/grammar/grammar_spec.rb
|
746
|
-
- spec/rattler/grammar/grammar_spec.rbc
|
747
496
|
- spec/rattler/parsers/action_code_spec.rb
|
748
|
-
- spec/rattler/parsers/action_code_spec.rbc
|
749
497
|
- spec/rattler/parsers/apply_spec.rb
|
750
|
-
- spec/rattler/parsers/apply_spec.rbc
|
751
498
|
- spec/rattler/parsers/assert_spec.rb
|
752
|
-
- spec/rattler/parsers/assert_spec.rbc
|
753
499
|
- spec/rattler/parsers/back_reference_spec.rb
|
754
|
-
- spec/rattler/parsers/back_reference_spec.rbc
|
755
500
|
- spec/rattler/parsers/choice_spec.rb
|
756
|
-
- spec/rattler/parsers/choice_spec.rbc
|
757
501
|
- spec/rattler/parsers/combinator_parser_spec.rb
|
758
|
-
- spec/rattler/parsers/combinator_parser_spec.rbc
|
759
502
|
- spec/rattler/parsers/direct_action_spec.rb
|
760
|
-
- spec/rattler/parsers/direct_action_spec.rbc
|
761
503
|
- spec/rattler/parsers/disallow_spec.rb
|
762
|
-
- spec/rattler/parsers/disallow_spec.rbc
|
763
504
|
- spec/rattler/parsers/dispatch_action_spec.rb
|
764
|
-
- spec/rattler/parsers/
|
505
|
+
- spec/rattler/parsers/e_symbol_spec.rb
|
765
506
|
- spec/rattler/parsers/eof_spec.rb
|
766
|
-
- spec/rattler/parsers/eof_spec.rbc
|
767
507
|
- spec/rattler/parsers/fail_spec.rb
|
768
|
-
- spec/rattler/parsers/fail_spec.rbc
|
769
508
|
- spec/rattler/parsers/label_spec.rb
|
770
|
-
- spec/rattler/parsers/
|
771
|
-
- spec/rattler/parsers/list0_spec.rb
|
772
|
-
- spec/rattler/parsers/list0_spec.rbc
|
773
|
-
- spec/rattler/parsers/list1_spec.rb
|
774
|
-
- spec/rattler/parsers/list1_spec.rbc
|
775
|
-
- spec/rattler/parsers/list_spec.rbc
|
509
|
+
- spec/rattler/parsers/list_parser_spec.rb
|
776
510
|
- spec/rattler/parsers/match_spec.rb
|
777
|
-
- spec/rattler/parsers/match_spec.rbc
|
778
511
|
- spec/rattler/parsers/node_code_spec.rb
|
779
|
-
- spec/rattler/parsers/node_code_spec.rbc
|
780
|
-
- spec/rattler/parsers/one_or_more_spec.rb
|
781
|
-
- spec/rattler/parsers/one_or_more_spec.rbc
|
782
|
-
- spec/rattler/parsers/optional_spec.rb
|
783
|
-
- spec/rattler/parsers/optional_spec.rbc
|
784
512
|
- spec/rattler/parsers/parser_dsl_spec.rb
|
785
|
-
- spec/rattler/parsers/
|
513
|
+
- spec/rattler/parsers/repeat_spec.rb
|
786
514
|
- spec/rattler/parsers/rule_set_spec.rb
|
787
|
-
- spec/rattler/parsers/
|
515
|
+
- spec/rattler/parsers/semantic_assert_spec.rb
|
516
|
+
- spec/rattler/parsers/semantic_disallow_spec.rb
|
788
517
|
- spec/rattler/parsers/sequence_spec.rb
|
789
|
-
- spec/rattler/parsers/
|
518
|
+
- spec/rattler/parsers/side_effect_spec.rb
|
790
519
|
- spec/rattler/parsers/skip_spec.rb
|
791
|
-
- spec/rattler/parsers/skip_spec.rbc
|
792
520
|
- spec/rattler/parsers/token_spec.rb
|
793
|
-
- spec/rattler/parsers/token_spec.rbc
|
794
|
-
- spec/rattler/parsers/zero_or_more_spec.rb
|
795
|
-
- spec/rattler/parsers/zero_or_more_spec.rbc
|
796
521
|
- spec/rattler/runtime/extended_packrat_parser_spec.rb
|
797
|
-
- spec/rattler/runtime/extended_packrat_parser_spec.rbc
|
798
522
|
- spec/rattler/runtime/packrat_parser_spec.rb
|
799
|
-
- spec/rattler/runtime/packrat_parser_spec.rbc
|
800
523
|
- spec/rattler/runtime/parse_failure_spec.rb
|
801
|
-
- spec/rattler/runtime/parse_failure_spec.rbc
|
802
524
|
- spec/rattler/runtime/parse_node_spec.rb
|
803
|
-
- spec/rattler/runtime/parse_node_spec.rbc
|
804
525
|
- spec/rattler/runtime/parser_spec.rb
|
805
|
-
- spec/rattler/runtime/parser_spec.rbc
|
806
526
|
- spec/rattler/runtime/recursive_descent_parser_spec.rb
|
807
|
-
- spec/rattler/runtime/recursive_descent_parser_spec.rbc
|
808
527
|
- spec/rattler/runtime/shared_parser_examples.rb
|
809
|
-
- spec/rattler/runtime/shared_parser_examples.rbc
|
810
528
|
- spec/rattler/util/graphviz/node_builder_spec.rb
|
811
|
-
- spec/rattler/util/graphviz/node_builder_spec.rbc
|
812
529
|
- spec/rattler/util/line_counter_spec.rb
|
813
|
-
- spec/rattler/util/line_counter_spec.rbc
|
814
530
|
- spec/rattler/util/node_spec.rb
|
815
|
-
- spec/rattler/util/node_spec.rbc
|
816
531
|
- spec/rattler_spec.rb
|
817
|
-
- spec/rattler_spec.rbc
|
818
532
|
- spec/spec_helper.rb
|
819
|
-
- spec/spec_helper.rbc
|
820
533
|
- spec/support/combinator_parser_spec_helper.rb
|
821
|
-
- spec/support/combinator_parser_spec_helper.rbc
|
822
534
|
- spec/support/compiler_spec_helper.rb
|
823
|
-
- spec/support/compiler_spec_helper.rbc
|
824
535
|
- spec/support/parser_generator_spec_helper.rb
|
825
|
-
- spec/support/parser_generator_spec_helper.rbc
|
826
536
|
- spec/support/runtime_parser_spec_helper.rb
|
827
|
-
- spec/support/runtime_parser_spec_helper.rbc
|