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.



9104
9105
9106
# File 'lib/syntax_tree/node.rb', line 9104

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

DynaSymbol | SymbolLiteral

the symbol to undefine



9102
9103
9104
# File 'lib/syntax_tree/node.rb', line 9102

def node
  @node
end

Instance Method Details

#commentsObject



9108
9109
9110
9111
9112
9113
9114
# File 'lib/syntax_tree/node.rb', line 9108

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

#format(q) ⇒ Object



9116
9117
9118
# File 'lib/syntax_tree/node.rb', line 9116

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