Class: SyntaxTree::Undef::UndefArgumentFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/syntax_tree/node.rb

Overview

Undef accepts a variable number of arguments that can be either DynaSymbol or SymbolLiteral objects. For SymbolLiteral objects we descend directly into the value in order to have it come out as bare words.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(node) ⇒ UndefArgumentFormatter

Returns a new instance of UndefArgumentFormatter.



9062
9063
9064
# File 'lib/syntax_tree/node.rb', line 9062

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

DynaSymbol | SymbolLiteral

the symbol to undefine



9060
9061
9062
# File 'lib/syntax_tree/node.rb', line 9060

def node
  @node
end

Instance Method Details

#commentsObject



9066
9067
9068
9069
9070
9071
9072
# File 'lib/syntax_tree/node.rb', line 9066

def comments
  if node.is_a?(SymbolLiteral)
    node.comments + node.value.comments
  else
    node.comments
  end
end

#format(q) ⇒ Object



9074
9075
9076
# File 'lib/syntax_tree/node.rb', line 9074

def format(q)
  node.is_a?(SymbolLiteral) ? q.format(node.value) : q.format(node)
end