Class: Skein::Handler::Async

Inherits:
Skein::Handler show all
Defined in:
lib/skein/handler/async.rb

Constant Summary

Constants inherited from Skein::Handler

RPC_BASE

Instance Attribute Summary

Attributes inherited from Skein::Handler

#context

Instance Method Summary collapse

Methods inherited from Skein::Handler

for, #handle, #initialize, #json_rpc

Constructor Details

This class inherits a constructor from Skein::Handler

Instance Method Details

#delegate(*args) {|fiber.resume| ... } ⇒ Object

Instance Methods =====================================================

Yields:

  • (fiber.resume)


4
5
6
7
8
9
10
11
12
# File 'lib/skein/handler/async.rb', line 4

def delegate(*args)
  fiber = Fiber.new do
    @target.send(*args) do |*response|
      Fiber.yield(*response)
    end
  end

  yield(fiber.resume)
end