Method: Magiq::Param#initialize
- Defined in:
- lib/magiq/param.rb
#initialize(key, opts = {}) ⇒ Param
Returns a new instance of Param.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/magiq/param.rb', line 15 def initialize(key, opts = {}) @key = key.to_sym @type = Types.lookup(opts[TYPE] || :string) @solo = opts[SOLO] ? true : false @limit = opts[LIMIT] || Magiq[:array_param_limit] @aliases = opts[ALIAS] ? Array(opts[:alias]) : [] @keys = [@key].concat(@aliases).map(&:to_sym) @array = case opts[ARRAY] when :always :always when :allow :allow when nil, false false else raise ArgumentError, ":array option must be :always, :allow, or false, " \ "not: #{opts[ARRAY].inspect}" end end |