Import Upstream version 20180207
[hcoop/debian/mlton.git] / mlton / elaborate / decs.sig
CommitLineData
7f918cf1
CE
1(* Copyright (C) 1999-2006, 2008 Henry Cejtin, Matthew Fluet, Suresh
2 * Jagannathan, and Stephen Weeks.
3 * Copyright (C) 1997-2000 NEC Research Institute.
4 *
5 * MLton is released under a BSD-style license.
6 * See the file MLton-LICENSE for details.
7 *)
8
9signature DECS_STRUCTS =
10 sig
11 structure CoreML: CORE_ML
12 end
13
14signature DECS =
15 sig
16 include DECS_STRUCTS
17
18 type dec = CoreML.Dec.t
19
20 type t
21
22 val add: t * dec -> t (* add a dec to the end of the list *)
23 val append: t * t -> t
24 val appends: t list -> t
25 val appendsV: t vector -> t
26 val cons: dec * t -> t
27 val empty: t
28 val fold: t * 'a * (dec * 'a -> 'a) -> 'a
29 val foreach: t * (dec -> unit) -> unit
30 val fromList: dec list -> t
31 val fromVector: dec vector -> t
32 val layout: t -> Layout.t
33 val map: t * (dec -> dec) -> t
34 val single: dec -> t
35 val toList: t -> dec list
36 val toVector: t -> dec vector
37 end