Sha256: 295c008b052cd3937c7a4d3e179e173cb060c1020040327faf6d6d591e431743

Contents?: true

Size: 532 Bytes

Versions: 13

Compression:

Stored size: 532 Bytes

Contents

module ModelWrapper
  # For cretain values, we wrap them to make the behave as a
  # model.
  def wrap_value(value)
    if value.cur.is_a?(Array)
      value = ArrayModel.new(value, self, nil)
    elsif value.cur.is_a?(Hash)
      value = Model.new(value)
    end
    
    return value
  end
  
  def wrap_values(values)
    if values.cur.is_a?(Array)
      values = values.map {|v| wrap_value(v) }
    elsif values.cur.is_a?(Hash)
      values = Hash[values.map {|k,v| [k, wrap_value(v)] }]
    end
    
    return values
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
volt-0.3.7 lib/volt/models/model_wrapper.rb
volt-0.3.6 lib/volt/models/model_wrapper.rb
volt-0.3.5 lib/volt/models/model_wrapper.rb
volt-0.3.4 lib/volt/models/model_wrapper.rb
volt-0.3.3 lib/volt/models/model_wrapper.rb
volt-0.3.2 lib/volt/models/model_wrapper.rb
volt-0.3.1 lib/volt/models/model_wrapper.rb
volt-0.3.0 lib/volt/models/model_wrapper.rb
volt-0.2.9 lib/volt/models/model_wrapper.rb
volt-0.2.7 lib/volt/models/model_wrapper.rb
volt-0.2.5 lib/volt/models/model_wrapper.rb
volt-0.2.4 lib/volt/models/model_wrapper.rb
volt-0.2.3 lib/volt/models/model_wrapper.rb