class Promising::Future
Public Class Methods
new(timeout:nil,&block)
click to toggle source
Creates a new future.
@yield [] The block to evaluate optimistically. @see Kernel#future
# File lib/promising/future.rb, line 20 def initialize(timeout:nil,&block) @promise = Promise.new(timeout:timeout,&block) @thread = ::Thread.new{@promise.__force__} end
Public Instance Methods
__force__()
click to toggle source
The value of the future’s evaluation. Blocks until result available.
@return [Object]
# File lib/promising/future.rb, line 29 def __force__ @thread.join if @thread @promise end
Also aliased as: force
respond_to?(method, include_all=false)
click to toggle source
Does this future support the given method?
@param [Symbol] @return [Boolean]
# File lib/promising/future.rb, line 40 def respond_to?(method, include_all=false) :force.equal?(method) || :__force__.equal?(method) || __force__.respond_to?(method, include_all) end
Private Instance Methods
method_missing(method, *args, &block)
click to toggle source
# File lib/promising/future.rb, line 46 def method_missing(method, *args, &block) __force__.__send__(method, *args, &block) end