class ZMQ::PollItem

Attributes

poll_item[RW]
pollable[RW]

Public Class Methods

from_pointer(pointer) click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 14
def self.from_pointer(pointer)
  self.new(LibZMQ::PollItem.new(pointer))
end
from_pollable(pollable) click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 18
def self.from_pollable(pollable)
  item = self.new
  item.pollable = pollable
  case
  when pollable.respond_to?(:socket)
    item.socket = pollable.socket
  when pollable.respond_to?(:posix_fileno)
    item.fd = pollable.posix_fileno
  when pollable.respond_to?(:io)
    item.fd = pollable.io.posix_fileno
  end
  item
end
new(zmq_poll_item = nil) click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 10
def initialize(zmq_poll_item = nil)
  @poll_item = zmq_poll_item || LibZMQ::PollItem.new
end

Public Instance Methods

closed?() click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 32
def closed?
  case
  when pollable.respond_to?(:closed?)
    pollable.closed?
  when pollable.respond_to?(:socket)
    pollable.socket.nil?
  when pollable.respond_to?(:io)
    pollable.io.closed?
  end
end
events() click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 53
def events; @poll_item[:events]; end
events=(arg) click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 51
def events=(arg); @poll_item[:events] = arg; end
fd() click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 49
def fd; @poll_item[:fd]; end
fd=(arg) click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 47
def fd=(arg); @poll_item[:fd] = arg; end
socket() click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 45
def socket; @poll_item[:socket]; end
socket=(arg) click to toggle source
# File lib/ffi-rzmq/poll_item.rb, line 43
def socket=(arg); @poll_item[:socket] = arg; end