Sha256: 47847a04f847aa835fa62e0b465e9a459b2f2a9c1d3371eedf0659482fb87205
Contents?: true
Size: 717 Bytes
Versions: 3
Compression:
Stored size: 717 Bytes
Contents
module Compel class Param attr_reader :name, :type, :options, :conditions def initialize(name, type, value, options = {}, &conditions) @name = name @type = type @value = value @options = options @conditions = conditions end def value default_value = if options[:default].is_a?(Proc) options[:default].call else options[:default] end @value || default_value end def value=(value) @value = value end def required? !!@options[:required] end def hash? @type == Hash end def conditions? !!@conditions end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
compel-0.1.3 | lib/compel/param.rb |
compel-0.1.2 | lib/compel/param.rb |
compel-0.1.1 | lib/compel/param.rb |