Module: Horza

Extended by:
Configuration
Defined in:
lib/horza.rb,
lib/horza/errors.rb,
lib/horza/entities.rb,
lib/horza/configuration.rb,
lib/horza/entities/single.rb,
lib/horza/adapters/options.rb,
lib/horza/entities/collection.rb,
lib/horza/adapters/class_methods.rb,
lib/horza/core_extensions/string.rb,
lib/horza/adapters/abstract_adapter.rb,
lib/horza/adapters/instance_methods.rb,
lib/horza/adapters/active_record/arel_join.rb,
lib/horza/entities/single_with_active_model.rb,
lib/horza/adapters/active_record/active_record.rb

Defined Under Namespace

Modules: Adapters, Configuration, CoreExtensions, Entities, Errors Classes: Config

Class Method Summary collapse

Methods included from Configuration

adapter, adapter_map, configuration, configure, reset

Class Method Details

.adapt(klass) ⇒ Object



24
25
26
# File 'lib/horza.rb', line 24

def adapt(klass)
  adapter.new(klass)
end

.collection(items = []) ⇒ Object



32
33
34
# File 'lib/horza.rb', line 32

def collection(items = [])
  Horza::Entities::Collection.new(items)
end

.descendants_map(klass) ⇒ Object



20
21
22
# File 'lib/horza.rb', line 20

def descendants_map(klass)
  klass.descendants.reduce({}) { |hash, (klass)| hash.merge(klass.name.split('::').last.underscore.to_sym => klass) }
end

.single(params = {}) ⇒ Object



28
29
30
# File 'lib/horza.rb', line 28

def single(params = {})
  Horza::Entities::Single.new(params)
end