Class: BasicSocket
Direct Known Subclasses
Constant Summary collapse
- @@do_not_reverse_lookup =
true
Instance Attribute Summary collapse
-
#do_not_reverse_lookup ⇒ Object
Returns the value of attribute do_not_reverse_lookup.
Class Method Summary collapse
-
.do_not_reverse_lookup ⇒ Object
call-seq: BasicSocket.do_not_reverse_lookup -> true or false.
-
.do_not_reverse_lookup=(val) ⇒ Object
call-seq: BasicSocket.do_not_reverse_lookup = boolean -> boolean.
-
.for_fd(fd) ⇒ Object
call-seq: BasicSocket.for_fd(fd) -> basicsocket.
Instance Method Summary collapse
-
#initialize(*args) ⇒ BasicSocket
constructor
call-seq: BasicSocket.new(*args) -> basicsocket.
-
#local_address ⇒ Object
call-seq: basicsocket.local_address -> addrinfo.
-
#recv_nonblock(maxlen, flags = 0) ⇒ Object
call-seq: basicsocket.recv_nonblock(maxlen, flags=0) -> string.
-
#remote_address ⇒ Object
call-seq: basicsocket.remote_address -> addrinfo.
Methods inherited from IO
#each, #each_byte, #each_char, #hash, open, pipe, popen, #pos=, #printf, read, #rewind
Constructor Details
#initialize(*args) ⇒ BasicSocket
call-seq:
BasicSocket.new(*args) -> basicsocket
Creates a new BasicSocket object. This is typically called by subclasses.
399 400 401 402 403 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 399 def initialize(*args) super(*args) self._is_socket = true @do_not_reverse_lookup = @@do_not_reverse_lookup end |
Instance Attribute Details
#do_not_reverse_lookup ⇒ Object
Returns the value of attribute do_not_reverse_lookup.
461 462 463 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 461 def do_not_reverse_lookup @do_not_reverse_lookup end |
Class Method Details
.do_not_reverse_lookup ⇒ Object
call-seq:
BasicSocket.do_not_reverse_lookup -> true or false
Returns the current setting for reverse DNS lookups.
BasicSocket.do_not_reverse_lookup #=> false
377 378 379 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 377 def self.do_not_reverse_lookup @@do_not_reverse_lookup end |
.do_not_reverse_lookup=(val) ⇒ Object
call-seq:
BasicSocket.do_not_reverse_lookup = boolean -> boolean
Sets whether to perform reverse DNS lookups.
BasicSocket.do_not_reverse_lookup = true
389 390 391 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 389 def self.do_not_reverse_lookup=(val) @@do_not_reverse_lookup = val ? true : false end |
.for_fd(fd) ⇒ Object
call-seq:
BasicSocket.for_fd(fd) -> basicsocket
Creates a BasicSocket object from an existing file descriptor.
sock = BasicSocket.for_fd(3)
413 414 415 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 413 def self.for_fd(fd) super(fd, "r+") end |
Instance Method Details
#local_address ⇒ Object
call-seq:
basicsocket.local_address -> addrinfo
Returns an Addrinfo object for the local address of the socket.
sock.local_address #=> #<Addrinfo: 127.0.0.1:12345 TCP>
427 428 429 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 427 def local_address Addrinfo.new self.getsockname end |
#recv_nonblock(maxlen, flags = 0) ⇒ Object
call-seq:
basicsocket.recv_nonblock(maxlen, flags=0) -> string
Receives data from the socket without blocking. May raise an exception if no data is available.
data = sock.recv_nonblock(1024)
440 441 442 443 444 445 446 447 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 440 def recv_nonblock(maxlen, flags=0) begin _setnonblock(true) recv(maxlen, flags) ensure _setnonblock(false) end end |
#remote_address ⇒ Object
call-seq:
basicsocket.remote_address -> addrinfo
Returns an Addrinfo object for the remote address of the socket.
sock.remote_address #=> #<Addrinfo: 192.168.1.1:80 TCP>
457 458 459 |
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 457 def remote_address Addrinfo.new self.getpeername end |