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.



9017
9018
9019
# File 'lib/syntax_tree/node.rb', line 9017

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

DynaSymbol | SymbolLiteral

the symbol to undefine



9015
9016
9017
# File 'lib/syntax_tree/node.rb', line 9015

def node
  @node
end

Instance Method Details

#commentsObject



9021
9022
9023
9024
9025
9026
9027
# File 'lib/syntax_tree/node.rb', line 9021

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

#format(q) ⇒ Object



9029
9030
9031
# File 'lib/syntax_tree/node.rb', line 9029

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