Class: Depager::StatefulLexerExtension
- Defined in:
- lib/depager/plugins/slex.rb
Defined Under Namespace
Modules: PreRhsPostSymbol1, PreRuleList0
Instance Attribute Summary
Attributes inherited from Extension
Instance Method Summary collapse
- #extension_registered(g_parser) ⇒ Object
-
#initialize ⇒ StatefulLexerExtension
constructor
A new instance of StatefulLexerExtension.
Methods inherited from Extension
#decorator_name, #init_extension, #term_extension
Methods included from Utils::CodeGeneratorMethods
#expand_inline_code, #generate_action_decorator_code, #generate_decorator_code, #parse_block
Methods included from Utils::CommonMethods
#error_exit, #error_message, #expanded_code_delimiter, #file, #full_target_name, #input_path, #inspect, #target_name, #target_namespace, #warning
Constructor Details
#initialize ⇒ StatefulLexerExtension
Returns a new instance of StatefulLexerExtension.
11 12 13 14 15 |
# File 'lib/depager/plugins/slex.rb', line 11 def initialize super @master = self @slaves = [] end |
Instance Method Details
#extension_registered(g_parser) ⇒ Object
17 18 19 20 21 22 23 24 25 |
# File 'lib/depager/plugins/slex.rb', line 17 def extension_registered g_parser super g_parser @slaves << Depager::StatefulLexerExtension::PreRuleList0::Parser.new(g_parser, self) g_parser.hooks[:pre_rule_list].push [@slaves.last, :do_parse] @slaves << Depager::StatefulLexerExtension::PreRhsPostSymbol1::Parser.new(g_parser, self) g_parser.hooks[:pre_rhs].push [@slaves.last, :do_parse] g_parser.hooks[:post_symbol].push [@slaves.last, :do_parse] end |