module DataAccessible::ClassMethods

Public Instance Methods

[](key) click to toggle source
# File lib/data_accessible.rb, line 52
def [](key)
  to_h[key]
end
[]=(key, value) click to toggle source
# File lib/data_accessible.rb, line 56
def []=(key, value)
  DataAccessors.define_accessor(to_h, key)
  DataAccessors.define_accessor(self, key)
  to_h[key] = DataAccessors.accessor_for_data(value)
end
accessible_data()
Alias for: to_h
data_accessible()
Alias for: to_h
data_load(data_source, namespace = nil) click to toggle source
# File lib/data_accessible.rb, line 31
def data_load(data_source, namespace = nil)
  to_h.clear
  data_merge(data_source, namespace)
end
data_merge(data_source, namespace = nil) click to toggle source
# File lib/data_accessible.rb, line 36
def data_merge(data_source, namespace = nil)
  source_data = DataLoader.load_source(data_source)
  new_data = namespace ? source_data.fetch(namespace) : source_data

  @data = HashMethods.deep_merge(to_h, new_data)

  DataAccessors.accessor_for_obj(self)
  DataAccessors.accessor_for_data(to_h)

  to_h
end
to_h() click to toggle source
# File lib/data_accessible.rb, line 48
def to_h
  @data ||= {}
end
Also aliased as: accessible_data, data_accessible