Class: Rattler::BackEnd::ParserGenerator::List1Generator
- Inherits:
-
ExprGenerator
- Object
- ExprGenerator
- Rattler::BackEnd::ParserGenerator::List1Generator
- Includes:
- ListGenerating, NestedSubGenerating, PredicatePropogating
- Defined in:
- lib/rattler/back_end/parser_generator/list1_generator.rb
Direct Known Subclasses
Class Method Summary collapse
Instance Method Summary collapse
Methods included from PredicatePropogating
#gen_assert, #gen_disallow, #gen_intermediate_assert, #gen_intermediate_disallow
Methods included from Parsers
Methods included from ListGenerating
#gen_basic, #gen_direct_action, #gen_dispatch_action
Methods inherited from ExprGenerator
#gen_direct_action, #gen_dispatch_action, #gen_intermediate, #gen_intermediate_assert, #gen_intermediate_disallow, #gen_intermediate_skip, #gen_token, #initialize
Constructor Details
This class inherits a constructor from Rattler::BackEnd::ParserGenerator::ExprGenerator
Class Method Details
.nested(*args) ⇒ Object
32 33 34 |
# File 'lib/rattler/back_end/parser_generator/list1_generator.rb', line 32 def List1Generator.nested(*args) NestedList1Generator.new(*args) end |
.top_level(*args) ⇒ Object
50 51 52 |
# File 'lib/rattler/back_end/parser_generator/list1_generator.rb', line 50 def List1Generator.top_level(*args) TopLevelList1Generator.new(*args) end |
Instance Method Details
#gen_skip(list, scope = {}) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/rattler/back_end/parser_generator/list1_generator.rb', line 11 def gen_skip(list, scope={}) expr :block do (@g << "#{result_name} = false").newline gen_skipping(list, scope) { (@g << "#{result_name} = true").newline } @g.newline << result_name end end |