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.



8940
8941
8942
# File 'lib/syntax_tree/node.rb', line 8940

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

DynaSymbol | SymbolLiteral

the symbol to undefine



8938
8939
8940
# File 'lib/syntax_tree/node.rb', line 8938

def node
  @node
end

Instance Method Details

#commentsObject



8944
8945
8946
8947
8948
8949
8950
# File 'lib/syntax_tree/node.rb', line 8944

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

#format(q) ⇒ Object



8952
8953
8954
# File 'lib/syntax_tree/node.rb', line 8952

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