Sha256: 952dca7a62eec043ce389abab0c5af059c559597752ea9b8fdd9fc5643e10b44
Contents?: true
Size: 1.66 KB
Versions: 36
Compression:
Stored size: 1.66 KB
Contents
module Inch module Language module Ruby module CodeObject # Proxy class for method parameters class MethodParameterObject def initialize(attributes) @attributes = attributes end def [](key) @attributes[key] end BAD_NAME_EXCEPTIONS = %w(id) BAD_NAME_THRESHOLD = 3 # @return [Boolean] +true+ if the name of the parameter is # uncommunicative def bad_name? return false if BAD_NAME_EXCEPTIONS.include?(name) name.size < BAD_NAME_THRESHOLD || name =~ /[0-9]$/ end # @return [Boolean] +true+ if the parameter is a block def block? self[:block?] end # @return [Boolean] +true+ if an additional description given? def described? self[:described?] end # @return [Boolean] +true+ if the parameter is mentioned in the docs def mentioned? self[:mentioned?] end def name self[:name] end alias_method :fullname, :name # @return [Boolean] +true+ if the parameter is a splat argument def splat? self[:splat?] end # @return [Boolean] +true+ if the type of the parameter is defined def typed? self[:typed?] end # @return [Boolean] +true+ if the parameter is mentioned in the docs, # but not present in the method's signature def wrongly_mentioned? self[:wrongly_mentioned?] end end end end end end
Version data entries
36 entries across 36 versions & 1 rubygems