Module: Invokr::DependencyInjection

Extended by:
DependencyInjection
Included in:
DependencyInjection
Defined in:
lib/invokr/dependency_injection.rb

Defined Under Namespace

Classes: HashResolver, Injector, KlassInjector, ProcInjector

Instance Method Summary collapse

Instance Method Details

#inject(obj, using) ⇒ Object



5
6
7
8
9
10
11
12
13
# File 'lib/invokr/dependency_injection.rb', line 5

def inject obj, using
  meth = case obj
         when lambda { |obj| obj.respond_to?(:call) } then :inject_proc
         when Class then :inject_klass
         else raise ArgumentError, "can't inject #{obj.inspect}"
         end
  resolver = build_resolver using
  send meth, obj, resolver
end