class Dry::AutoInject::Builder
Attributes
container[R]
@api private
strategies[R]
@api private
Public Class Methods
new(container, options = {})
click to toggle source
# File lib/dry/auto_inject/builder.rb, line 15 def initialize(container, options = {}) @container = container @strategies = options.fetch(:strategies) { Strategies } end
Public Instance Methods
[](*dependency_names)
click to toggle source
@api public
# File lib/dry/auto_inject/builder.rb, line 21 def [](*dependency_names) default[*dependency_names] end
respond_to?(name, include_private = false)
click to toggle source
# File lib/dry/auto_inject/builder.rb, line 25 def respond_to?(name, include_private = false) Builder.public_instance_methods.include?(name) || strategies.key?(name) end
Private Instance Methods
method_missing(name, *args, &block)
click to toggle source
Calls superclass method
# File lib/dry/auto_inject/builder.rb, line 31 def method_missing(name, *args, &block) if strategies.key?(name) Injector.new(container, strategies[name], builder: self) else super end end