Sha256: 7eb338fd4716d0beea52670821ecd81143f94fbd5801061891dbfbdd4846d4ca

Contents?: true

Size: 748 Bytes

Versions: 8

Compression:

Stored size: 748 Bytes

Contents

# frozen_string_literal: true

# @api private
# @since 0.1.0
class SmartCore::Container::Entities::Dependency < SmartCore::Container::Entities::Base
  # @return [String]
  #
  # @api private
  # @since 0.1.0
  alias_method :dependency_name, :external_name

  # @param dependency_name [String]
  # @param dependency_definition [Proc]
  # @return [void]
  #
  # @api private
  # @since 0.1.0
  def initialize(dependency_name, dependency_definition)
    super(dependency_name)
    @dependency_definition = dependency_definition
  end

  # @return [Any]
  #
  # @api private
  # @since 0.1.0
  def reveal
    dependency_definition.call
  end

  private

  # @return [Proc]
  #
  # @api private
  # @since 0.1.0
  attr_reader :dependency_definition
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
smart_container-0.8.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.7.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.6.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.5.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.4.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.3.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.2.0 lib/smart_core/container/entities/dependency.rb
smart_container-0.1.0 lib/smart_core/container/entities/dependency.rb