lib/future.rb in promise-0.1.0 vs lib/future.rb in promise-0.1.1

- old
+ new

@@ -5,19 +5,19 @@ # @example # x = future { sleep 5; 1 + 2 } # # do stuff... # y = x * 2 # => 6. blocks unless 5 seconds has passed. # -class Future - - instance_methods.each { |m| undef_method m unless m =~ /__/ } +class Future < defined?(BasicObject) ? BasicObject : Object + instance_methods.each { |m| undef_method m unless m =~ /__|object_id/ } unless defined?(BasicObject) + ## # @param [Proc] block # @return [Future] def initialize(block) @promise = promise &block - @thread = Thread.new do + @thread = ::Thread.new do @promise.force end end ##