Class: Depager::LexerExtension

Inherits:
Extension show all
Defined in:
lib/depager/plugins/lex.rb

Defined Under Namespace

Modules: PreRuleList0

Instance Attribute Summary

Attributes inherited from Extension

#d_parser, #g_parser

Instance Method Summary collapse

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

#initializeLexerExtension

Returns a new instance of LexerExtension.



11
12
13
14
15
# File 'lib/depager/plugins/lex.rb', line 11

def initialize
  super
  @master = self
  @slaves = []
end

Instance Method Details

#extension_registered(g_parser) ⇒ Object



17
18
19
20
21
22
# File 'lib/depager/plugins/lex.rb', line 17

def extension_registered g_parser
  super g_parser

  @slaves << Depager::LexerExtension::PreRuleList0::Parser.new(g_parser, self)
  g_parser.hooks[:pre_rule_list].push [@slaves.last, :do_parse]
end