Sha256: 22eefcd43366ca14c49fdbf707e7cf8c1cff1a0839d34fd41de53e9615138909
Contents?: true
Size: 948 Bytes
Versions: 7
Compression:
Stored size: 948 Bytes
Contents
module Tins module MethodDescription def description result = '' if owner <= Module result << receiver.to_s << '.' # XXX Better to use owner here as well? else result << owner.name.to_s << '#' end result << name.to_s << '(' if respond_to?(:parameters) generated_name = 'x0' result << parameters.map { |p_type, p_name| p_name ||= generated_name.succ! case p_type when :block "&#{p_name}" when :rest "*#{p_name}" when :keyrest "**#{p_name}" when :req p_name when :opt "#{p_name}=?" when :key "#{p_name}:?" when :keyreq "#{p_name}:" else [ p_name, p_type ] * ':' end } * ',' else result << arity.to_s end result << ')' end end end
Version data entries
7 entries across 7 versions & 1 rubygems