Class: YARD::Handlers::Ruby::ValuesHandler

Inherits:
Base
  • Object
show all
Defined in:
lib/value/yard-1.0.rb

Instance Method Summary collapse

Instance Method Details

#ancestor(name) ⇒ Object



37
38
39
40
# File 'lib/value/yard-1.0.rb', line 37

def ancestor(name)
  modul = Proxy.new(:root, name).tap{ |m| m.type = :module }
  namespace.mixins(scope).unshift(modul) unless namespace.mixins(scope).include? modul
end

#define(name, parameters, docstring = nil, visibility = :public) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/value/yard-1.0.rb', line 42

def define(name, parameters, docstring = nil, visibility = :public)
  YARD::CodeObjects::MethodObject.new(namespace, name).tap{ |m|
    register(m)
    m.signature = 'def %s%s' %
      [name,
       parameters.empty? ?
         '' :
         '(%s)' % parameters.map{ |n, d| d ? '%s = %s' % [n, d] : n }.join(', ')]
    m.parameters = parameters
    m.docstring = docstring if docstring
    m.visibility = visibility
  }
end

#join(items) ⇒ Object



56
57
58
59
60
# File 'lib/value/yard-1.0.rb', line 56

def join(items)
  return items.join('') if items.size < 2
  return items.join(' and ') if items.size < 3
  return '%s, and %s' % [items[0..-2].join(', '), items[-1]]
end