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
event()
Alias for: future
future() click to toggle source
# File lib/concurrent-ruby/concurrent/promises.rb, line 1547
def future
  @Future
end
Also aliased as: event
inspect()
Alias for: to_s
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