Class: Event::Debug::Selector
- Inherits:
-
Object
- Object
- Event::Debug::Selector
- Defined in:
- lib/event/debug/selector.rb
Overview
Enforces the selector interface and delegates operations to a wrapped selector instance.
Instance Method Summary collapse
- #close ⇒ Object
-
#initialize(selector) ⇒ Selector
constructor
A new instance of Selector.
- #io_wait(fiber, io, events) ⇒ Object
- #process_wait(*arguments) ⇒ Object
- #push(fiber) ⇒ Object
- #raise(fiber, *arguments) ⇒ Object
- #ready? ⇒ Boolean
- #resume(*arguments) ⇒ Object
- #select(duration = nil) ⇒ Object
- #transfer(*arguments) ⇒ Object
- #yield ⇒ Object
Constructor Details
#initialize(selector) ⇒ Selector
Returns a new instance of Selector.
27 28 29 30 31 32 33 |
# File 'lib/event/debug/selector.rb', line 27 def initialize(selector) @selector = selector @readable = {} @writable = {} @priority = {} end |
Instance Method Details
#close ⇒ Object
35 36 37 38 39 40 41 42 |
# File 'lib/event/debug/selector.rb', line 35 def close if @selector.nil? raise "Selector already closed!" end @selector.close @selector = nil end |
#io_wait(fiber, io, events) ⇒ Object
76 77 78 |
# File 'lib/event/debug/selector.rb', line 76 def io_wait(fiber, io, events) register_readable(fiber, io, events) end |
#process_wait(*arguments) ⇒ Object
72 73 74 |
# File 'lib/event/debug/selector.rb', line 72 def process_wait(*arguments) @selector.process_wait(*arguments) end |
#push(fiber) ⇒ Object
60 61 62 |
# File 'lib/event/debug/selector.rb', line 60 def push(fiber) @selector.push(fiber) end |
#raise(fiber, *arguments) ⇒ Object
64 65 66 |
# File 'lib/event/debug/selector.rb', line 64 def raise(fiber, *arguments) @selector.raise(fiber, *arguments) end |
#ready? ⇒ Boolean
68 69 70 |
# File 'lib/event/debug/selector.rb', line 68 def ready? @selector.ready? end |
#resume(*arguments) ⇒ Object
52 53 54 |
# File 'lib/event/debug/selector.rb', line 52 def resume(*arguments) @selector.resume(*arguments) end |
#select(duration = nil) ⇒ Object
80 81 82 |
# File 'lib/event/debug/selector.rb', line 80 def select(duration = nil) @selector.select(duration) end |
#transfer(*arguments) ⇒ Object
44 45 46 |
# File 'lib/event/debug/selector.rb', line 44 def transfer(fiber, *arguments) @selector.transfer(fiber, *arguments) end |
#yield ⇒ Object
56 57 58 |
# File 'lib/event/debug/selector.rb', line 56 def yield @selector.yield end |