An alarm is a piece of data that calls a user function at the end of each major GC cycle.
Currently, the official distribution only supports Native and
Bytecode, but it can be other backends with alternative
compilers, for example, javascript.
('a,'b) continuation is a delimited continuation that expects a 'a
value and returns a 'b value.
('a,'b) continuation is a delimited continuation that expects a 'a
value and returns a 'b value.
'a effect_handler is a deep handler with an identity value handler
fun x -> x and an exception handler that raises any exception
fun e -> raise e.
Abstract data corresponding to a pretty-printer (also called a formatter) and all its machinery.
The set of output functions specific to a formatter: the out_string function performs all the pretty-printer string output.
It is called with a string s, a start position p, and a number of
characters n; it is supposed to output characters p to p + n - 1 of
s., the out_flush function flushes the pretty-printer output device., out_newline is called to open a new line when the pretty-printer splits
the line., the out_spaces function outputs spaces when a break hint leads to spaces
instead of a line split. It is called with the number of spaces to output., the out_indent function performs new line indentation when the
pretty-printer splits the line. It is called with the indentation value of
the new line.
By default: fields out_string and out_flush are output device specific;
(e.g. output_string and flush for a
out_channel device, or Buffer.add_substring and
ignore for a Buffer.t output device),, field out_newline is equivalent to out_string "\n" 0 1;, fields out_spaces and out_indent are equivalent to
out_string (String.make n ' ') 0 n.
The semantic tag handling functions specific to a formatter:
mark versions are the 'tag-marking' functions that associate a string
marker to a tag in order for the pretty-printing engine to write
those markers as 0 length tokens in the output device of the formatter.
To facilitate interoperability with existing C and Fortran code, this library supports two different memory layouts for Bigarrays, one compatible with the C conventions, the other compatible with the Fortran conventions.
The five classes of floating-point numbers, as determined by
the classify_float function.
The five classes of floating-point numbers, as determined by
the Float.classify_float function.
('a,'b) handler is a handler record with three fields -- retc
is the value handler, exnc handles exceptions, and effc handles the
effects performed by the computation enclosed by the handler.
('a,'b) handler is a handler record with three fields -- retc
is the value handler, exnc handles exceptions, and effc handles the
effects performed by the computation enclosed by the handler.
The notion of input channel for the Scanf module:
those channels provide all the machinery necessary to read from any source
of characters, including a in_channel value.
To each element kind is associated an OCaml type, which is the type of OCaml values that can be stored in the Bigarray or read back from it.
The flags for UnixLabels.recv, UnixLabels.recvfrom, UnixLabels.send and UnixLabels.sendto.
A node is either Nil, which means that the sequence is empty,
or Cons (x, xs), which means that x is the first element
of the sequence and that xs is the remainder of the sequence.
The type raw_backtrace stores a backtrace in a low-level format,
which can be converted to usable form using raw_backtrace_entries
and backtrace_slots_of_raw_entry below.
The type of formatted input scanners: ('a, 'b, 'c, 'd) scanner
is the type of a formatted input function that reads from some
formatted input channel according to some format string; more
precisely, if scan is some formatted input function, then scan
ic fmt f applies f to all the arguments specified by format
string fmt, when scan has read those arguments from the
Scanf.Scanning.in_channel formatted input channel ic.
What to do when receiving a signal: Signal_default: take the default behavior
(usually: abort the program), Signal_ignore: ignore the signal, Signal_handle f: call function f, giving it the signal
number as argument.
The socket options that can be consulted with UnixLabels.getsockopt
and modified with UnixLabels.setsockopt.
The socket options that can be consulted with Unix.getsockopt
and modified with Unix.setsockopt.
The socket options that can be consulted with UnixLabels.getsockopt_float
and modified with UnixLabels.setsockopt_float.
The socket options that can be consulted with Unix.getsockopt_float
and modified with Unix.setsockopt_float.
The socket options that can be consulted with UnixLabels.getsockopt_int
and modified with UnixLabels.setsockopt_int.
The socket options that can be consulted with Unix.getsockopt_int
and modified with Unix.setsockopt_int.
The socket options that can be consulted with UnixLabels.getsockopt_optint
and modified with UnixLabels.setsockopt_optint.
The socket options that can be consulted with Unix.getsockopt_optint
and modified with Unix.setsockopt_optint.
Semantic tags (or simply tags) are user's defined annotations to associate user's specific operations to printed entities.
A value of type 'a Lazy.t is a deferred computation, called a suspension,
that has a result of type 'a.
A domain of type 'a t runs independently, eventually producing a
result of type 'a, or an exception
The type of three-dimensional Bigarrays whose elements have
OCaml type 'a, representation kind 'b, and memory layout 'c.
The type of two-dimensional Bigarrays whose elements have
OCaml type 'a, representation kind 'b, and memory layout 'c.
The type of one-dimensional Bigarrays whose elements have
OCaml type 'a, representation kind 'b, and memory layout 'c.
The type of zero-dimensional Bigarrays whose elements have
OCaml type 'a, representation kind 'b, and memory layout 'c.
The type Genarray.t is the type of Bigarrays with variable
numbers of dimensions.
A ('minor, 'major) tracker describes how memprof should track
sampled blocks over their lifetime, keeping a user-defined piece
of metadata for each of them: 'minor is the type of metadata
to keep for minor blocks, and 'major the type of metadata
for major blocks.