Class: Rbgo::IOMachine
- Inherits:
-
Object
- Object
- Rbgo::IOMachine
- Defined in:
- lib/rbgo/io_machine.rb
Instance Method Summary collapse
- #close ⇒ Object
- #closed? ⇒ Boolean
- #do_read(io, length: nil) ⇒ Object
- #do_read_line(io, sep: $/, limit: nil) ⇒ Object
- #do_read_partial(io, maxlen:) ⇒ Object
- #do_socket_accept(sock) ⇒ Object
- #do_socket_connect(sock, remote_sockaddr:) ⇒ Object
- #do_socket_recv(sock, maxlen:, flags: 0) ⇒ Object
- #do_socket_recvmsg(sock, maxdatalen: nil, flags: 0, maxcontrollen: nil, opts: {}) ⇒ Object
- #do_socket_sendmsg(sock, mesg, flags: 0, dest_sockaddr: nil, controls: []) ⇒ Object
- #do_write(io, str:) ⇒ Object
Instance Method Details
#close ⇒ Object
70 71 72 73 |
# File 'lib/rbgo/io_machine.rb', line 70 def close actor.close selector.close end |
#closed? ⇒ Boolean
75 76 77 |
# File 'lib/rbgo/io_machine.rb', line 75 def closed? actor.closed? && selector.closed? end |
#do_read(io, length: nil) ⇒ Object
7 8 9 10 11 12 |
# File 'lib/rbgo/io_machine.rb', line 7 def do_read(io, length: nil) op = [:register_read, io, length] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_read_line(io, sep: $/, limit: nil) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/rbgo/io_machine.rb', line 21 def do_read_line(io, sep: $/, limit: nil) op = [:register_read_line, io, sep, limit] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_read_partial(io, maxlen:) ⇒ Object
28 29 30 31 32 33 |
# File 'lib/rbgo/io_machine.rb', line 28 def do_read_partial(io, maxlen:) op = [:register_read_partial, io, maxlen] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_socket_accept(sock) ⇒ Object
35 36 37 38 39 40 |
# File 'lib/rbgo/io_machine.rb', line 35 def do_socket_accept(sock) op = [:register_socket_accept, sock] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_socket_connect(sock, remote_sockaddr:) ⇒ Object
42 43 44 45 46 47 |
# File 'lib/rbgo/io_machine.rb', line 42 def do_socket_connect(sock, remote_sockaddr:) op = [:register_socket_connect, sock, remote_sockaddr] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_socket_recv(sock, maxlen:, flags: 0) ⇒ Object
49 50 51 52 53 54 |
# File 'lib/rbgo/io_machine.rb', line 49 def do_socket_recv(sock, maxlen:, flags: 0) op = [:register_socket_recv, sock, maxlen, flags] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_socket_recvmsg(sock, maxdatalen: nil, flags: 0, maxcontrollen: nil, opts: {}) ⇒ Object
56 57 58 59 60 61 |
# File 'lib/rbgo/io_machine.rb', line 56 def do_socket_recvmsg(sock, maxdatalen: nil, flags: 0, maxcontrollen: nil, opts: {}) op = [:register_socket_recvmsg, sock, maxdatalen, flags, maxcontrollen, opts] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_socket_sendmsg(sock, mesg, flags: 0, dest_sockaddr: nil, controls: []) ⇒ Object
63 64 65 66 67 68 |
# File 'lib/rbgo/io_machine.rb', line 63 def do_socket_sendmsg(sock, mesg, flags: 0, dest_sockaddr: nil, controls: []) op = [:register_socket_sendmsg, sock, mesg, flags, dest_sockaddr, controls] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |
#do_write(io, str:) ⇒ Object
14 15 16 17 18 19 |
# File 'lib/rbgo/io_machine.rb', line 14 def do_write(io, str:) op = [:register_write, io, str] receipt = IOReceipt.new(op) actor.send_msg(receipt) receipt end |