class Concurrent::Promises::AbstractPromise
@abstract @private
Public Class Methods
new(future)
click to toggle source
Calls superclass method
# File lib/concurrent-ruby/concurrent/promises.rb, line 1542 def initialize(future) super() @Future = future end
Public Instance Methods
default_executor()
click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1553 def default_executor future.default_executor end
delayed_because()
click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1570 def delayed_because nil end
evaluate_to(*args, block)
click to toggle source
@return [Future]
# File lib/concurrent-ruby/concurrent/promises.rb, line 1581 def evaluate_to(*args, block) resolve_with Fulfilled.new(block.call(*args)) rescue Exception => error resolve_with Rejected.new(error) raise error unless error.is_a?(StandardError) end
future()
click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1547 def future @Future end
Also aliased as: event
state()
click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1557 def state future.state end
to_s()
click to toggle source
Calls superclass method
# File lib/concurrent-ruby/concurrent/promises.rb, line 1564 def to_s format '%s %s>', super[0..-2], @Future end
Also aliased as: inspect
touch()
click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1561 def touch end
Private Instance Methods
resolve_with(new_state, raise_on_reassign = true)
click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1576 def resolve_with(new_state, raise_on_reassign = true) @Future.resolve_with(new_state, raise_on_reassign) end