Import Upstream version 20180207
[hcoop/debian/mlton.git] / lib / mlton / basic / array.sml
CommitLineData
7f918cf1
CE
1(* Copyright (C) 1999-2005 Henry Cejtin, Matthew Fluet, Suresh
2 * Jagannathan, and Stephen Weeks.
3 *
4 * MLton is released under a BSD-style license.
5 * See the file MLton-LICENSE for details.
6 *)
7
8structure Array =
9 Array (open Pervasive.Array
10 type 'a t = 'a array
11 exception New = Size
12 val unsafeSub = Unsafe.Array.sub
13 val unsafeUpdate = Unsafe.Array.update
14 val unfoldi = MLton.Array.unfoldi)
15
16functor MonoArray (Elt: T) =
17 struct
18 open Array
19 type t = Elt.t t
20 val equals = fn (a, a') => equals (a, a', Elt.equals)
21 val layout = layout Elt.layout
22 end