Class: Spells::ParseNode

Inherits:
Treetop::Runtime::SyntaxNode
  • Object
show all
Defined in:
lib/spells/parse_node.rb

Direct Known Subclasses

Ability

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.nodes_of(klass, tree) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/spells/parse_node.rb', line 7

def self.nodes_of(klass, tree)
  return if tree.elements.nil?

  tree.
      elements.
      map { |element| element.kind_of?(klass) ? element : nodes_of(klass, element) }.
      flatten.
      compact
end

Instance Method Details

#nodes_of(klass) ⇒ Object



3
4
5
# File 'lib/spells/parse_node.rb', line 3

def nodes_of(klass)
  ParseNode.nodes_of klass, self
end