Class: SyntaxTree::CallOperatorFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/syntax_tree.rb

Overview

Wraps a call operator (which can be a string literal

or an Op node or a

Period node) and formats it when called.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(operator) ⇒ CallOperatorFormatter

Returns a new instance of CallOperatorFormatter.



3281
3282
3283
# File 'lib/syntax_tree.rb', line 3281

def initialize(operator)
  @operator = operator
end

Instance Attribute Details

#operatorObject (readonly)

:“::” | Op | Period

the operator being formatted



3279
3280
3281
# File 'lib/syntax_tree.rb', line 3279

def operator
  @operator
end

Instance Method Details

#commentsObject



3285
3286
3287
# File 'lib/syntax_tree.rb', line 3285

def comments
  operator == :"::" ? [] : operator.comments
end

#format(q) ⇒ Object



3289
3290
3291
3292
3293
3294
3295
# File 'lib/syntax_tree.rb', line 3289

def format(q)
  if operator == :"::" || (operator.is_a?(Op) && operator.value == "::")
    q.text(".")
  else
    operator.format(q)
  end
end