hare

[hare] The Hare programming language
git clone https://git.torresjrjr.com/hare.git
Log | Files | Refs | README | LICENSE

options.ha (917B)


      1 // SPDX-License-Identifier: MPL-2.0
      2 // (c) Hare authors <https://harelang.org>
      3 
      4 use net;
      5 
      6 // Enables keep-alive for a socket.
      7 export type keepalive = void;
      8 
      9 // Configures the backlog size for a listener. If not specified, a sensible
     10 // default (10) is used.
     11 export type backlog = u32;
     12 
     13 // Enables port re-use for a TCP listener.
     14 export type reuseport = void;
     15 
     16 // Enables address re-use for a TCP listener.
     17 export type reuseaddr = void;
     18 
     19 // To have the system select an arbitrary unused port for [[listen]], set port to
     20 // zero. To retrieve the assigned port, provide this as one of the options and
     21 // the addressed u16 will be filled in with the port.
     22 export type portassignment = *u16;
     23 
     24 // Options for [[connect]].
     25 export type connect_option = (keepalive | net::sockflag);
     26 
     27 // Options for [[listen]].
     28 export type listen_option = (
     29 	keepalive |
     30 	reuseport |
     31 	reuseaddr |
     32 	backlog |
     33 	portassignment |
     34 	net::sockflag);