Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | (* Copyright (C) 2015 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 | functor MonoVector (type elem): MONO_VECTOR_EXTRA | |
11 | where type elem = elem = | |
12 | struct | |
13 | open Vector | |
14 | type array = elem array | |
15 | type elem = elem | |
16 | type vector = elem vector | |
17 | val fromPoly = fn v => v | |
18 | val toPoly = fn v => v | |
19 | structure MonoVectorSlice = | |
20 | struct | |
21 | open VectorSlice | |
22 | type elem = elem | |
23 | type vector = vector | |
24 | type slice = elem slice | |
25 | val fromPoly = fn s => s | |
26 | val toPoly = fn s => s | |
27 | end | |
28 | end | |
29 | ||
30 | functor EqtypeMonoVector (eqtype elem): EQTYPE_MONO_VECTOR_EXTRA | |
31 | where type elem = elem = | |
32 | struct | |
33 | open Vector | |
34 | type array = elem array | |
35 | type elem = elem | |
36 | type vector = elem vector | |
37 | type vector_eqtype = vector | |
38 | val fromPoly = fn v => v | |
39 | val toPoly = fn v => v | |
40 | structure MonoVectorSlice = | |
41 | struct | |
42 | open VectorSlice | |
43 | type elem = elem | |
44 | type vector = vector | |
45 | type slice = elem slice | |
46 | val fromPoly = fn s => s | |
47 | val toPoly = fn s => s | |
48 | end | |
49 | end |