Import Debian changes 20180207-1
[hcoop/debian/mlton.git] / basis-library / mlton / mlton.sig
1 (* Copyright (C) 2013 Matthew Fluet.
2 * Copyright (C) 1999-2007 Henry Cejtin, Matthew Fluet, Suresh
3 * Jagannathan, and Stephen Weeks.
4 * Copyright (C) 1997-2000 NEC Research Institute.
5 *
6 * MLton is released under a BSD-style license.
7 * See the file MLton-LICENSE for details.
8 *)
9
10 signature MLTON =
11 sig
12 (* val cleanAtExit: unit -> unit *)
13 val debug: bool
14 (* val deserialize: Word8Vector.vector -> 'a *)
15 (* Pointer equality. The usual caveats about lack of a well-defined
16 * semantics.
17 *)
18 val eq: 'a * 'a -> bool
19 (* Structural equality. Equivalent to SML's polymorphic
20 * equality on equality types and a conservative approximation
21 * of equivalence other types.
22 *)
23 val equal: 'a * 'a -> bool
24 (* Structural hash. *)
25 val hash: 'a -> Word32.word
26 (* val errno: unit -> int *) (* the value of the C errno global *)
27 val isMLton: bool
28 val safe: bool
29 (* val serialize: 'a -> Word8Vector.vector *)
30 val share: 'a -> unit
31 val shareAll: unit -> unit
32 val size: 'a -> int
33
34 structure Array: MLTON_ARRAY
35 structure BinIO: MLTON_BIN_IO
36 (* structure CallStack: MLTON_CALL_STACK *)
37 structure CharArray: MLTON_MONO_ARRAY
38 structure CharVector: MLTON_MONO_VECTOR
39 structure Cont: MLTON_CONT
40 structure Exn: MLTON_EXN
41 structure Finalizable: MLTON_FINALIZABLE
42 structure GC: MLTON_GC
43 structure IntInf: MLTON_INT_INF
44 structure Itimer: MLTON_ITIMER
45 structure LargeReal: MLTON_REAL
46 structure LargeWord: MLTON_WORD
47 structure Platform: MLTON_PLATFORM
48 structure Pointer: MLTON_POINTER
49 structure ProcEnv: MLTON_PROC_ENV
50 structure Process: MLTON_PROCESS
51 structure Profile: MLTON_PROFILE
52 (* structure Ptrace: MLTON_PTRACE *)
53 structure Random: MLTON_RANDOM
54 structure Real: MLTON_REAL
55 structure Real32: sig
56 include MLTON_REAL
57 val castFromWord: Word32.word -> t
58 val castToWord: t -> Word32.word
59 end
60 structure Real64: sig
61 include MLTON_REAL
62 val castFromWord: Word64.word -> Real64.real
63 val castToWord: Real64.real -> Word64.word
64 end
65 structure Rlimit: MLTON_RLIMIT
66 structure Rusage: MLTON_RUSAGE
67 structure Signal: MLTON_SIGNAL
68 structure Syslog: MLTON_SYSLOG
69 structure TextIO: MLTON_TEXT_IO
70 structure Thread: MLTON_THREAD
71 structure Vector: MLTON_VECTOR
72 structure Weak: MLTON_WEAK
73 structure Word: MLTON_WORD
74 structure Word8: MLTON_WORD
75 structure Word16: MLTON_WORD
76 structure Word32: MLTON_WORD
77 structure Word64: MLTON_WORD
78 structure Word8Array: MLTON_MONO_ARRAY
79 structure Word8Vector: MLTON_MONO_VECTOR
80 structure World: MLTON_WORLD
81 end