Sha256: 4fcb0325bbb861f8268e46453768b6c91f1bcb969a5f95676a3abb73ea3a2498
Contents?: true
Size: 570 Bytes
Versions: 3
Compression:
Stored size: 570 Bytes
Contents
module Relax class Instance # :nodoc: def initialize(*args) @values = args.inject({}) do |values, arg| arg.is_a?(Hash) ? values.merge(arg) : values end end def values(context) context.parameters.inject({}) do |values, parameter| name = parameter.name if value = @values[parameter.name] || parameter.value values[parameter.name] = value elsif parameter.required? raise ArgumentError.new("Missing value for '#{parameter.name}'.") end values end end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
tylerhunt-relax-0.1.1 | lib/relax/instance.rb |
relax-0.1.1 | lib/relax/instance.rb |
relax-0.1.0 | lib/relax/instance.rb |