Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | (* Copyright (C) 2017 Matthew Fluet. |
2 | * Copyright (C) 1999-2005 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 ELABORATE_STRUCTS = | |
11 | sig | |
12 | structure Ast: AST | |
13 | structure CoreML: CORE_ML | |
14 | structure TypeEnv: TYPE_ENV | |
15 | sharing Ast.Record = CoreML.Record | |
16 | sharing Ast.SortedRecord = CoreML.SortedRecord | |
17 | sharing CoreML.Atoms = TypeEnv.Atoms | |
18 | sharing CoreML.Type = TypeEnv.Type | |
19 | end | |
20 | ||
21 | signature ELABORATE = | |
22 | sig | |
23 | include ELABORATE_STRUCTS | |
24 | ||
25 | structure Env: ELABORATE_ENV | |
26 | ||
27 | val elaborateMLB: | |
28 | Ast.Basdec.t * {addPrim: Env.t -> CoreML.Dec.t list} | |
29 | -> Env.t * (CoreML.Dec.t list * bool) vector | |
30 | end |