class Svent::EventCallbackFiber

Attributes

callback[R]
info[R]
name[R]

Wrap the event callback function with Fiber.

Public Class Methods

new(helper, name, callback, info) click to toggle source
# File lib/svent/event_callback_fiber.rb, line 12
def initialize(helper, name, callback, info)
  @name = name
  @info = info
  @callback = callback
  @fiber = Fiber.new do
    @callback.call(helper, info)
    @fiber = nil
  end
  # self.resume
  @return = nil
end

Public Instance Methods

alive?() click to toggle source
# File lib/svent/event_callback_fiber.rb, line 32
def alive?
  @fiber != nil
end
resume() click to toggle source
# File lib/svent/event_callback_fiber.rb, line 24
def resume
  if @return
    @fiber = nil
  else
    @return = @fiber.resume
  end
end