class Hyrb::Models::Struct
Public Class Methods
define_keys(keys)
click to toggle source
# File lib/hyrb/model.rb, line 60 def self.define_keys(keys) @keys = keys.each do |key| define_method key do @data[key] end define_method "#{key}=" do |val| @data[key] = val end end end
keys()
click to toggle source
# File lib/hyrb/model.rb, line 56 def self.keys @keys end
new(path)
click to toggle source
Calls superclass method
Hyrb::Model::new
# File lib/hyrb/model.rb, line 72 def initialize(path) super self.class.keys.each { |key| @data[key] ||= nil } end
Public Instance Methods
[](key)
click to toggle source
# File lib/hyrb/model.rb, line 77 def [](key) @data[key] end
[]=(key, val)
click to toggle source
# File lib/hyrb/model.rb, line 81 def []=(key, val) @data[key] = val end
Protected Instance Methods
deserialize(data)
click to toggle source
# File lib/hyrb/model.rb, line 91 def deserialize(data) Hashie::Mash.new(data) end
serialize(data)
click to toggle source
# File lib/hyrb/model.rb, line 87 def serialize(data) data.to_hash end