class Justdi::Definition

Wrapper over pure container values

Constants

CLASS
FACTORY
STATIC

Attributes

pure_value[R]
type[R]
value[R]

Public Class Methods

new(type: STATIC, value:) click to toggle source

@param type [Symbol] @param value [*]

# File lib/justdi/definition.rb, line 14
def initialize(type: STATIC, value:)
  @type        = type
  @pure_value  = value
  @is_resolved = false
end

Public Instance Methods

resolve() { |self| ... } click to toggle source

Get resolved value using generator

@yield [self] generating resolved value @return [*]

# File lib/justdi/definition.rb, line 31
def resolve
  return value if resolved?

  @value = yield self
  @is_resolved = true

  @value
end
resolved?() click to toggle source

Definition value is resolved

@return [Boolean]

# File lib/justdi/definition.rb, line 23
def resolved?
  @is_resolved
end