Import Upstream version 20180207
[hcoop/debian/mlton.git] / lib / cml / core-cml / thread-id.sig
CommitLineData
7f918cf1
CE
1(* thread-id.sig
2 * 2004 Matthew Fluet (mfluet@acm.org)
3 * Ported to MLton threads.
4 *)
5
6(* threads-sig.sml
7 *
8 * COPYRIGHT (c) 1995 AT&T Bell Laboratories.
9 * COPYRIGHT (c) 1989-1991 John H. Reppy
10 *)
11
12signature THREAD_ID =
13 sig
14 type thread_id
15
16 val sameTid : (thread_id * thread_id) -> bool
17 val compareTid : (thread_id * thread_id) -> order
18 val hashTid : thread_id -> word
19
20 val tidToString : thread_id -> string
21 end
22
23signature THREAD_ID_EXTRA =
24 sig
25 datatype thread_id' = datatype RepTypes.thread_id
26 include THREAD_ID where type thread_id = thread_id'
27 val new : unit -> thread_id
28 val bogus : string -> thread_id
29
30 val mark : thread_id -> unit
31 val unmark : thread_id -> unit
32 val isMarked : thread_id -> bool
33
34 val reset : unit -> unit
35 end