Class: Lucid::AST::TDLWalker

Inherits:
Object
  • Object
show all
Defined in:
lib/lucid/ast/tdl_walker.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(runtime, listeners = [], configuration = Lucid::Configuration.default) ⇒ TDLWalker

Returns a new instance of TDLWalker.



7
8
9
# File 'lib/lucid/ast/tdl_walker.rb', line 7

def initialize(runtime, listeners = [], configuration = Lucid::Configuration.default)
  @runtime, @listeners, @configuration = runtime, listeners, configuration
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(message, *args, &block) ⇒ Object

This is being used to forward on messages from the AST to the formatters. This is being done in lieu of the explicit forwarding that was previously done.



14
15
16
# File 'lib/lucid/ast/tdl_walker.rb', line 14

def method_missing(message, *args, &block)
  broadcast_message(message, *args, &block)
end

Instance Attribute Details

#configurationObject

:nodoc:



4
5
6
# File 'lib/lucid/ast/tdl_walker.rb', line 4

def configuration
  @configuration
end

#runtimeObject (readonly)

:nodoc:



5
6
7
# File 'lib/lucid/ast/tdl_walker.rb', line 5

def runtime
  @runtime
end

Instance Method Details

#visit_multiline_arg(multiline_arg) ⇒ Object

:nodoc:



18
19
20
21
22
# File 'lib/lucid/ast/tdl_walker.rb', line 18

def visit_multiline_arg(multiline_arg) #:nodoc:
  broadcast(multiline_arg) do
    multiline_arg.accept(self)
  end
end