+
Point of view
All features
class LOCALHOST
Summary
The very machine on which the program runs
The name resolution part was originally written by Serge Romanchenko <se@sir.nensi.net>
Direct parents
Inherit list: HOST
Overview
Creation features
{ANY}
Features
{ANY}
{ACCESS, ADDRESS}
{}
{ANY}
{}
{ANY}
{ANY}
  • is_equal (other: LOCALHOST): BOOLEAN
    Is other attached to an object considered equal to current object?
{}
Plugin
{}
Name resolution -- see LOCALHOST
{}
Macros for setting options
{}
fqdn: STRING
effective function
{ANY}
Fully Qualified Domain Name
host_name: STRING
effective function
{ANY}
Short host name
domain_name: STRING
effective function
{ANY}
Full domain name (without the host_name`)
set_host_name (a_host_name: STRING)
effective procedure
{ANY}
require
  • a_host_name /= Void and then not a_host_name.is_empty
set_domain_name (a_domain_name: STRING)
effective procedure
{ANY}
require
  • a_domain_name /= Void and then not a_domain_name.is_empty
new_socket (access: ACCESS): SOCKET
effective function
require
  • access /= Void
ensure
  • error = Void implies Result /= Void
make
effective procedure
{}
hostname: STRING
writable attribute
{ANY}
The name of the host
effective function
{ANY}
hash_code: INTEGER_32
effective function
{ANY}
The hash-code value of Current.
ensure
  • good_hash_value: Result >= 0
out: STRING
effective function
{ANY}
Create a new string containing terse printable representation of current object.
resolved: IPV4_ADDRESS
writable attribute
{}
resolve
effective procedure
{}
Resolve the host address by looking for the IP address (uses DNS resolution)
require ensure
error: STRING
writable attribute
{ANY}
If there was an error
is_equal (other: LOCALHOST): BOOLEAN
deferred function
{ANY}
Is other attached to an object considered equal to current object?
require
  • other /= Void
ensure
  • Result implies hash_code = other.hash_code
  • commutative: generating_type = other.generating_type implies Result = other.is_equal(Current)
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
{}