Files

Class/Module Index [+]

Quicksearch

Concurrent::Edge::ZipFutureFuturePromise

@!visibility private

Public Class Methods

new(future1, future2, default_executor) click to toggle source
# File lib/concurrent/edge/future.rb, line 1195
def initialize(future1, future2, default_executor)
  @Future1Result = future1
  @Future2Result = future2
  super Future.new(self, default_executor), [future1, future2], 2
end

Public Instance Methods

on_completable(done_future) click to toggle source
# File lib/concurrent/edge/future.rb, line 1201
def on_completable(done_future)
  success1, value1, reason1 = @Future1Result.result
  success2, value2, reason2 = @Future2Result.result
  success                   = success1 && success2
  new_state                 = if success
                                Future::SuccessArray.new([value1, value2])
                              else
                                Future::PartiallyFailed.new([value1, value2], [reason1, reason2])
                              end
  complete_with new_state
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.