Class: Dependor::Instantiator

Inherits:
Object
  • Object
show all
Defined in:
lib/dependor/instantiator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(injector, dependency_names) ⇒ Instantiator

Returns a new instance of Instantiator.



5
6
7
8
# File 'lib/dependor/instantiator.rb', line 5

def initialize(injector, dependency_names)
  @injector = injector
  @dependency_names = dependency_names
end

Instance Attribute Details

#dependency_namesObject (readonly)

Returns the value of attribute dependency_names.



3
4
5
# File 'lib/dependor/instantiator.rb', line 3

def dependency_names
  @dependency_names
end

Instance Method Details

#instantiate(klass) ⇒ Object



10
11
12
13
# File 'lib/dependor/instantiator.rb', line 10

def instantiate(klass)
  dependencies = dependency_names.for_class(klass).map{|name| @injector.get(name)}
  return klass.new(*dependencies)
end