class IPV4_SOCKET
Summary
An IPv4 SOCKET.
Direct parents
Inherit list: SOCKET_IMPL
Class invariant
Overview
Creation features
{SOCKET_HANDLER}
{SOCKET_SERVER, SOCKET_HANDLER}
Features
{SOCKET_HANDLER}
{SOCKET_SERVER, SOCKET_HANDLER}
{}
{SOCKET_HANDLER}
{}
{SOCKET_HANDLER}
socket listeners
{}
{RECYCLING_POOL}
  • recycle
    Do whatever needs to be done to free resources or recycle other objects when recycling this one
really low level
{}
  • dispose
    Action to be executed just before garbage collection reclaims an object.
{}
Plugin
{}
Name resolution -- see LOCALHOST
{}
Macros for setting options
{}
writable attribute
writable attribute
writable attribute
writable attribute
port: INTEGER_32
writable attribute
bind (server: SOCKET_SERVER, a_sync: BOOLEAN)
effective procedure
Binds the socket to the server.
common_make (ip_a: INTEGER_32, ip_b: INTEGER_32, ip_c: INTEGER_32, ip_d: INTEGER_32, a_port: INTEGER_32, a_sync: BOOLEAN)
effective procedure
{}
make_tcp (ip_a: INTEGER_32, ip_b: INTEGER_32, ip_c: INTEGER_32, ip_d: INTEGER_32, a_port: INTEGER_32, a_sync: BOOLEAN)
effective procedure
{}
make_udp (ip_a: INTEGER_32, ip_b: INTEGER_32, ip_c: INTEGER_32, ip_d: INTEGER_32, a_port: INTEGER_32, a_sync: BOOLEAN)
effective procedure
{}
bind_values: NATIVE_ARRAY[INTEGER_32]
writable attribute
{}
is_connected: BOOLEAN
writable attribute
ensure
  • Result implies is_remote_connected
is_remote_connected: BOOLEAN
writable attribute
error: STRING
writable attribute
read
effective procedure
require
  • is_connected
last_read: STRING
effective function
require
  • is_connected
write (data: STRING)
effective procedure
require
  • is_connected
  • data /= Void
disconnect
effective procedure
require
  • is_connected
ensure
  • not is_connected
  • not is_remote_connected
clear
effective procedure
require
  • not is_connected
writable attribute
set_sync (a_sync: BOOLEAN)
effective procedure
set blocking mode for reading, True is blocking, False nonblocking
ensure
  • sync = a_sync
sync: BOOLEAN
writable attribute
the blocking mode for reading from the socket, True is blocking, False nonblocking
connect (a_fd: INTEGER_32)
effective procedure
{}
buffer_size: INTEGER_32
writable attribute
{}
delay_read: BOOLEAN
writable attribute
{}
delayed_read
effective procedure
{}
require ensure
last_delayed_read: STRING
writable attribute
{}
default_buffer_size: INTEGER_32
is 8192
constant attribute
when_disconnected (a_listener: PROCEDURE[TUPLE 1[SOCKET]])
effective procedure
require
  • a_listener /= Void
disconnected_listeners: FAST_ARRAY[PROCEDURE[TUPLE 1[SOCKET]]]
writable attribute
{}
fire_disconnected
effective procedure
{}
recycle
effective procedure
Do whatever needs to be done to free resources or recycle other objects when recycling this one
dispose
effective procedure
{}
Action to be executed just before garbage collection reclaims an object.
require
last_error: STRING
effective function
{}
last_error_number: INTEGER_32
effective function
{}
require
net_tcp (ip_a: INTEGER_32, ip_b: INTEGER_32, ip_c: INTEGER_32, ip_d: INTEGER_32, a_port: INTEGER_32, a_sync: BOOLEAN): INTEGER_32
{}
net_udp (ip_a: INTEGER_32, ip_b: INTEGER_32, ip_c: INTEGER_32, ip_d: INTEGER_32, a_port: INTEGER_32, a_sync: BOOLEAN): INTEGER_32
{}
net_local (a_port: INTEGER_32, a_sync: BOOLEAN): INTEGER_32
{}
net_select (a_fd: INTEGER_32, a_timeout: REAL_64): INTEGER_32
{}
net_read (a_fd: INTEGER_32, a_count: INTEGER_32, a_buffer: POINTER, sync: BOOLEAN): INTEGER_32
{}
net_write (a_fd: INTEGER_32, a_count: INTEGER_32, a_buffer: NATIVE_ARRAY[CHARACTER]): INTEGER_32
{}
net_accept (a_fd: INTEGER_32, a_val: NATIVE_ARRAY[INTEGER_32], a_sync: BOOLEAN)
{}
net_disconnect (a_fd: INTEGER_32)
{}
net_shutdown (a_fd: INTEGER_32)
{}
net_last_error: POINTER
{}
net_last_error_number: INTEGER_32
{}
net_last_error_try_again: BOOLEAN
{}
net_hostname (a_hostname: POINTER): INTEGER_32
{}
net_tcp_server (port: INTEGER_32, a_sync: BOOLEAN): INTEGER_32
{}
net_udp_server (port: INTEGER_32, a_sync: BOOLEAN): INTEGER_32
{}
net_local_server (port: INTEGER_32, a_sync: BOOLEAN): INTEGER_32
{}
net_bind_server (socket: INTEGER_32, port: INTEGER_32, sockfamily: INTEGER_32): INTEGER_32
{}
net_set_int_option (fd: INTEGER_32, level: INTEGER_32, optname: INTEGER_32, opt_val: INTEGER_32): INTEGER_32
{}
net_tcp_socket (sync: BOOLEAN): INTEGER_32
{}
net_udp_socket (sync: BOOLEAN): INTEGER_32
{}
net_local_socket (sync: BOOLEAN): INTEGER_32
{}
net_gethostname: POINTER
{}
net_sethostname (hn: POINTER, size: INTEGER_32)
{}
net_getdomainname: POINTER
{}
net_setdomainname (dn: POINTER, size: INTEGER_32)
{}
sol_socket: INTEGER_32
{}
so_reuse_addr: INTEGER_32
{}
af_inet: INTEGER_32
{}