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.



11184
11185
11186
# File 'lib/syntax_tree/node.rb', line 11184

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

DynaSymbol | SymbolLiteral

the symbol to undefine



11182
11183
11184
# File 'lib/syntax_tree/node.rb', line 11182

def node
  @node
end

Instance Method Details

#commentsObject



11188
11189
11190
11191
11192
11193
11194
# File 'lib/syntax_tree/node.rb', line 11188

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

#format(q) ⇒ Object



11196
11197
11198
# File 'lib/syntax_tree/node.rb', line 11196

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