class Spine::Parameters::Collection
Attributes
raw[R]
values[R]
Public Class Methods
new(raw)
click to toggle source
# File lib/spine/parameters/collection.rb, line 16 def initialize(raw) @raw = raw @values = {} end
Public Instance Methods
[](key)
click to toggle source
# File lib/spine/parameters/collection.rb, line 21 def [](key) values.fetch(key.to_sym) { symbolized[key.to_sym] } end
symbolized()
click to toggle source
# File lib/spine/parameters/collection.rb, line 25 def symbolized @symbolized ||= Symbolize.keys(raw) end
Private Instance Methods
parse(name, parser, &block)
click to toggle source
# File lib/spine/parameters/collection.rb, line 31 def parse(name, parser, &block) key = name.to_sym values[key] = parser.parse(key, symbolized[key]) if symbolized[key] values[key] ||= block.call if block_given? self end