promise_hash.rb

 1# frozen_string_literal: true
 2
 3require "em_promise"
 4
 5module PromiseHash
 6	def self.all(**kwargs)
 7		keys = kwargs.keys
 8		EMPromise.all(kwargs.values).then { |results|
 9			Hash[keys.zip(results)]
10		}
11	end
12end