package gapi-ocaml
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=b84b680528a5e050014103a8e7a60a5d43efd5fefc3f838310bd46769775ab48
md5=8ee26acf1f6c6f5e24c7b57fa070a0a2
doc/gapi-ocaml.netsys-local/Netsys_types/index.html
Module Netsys_types
Source
Types for all Netsys modules
Bytes and characters
Remember that up to OCaml-4.01 there was only the string
type, and strings were mutable (although frequently used as if there were immutable). Since OCaml-4.02 there is the immutable string
and the mutable bytes
type.
The general strategy for switching to the string/bytes scheme is to replace string
everywhere with bytes
, and to provide additional functions taking strings as input or output where it makes sense. There are exceptions, though, e.g. when the string acts as a key in a data structure.
The type name "string" also occurs in function names (e.g. "get_string") and in variant names (e.g. String_case
). As we want to be backward compatible, we keep the old names for functions on bytes
, and mark them as deprecated.
We consider 1-dimensional bigarrays of chars as memory buffers. They have the useful property that the garbage collector cannot relocate them, i.e. the address is fixed. Also, one can mmap a file, and connect the bigarray with shared memory.
A tagged buffer. Note that the `String
case is deprecated, and only provided for backward compatibility.
A tagged string which is considered as immutable. See also the support module Netstring_tstring
.
A read or write cannot be done because the descriptor is in non-blocking mode and would block. This corresponds to the Unix.EAGAIN
error but includes whether it was a read or write.
When the read or write is possible, the interrupted function should simply be again called.
These two exceptions are preferred by TLS providers.
The server requested a rehandshake (this exception is thrown in the client)
The client accepted or denied a rehandshake (this exception is thrown in the server). true
means acceptance.
A fatal error occurred (i.e. the session needs to be terminated). The string is a symbol identifying the error.
A non-fatal error occurred. The interrupted function should be called again. The string is a symbol identifying the warning.