class Prettyrb::Nodes::BaseNode

Public Class Methods

new(type, children, properties) click to toggle source
Calls superclass method
# File lib/prettyrb/nodes/base_node.rb, line 6
def initialize(type, children, properties)
  @mutable = {}

  super

  children&.each do |child|
    next unless child.is_a?(BaseNode)
    child.parent = self
  end

  self
end

Public Instance Methods

parent() click to toggle source
# File lib/prettyrb/nodes/base_node.rb, line 19
def parent
  @mutable[:parent]
end
string?() click to toggle source
# File lib/prettyrb/nodes/base_node.rb, line 23
def string?
  type == :str || type == :dstr
end

Protected Instance Methods

parent=(parent) click to toggle source
# File lib/prettyrb/nodes/base_node.rb, line 29
def parent=(parent)
  @mutable[:parent] = parent
end