.. _stdlib_network: ====================== Network socket library ====================== .. das:module:: network The NETWORK module implements networking facilities including HTTP client/server and low-level socket operations. It provides ``Server`` and ``Client`` classes with event-driven callbacks for handling connections, requests, and responses. All functions and symbols are in "network" module, use require to get access to it. .. code-block:: das require daslib/network ++++++++++++++++++ Handled structures ++++++++++++++++++ .. _handle-network-NetworkServer: .. das:attribute:: NetworkServer Base implementation of the server. ++++++++++++++++++++++++++ Low level NetworkServer IO ++++++++++++++++++++++++++ * :ref:`make_server (class: void?; info: StructInfo const?) : bool ` * :ref:`server_init (server: NetworkServer?; port: int) : bool ` * :ref:`server_is_connected (server: NetworkServer?) : bool ` * :ref:`server_is_open (server: NetworkServer?) : bool ` * :ref:`server_restore (server: NetworkServer?; class: void?; info: StructInfo const?) ` * :ref:`server_send (server: NetworkServer?; data: uint8?; size: int) : bool ` * :ref:`server_tick (server: NetworkServer?) ` .. _function-network_make_server_void_q__StructInfo_const_q_: .. das:function:: make_server(class: void?; info: StructInfo const?) : bool Creates a new ``Server`` instance. :Arguments: * **class** : void? implicit * **info** : :ref:`StructInfo `? implicit .. _function-network_server_init_NetworkServer_q__int: .. das:function:: server_init(server: NetworkServer?; port: int) : bool Initializes the server to listen on the specified port. :Arguments: * **server** : :ref:`NetworkServer `? implicit * **port** : int .. _function-network_server_is_connected_NetworkServer_q_: .. das:function:: server_is_connected(server: NetworkServer?) : bool Returns ``true`` if the server has an active client connection. :Arguments: * **server** : :ref:`NetworkServer `? implicit .. _function-network_server_is_open_NetworkServer_q_: .. das:function:: server_is_open(server: NetworkServer?) : bool Returns ``true`` if the server is listening on its bound port. :Arguments: * **server** : :ref:`NetworkServer `? implicit .. _function-network_server_restore_NetworkServer_q__void_q__StructInfo_const_q_: .. das:function:: server_restore(server: NetworkServer?; class: void?; info: StructInfo const?) Restores a server from an orphaned or interrupted state. :Arguments: * **server** : :ref:`NetworkServer `? implicit * **class** : void? implicit * **info** : :ref:`StructInfo `? implicit .. _function-network_server_send_NetworkServer_q__uint8_q__int: .. das:function:: server_send(server: NetworkServer?; data: uint8?; size: int) : bool Sends data from the server to the connected client. :Arguments: * **server** : :ref:`NetworkServer `? implicit * **data** : uint8? implicit * **size** : int .. _function-network_server_tick_NetworkServer_q_: .. das:function:: server_tick(server: NetworkServer?) Processes pending network I/O; must be called periodically for the server to function. :Arguments: * **server** : :ref:`NetworkServer `? implicit