Module: Dry::Core

Includes:
Constants
Defined in:
lib/dry/core.rb,
lib/dry/core/cache.rb,
lib/dry/core/errors.rb,
lib/dry/core/version.rb,
lib/dry/core/constants.rb,
lib/dry/core/container.rb,
lib/dry/core/equalizer.rb,
lib/dry/core/inflector.rb,
lib/dry/core/extensions.rb,
lib/dry/core/memoizable.rb,
lib/dry/core/basic_object.rb,
lib/dry/core/deprecations.rb,
lib/dry/core/class_builder.rb,
lib/dry/core/container/item.rb,
lib/dry/core/container/stub.rb,
lib/dry/core/container/mixin.rb,
lib/dry/core/class_attributes.rb,
lib/dry/core/container/config.rb,
lib/dry/core/container/registry.rb,
lib/dry/core/container/resolver.rb,
lib/dry/core/container/namespace.rb,
lib/dry/core/descendants_tracker.rb,
lib/dry/core/container/item/factory.rb,
lib/dry/core/container/configuration.rb,
lib/dry/core/container/item/callable.rb,
lib/dry/core/container/namespace_dsl.rb,
lib/dry/core/container/item/memoizable.rb

Overview

:nodoc:

Defined Under Namespace

Modules: Cache, ClassAttributes, Constants, Deprecations, DescendantsTracker, Extensions, Inflector, Memoizable Classes: BasicObject, ClassBuilder, Container, Equalizer, InvalidClassAttributeValueError

Constant Summary collapse

VERSION =
"1.0.2"

Constants included from Constants

Constants::EMPTY_ARRAY, Constants::EMPTY_HASH, Constants::EMPTY_OPTS, Constants::EMPTY_SET, Constants::EMPTY_STRING, Constants::IDENTITY, Constants::Undefined

Class Method Summary collapse

Methods included from Constants

included

Class Method Details

.Equalizer(*keys, **options) ⇒ Object

Build an equalizer module for the inclusion in other class

## Credits

Equalizer has been originally imported from the equalizer gem created by Dan Kubb



38
39
40
# File 'lib/dry/core.rb', line 38

def self.Equalizer(*keys, **options)
  Equalizer.new(*keys, **options)
end

.loaderObject



15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/dry/core.rb', line 15

def self.loader
  @loader ||= Zeitwerk::Loader.new.tap do |loader|
    root = File.expand_path("..", __dir__)
    loader.tag = "dry-core"
    loader.inflector = Zeitwerk::GemInflector.new("#{root}/dry-core.rb")
    loader.push_dir(root)
    loader.ignore(
      "#{root}/dry-core.rb",
      "#{root}/dry/core/{constants,errors,version}.rb"
    )
    loader.inflector.inflect("namespace_dsl" => "NamespaceDSL")
  end
end