SCM Repository
[smlnj] Annotation of /sml/branches/dbm-type-blame/cm/semant/sharing.sml
Annotation of /sml/branches/dbm-type-blame/cm/semant/sharing.sml
Parent Directory
|
Revision Log
Revision 3539 -
(view)
(download)
1 : |
blume |
388 |
(*
|
2 : |
|
|
* Module-level value-sharing in CM.
|
3 : |
|
|
*
|
4 : |
|
|
* (C) 1999 Lucent Technologies, Bell Laboratories
|
5 : |
|
|
*
|
6 : |
|
|
* Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp)
|
7 : |
|
|
*)
|
8 : |
|
|
structure Sharing = struct
|
9 : |
|
|
|
10 : |
|
|
(* the "request" corresponds to the class specified in the .cm file *)
|
11 : |
|
|
datatype request = PRIVATE | SHARED | DONTCARE
|
12 : |
|
|
|
13 : |
|
|
(* the "mode" (i.e., what CM actually uses) is determined by
|
14 : |
|
|
* taking both "request" and the modes of predecessors in the
|
15 : |
|
|
* dependency graph into account. *)
|
16 : |
|
|
datatype mode =
|
17 : |
|
|
SHARE of bool (* true: warn if sharing is broken *)
|
18 : |
|
|
| DONTSHARE
|
19 : |
|
|
end
|