Sha256: fd31e5b75bf69e3d9cf3f74ced001d1d6fad9863435b7544a4035ba3ee169e81
Contents?: true
Size: 815 Bytes
Versions: 1
Compression:
Stored size: 815 Bytes
Contents
module Kernel def promise(p = Promise.new, &block) begin result = block.call return p.resolve(result) if result after(10) { promise(p, &block) } rescue => e return p.reject(e) end p end if RUBY_ENGINE == 'opal' def on_browser?; true; end def on_desktop?; false; end def on_mobile?; false; end def on_tablet?; false; end def on_tv?; false; end def on_server?; false; end def after(time_ms, &block) `setTimeout(#{block.to_n}, time_ms)` end else def on_browser?; false; end def on_desktop?; false; end def on_mobile?; false; end def on_tablet?; false; end def on_tv?; false; end def on_server?; true; end def after(time_ms, &block) sleep time_ms/1000 block.call end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
isomorfeus-transport-23.6.0.rc5 | lib/isomorfeus/core_ext/kernel.rb |