class Visionary::Promise

Attributes

setted_up[RW]

Public Class Methods

setup!() click to toggle source
# File lib/visionary/promise.rb, line 5
def setup!
  unless setted_up
    Kernel.send :define_method, :promise do
      Promise.new
    end
    self.setted_up = true
  end
end

Public Instance Methods

complete(computed_value) click to toggle source
# File lib/visionary/promise.rb, line 23
def complete(computed_value)
  future.instance_eval { complete_with(computed_value) }
  freeze
end
fail(provided_error) click to toggle source
# File lib/visionary/promise.rb, line 28
def fail(provided_error)
  future.instance_eval { fail_with(provided_error) }
  freeze
end
future() click to toggle source
# File lib/visionary/promise.rb, line 19
def future
  @future ||= Future.new
end