Sha256: 5dc11a5f3c6cbcab3698864c94b2eb1e2c86241e9323dae842bf59c6a2fd8ca0
Contents?: true
Size: 645 Bytes
Versions: 1
Compression:
Stored size: 645 Bytes
Contents
module JsonbAccessor class NestedBase attr_accessor :attributes, :parent alias_method :to_h, :attributes delegate :[], to: :attributes delegate :nested_classes, :attribute_on_parent_name, to: :class def initialize(attributes = {}) self.attributes = {}.with_indifferent_access nested_classes.keys.each do |key| send("#{key}=", nil) end attributes.each do |name, value| send("#{name}=", value) end end def update_parent parent.send("#{attribute_on_parent_name}=", self) if parent end def []=(key, value) send("#{key}=", value) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
jsonb_accessor-0.1.0 | lib/jsonb_accessor/nested_base.rb |