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.



9020
9021
9022
# File 'lib/syntax_tree/node.rb', line 9020

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

[DynaSymbol | SymbolLiteral] the symbol to undefine



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

def node
  @node
end

Instance Method Details

#commentsObject



9024
9025
9026
9027
9028
9029
9030
# File 'lib/syntax_tree/node.rb', line 9024

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

#format(q) ⇒ Object



9032
9033
9034
# File 'lib/syntax_tree/node.rb', line 9032

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