lib/dependor/instantiator.rb
module Dependor
class Instantiator
attr_reader :dependency_names
def initialize(injector, dependency_names)
@injector = injector
@dependency_names = dependency_names
end
def instantiate(klass)
dependencies = dependency_names.for_class(klass).map{|name| @injector.get(name)}
return klass.new(*dependencies)
end
end
end