Class: Treetop::Runtime::SyntaxNode

Inherits:
Object
  • Object
show all
Defined in:
lib/parser/syntax_node_extensions.rb

Instance Method Summary collapse

Instance Method Details

#get_element(nth, params = {}) ⇒ Object



18
19
20
21
22
# File 'lib/parser/syntax_node_extensions.rb', line 18

def get_element(nth, params = {})
  demand_elem = get_element_rec(nth, 0, self.elements)
  return demand_elem.elements[params[:child]] if params[:child]
  return demand_elem
end

#to_hashObject



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/parser/syntax_node_extensions.rb', line 5

def to_hash()
  hash = {}
  hash[:offset] = self.interval.first
  hash[:text_value] = self.text_value
  hash[:name] = self.class.name.split("::").last
  unless( self.elements.nil? )
    hash[:elements] = self.elements.map {|element| element.to_hash() }
  else
    hash[:elements] = nil
  end
  return hash
end