class SmartCore::Container::DefinitionDSL::Commands::Definition::Compose

@api private @since 0.1.0

Attributes

container_klass[R]

@return [Class<SmartCore::Container>]

@api private @since 0.1.0

Public Class Methods

new(container_klass) click to toggle source

@param container_klass [Class<SmartCore::Container>] @return [void]

@api private @since 0.1.0

# File lib/smart_core/container/definition_dsl/commands/definition/compose.rb, line 15
def initialize(container_klass)
  raise(
    SmartCore::ArgumentError,
    'Container class should be a subtype of Quantum::Container'
  ) unless container_klass < SmartCore::Container

  @container_klass = container_klass
end

Public Instance Methods

call(registry) click to toggle source

@param registry [SmartCore::Container::Registry] @return [void]

@api private @since 0.1.0

# File lib/smart_core/container/definition_dsl/commands/definition/compose.rb, line 29
def call(registry)
  SmartCore::Container::RegistryBuilder.define(container_klass, registry)
end
dup() click to toggle source

@return [SmartCore::Container::DefinitionDSL::Commands::Definition::Compose]

@api private @since 0.1.0

# File lib/smart_core/container/definition_dsl/commands/definition/compose.rb, line 37
def dup
  self.class.new(container_klass)
end