class Argo::DeferredObject

Public Class Methods

new(&block) click to toggle source
# File lib/argo/deferred_object.rb, line 11
def initialize(&block)
  @__delegator_block__ = block
  @__mutex__ = Mutex.new
end

Public Instance Methods

__getobj__() click to toggle source
# File lib/argo/deferred_object.rb, line 16
def __getobj__
  @__mutex__.synchronize do
    @__getobj__ ||= @__delegator_block__.call
  end
  @__getobj__
end