class Unparser::Emitter::Def::Singleton

Emitter for defines on singleton

Private Instance Methods

emit_name() click to toggle source
# File lib/unparser/emitter/def.rb, line 56
def emit_name
  conditional_parentheses(!subject_without_parens?) do
    visit(subject)
  end
  write('.', name.to_s)
end
subject_without_parens?() click to toggle source
# File lib/unparser/emitter/def.rb, line 63
def subject_without_parens?
  case subject.type
  when :self
    true
  when :const
    !subject.children.first
  when :send
    receiver, _selector, *arguments = *subject
    !receiver && arguments.empty?
  end
end