Class: Codependent::Injectable
- Inherits:
-
Object
- Object
- Codependent::Injectable
- Defined in:
- lib/codependent/injectable.rb
Instance Attribute Summary collapse
-
#dependencies ⇒ Object
readonly
Returns the value of attribute dependencies.
-
#resolver ⇒ Object
readonly
Returns the value of attribute resolver.
-
#state ⇒ Object
readonly
Returns the value of attribute state.
Instance Method Summary collapse
- #depends_on?(dependency_id) ⇒ Boolean
-
#initialize(type, dependencies, state, resolver) ⇒ Injectable
constructor
A new instance of Injectable.
- #instance? ⇒ Boolean
- #singleton? ⇒ Boolean
- #value(dependencies) ⇒ Object
Constructor Details
#initialize(type, dependencies, state, resolver) ⇒ Injectable
Returns a new instance of Injectable.
3 4 5 6 7 8 9 |
# File 'lib/codependent/injectable.rb', line 3 def initialize(type, dependencies, state, resolver) @type = type @dependencies = dependencies @state = state @resolver = resolver @singleton_value = nil end |
Instance Attribute Details
#dependencies ⇒ Object (readonly)
Returns the value of attribute dependencies.
11 12 13 |
# File 'lib/codependent/injectable.rb', line 11 def dependencies @dependencies end |
#resolver ⇒ Object (readonly)
Returns the value of attribute resolver.
11 12 13 |
# File 'lib/codependent/injectable.rb', line 11 def resolver @resolver end |
#state ⇒ Object (readonly)
Returns the value of attribute state.
11 12 13 |
# File 'lib/codependent/injectable.rb', line 11 def state @state end |
Instance Method Details
#depends_on?(dependency_id) ⇒ Boolean
13 14 15 |
# File 'lib/codependent/injectable.rb', line 13 def depends_on?(dependency_id) @dependencies.include?(dependency_id) end |
#instance? ⇒ Boolean
21 22 23 |
# File 'lib/codependent/injectable.rb', line 21 def instance? @type == :instance end |
#singleton? ⇒ Boolean
17 18 19 |
# File 'lib/codependent/injectable.rb', line 17 def singleton? @type == :singleton end |
#value(dependencies) ⇒ Object
25 26 27 |
# File 'lib/codependent/injectable.rb', line 25 def value(dependencies) singleton? ? singleton_value(dependencies) : instance_value(dependencies) end |