Module: Justdi::Resolver
- Defined in:
- lib/justdi/resolver.rb
Overview
Wrapper over typed definition resolvers
Class Method Summary collapse
-
.call(definition, container) ⇒ *
Resolve definition using container.
-
.class_value(value, container) ⇒ Object
Resolve class using container.
-
.factory_value(factory, container) ⇒ *
Invoke factory injecting container.
-
.static_value(value, _) ⇒ *
Resolve a static value.
Class Method Details
.call(definition, container) ⇒ *
Resolve definition using container
14 15 16 17 18 19 20 21 |
# File 'lib/justdi/resolver.rb', line 14 def call(definition, container) resolver_method = "#{definition.type}_value" unless respond_to? resolver_method raise Justdi::UnknownDefinitionTypeError, definition end send resolver_method, definition.pure_value, container end |
.class_value(value, container) ⇒ Object
Resolve class using container
28 29 30 |
# File 'lib/justdi/resolver.rb', line 28 def class_value(value, container) ClassResolver.call value, container end |
.factory_value(factory, container) ⇒ *
Invoke factory injecting container
46 47 48 |
# File 'lib/justdi/resolver.rb', line 46 def factory_value(factory, container) FactoryResolver.call factory, container end |
.static_value(value, _) ⇒ *
Resolve a static value
37 38 39 |
# File 'lib/justdi/resolver.rb', line 37 def static_value(value, _) value end |