class Justdi::RegisterHandler

Utilitary handler registering value definitions

Attributes

callback[R]

Public Class Methods

new(&block) click to toggle source
# File lib/justdi/register_handler.rb, line 8
def initialize(&block)
  @callback = block
end

Public Instance Methods

use_class(klass) click to toggle source

Push class definition into container

@param klass [Class]

# File lib/justdi/register_handler.rb, line 15
def use_class(klass)
  callback.call(
    Definition.new(type: Definition::CLASS, value: klass)
  )
end
use_factory(factory = nil, &block) click to toggle source

Push a factory definition into container

@param factory [Proc] @param block [Proc]

# File lib/justdi/register_handler.rb, line 34
def use_factory(factory = nil, &block)
  factory = block if block_given?
  callback.call(
    Definition.new(type: Definition::FACTORY, value: factory)
  )
end
use_value(value) click to toggle source

Push a static definition into container

@param value [*]

# File lib/justdi/register_handler.rb, line 24
def use_value(value)
  callback.call(
    Definition.new(type: Definition::STATIC, value: value)
  )
end