em.rb

 1# frozen_string_literal: true
 2
 3require "em_promise"
 4
 5module EM
 6	def self.promise_defer(klass: EMPromise, &block)
 7		promise = klass.new
 8		EventMachine.defer(
 9			block,
10			promise.method(:fulfill),
11			promise.method(:reject)
12		)
13		promise
14	end
15end