class Maccro::DSL::Node
Attributes
first_column[R]
first_lineno[R]
last_column[R]
last_lineno[R]
name[R]
Public Class Methods
new(name, code_range)
click to toggle source
# File lib/maccro/dsl/node.rb, line 42 def initialize(name, code_range) @name = name @code_range = code_range @first_lineno = code_range.first_lineno @first_column = code_range.first_column @last_lineno = code_range.last_lineno @last_column = code_range.last_column end
Public Instance Methods
capture(ast, placeholders)
click to toggle source
# File lib/maccro/dsl/node.rb, line 74 def capture(ast, placeholders) placeholders[@name] = ast.to_code_range end
children()
click to toggle source
# File lib/maccro/dsl/node.rb, line 59 def children [] end
match?(node)
click to toggle source
Calls superclass method
Maccro::DSL::ASTNodeWrapper#match?
# File lib/maccro/dsl/node.rb, line 63 def match?(node) # literals are not Node in any cases return false unless node.respond_to?(:type) if self.class.respond_to?(:match?) self.class.match?(node) else super end end
to_code_range()
click to toggle source
# File lib/maccro/dsl/node.rb, line 51 def to_code_range @code_range end
type()
click to toggle source
# File lib/maccro/dsl/node.rb, line 55 def type :MACCRO_NODE end