module Q
Constants
- VERSION
Public Class Methods
defer(&block)
click to toggle source
# File lib/q.rb, line 7 def self.defer(&block) defer = Q::Defer.new block.call(defer) defer.promise end
when(promises)
click to toggle source
# File lib/q.rb, line 15 def self.when(promises) defer = Q::Defer.new @results = [] promises.each do |promise| promise.then do |result| @results << result defer.resolve(@results) if @results.length == promises.length end.fail do |result| defer.reject([result, @results]) end end defer.promise end