Class: BasicSocket

Inherits:
IO
  • Object
show all
Defined in:
mrbgems/mruby-socket/mrblib/socket.rb

Direct Known Subclasses

IPSocket, Socket, UNIXSocket

Constant Summary collapse

@@do_not_reverse_lookup =
true

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from IO

#<<, #each, #each_byte, #each_char, #hash, open, pipe, popen, #pos=, #print, #printf, #puts, read, #rewind, #ungetbyte

Constructor Details

#initialize(*args) ⇒ BasicSocket

Returns a new instance of BasicSocket.



176
177
178
179
180
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 176

def initialize(*args)
  super(*args)
  self._is_socket = true
  @do_not_reverse_lookup = @@do_not_reverse_lookup
end

Instance Attribute Details

#do_not_reverse_lookupObject

Returns the value of attribute do_not_reverse_lookup.



205
206
207
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 205

def do_not_reverse_lookup
  @do_not_reverse_lookup
end

Class Method Details

.do_not_reverse_lookupObject



168
169
170
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 168

def self.do_not_reverse_lookup
  @@do_not_reverse_lookup
end

.do_not_reverse_lookup=(val) ⇒ Object



172
173
174
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 172

def self.do_not_reverse_lookup=(val)
  @@do_not_reverse_lookup = val ? true : false
end

.for_fd(fd) ⇒ Object



182
183
184
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 182

def self.for_fd(fd)
  super(fd, "r+")
end

Instance Method Details

#local_addressObject

def connect_address



188
189
190
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 188

def local_address
  Addrinfo.new self.getsockname
end

#recv_nonblock(maxlen, flags = 0) ⇒ Object



192
193
194
195
196
197
198
199
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 192

def recv_nonblock(maxlen, flags=0)
  begin
    _setnonblock(true)
    recv(maxlen, flags)
  ensure
    _setnonblock(false)
  end
end

#remote_addressObject



201
202
203
# File 'mrbgems/mruby-socket/mrblib/socket.rb', line 201

def remote_address
  Addrinfo.new self.getpeername
end