1 (* Copyright (C
) 2010 Matthew Fluet
.
2 * Copyright (C
) 1999-2007 Henry Cejtin
, Matthew Fluet
, Suresh
3 * Jagannathan
, and Stephen Weeks
.
5 * MLton is released under a BSD
-style license
.
6 * See the file MLton
-LICENSE for details
.
9 signature CHOOSE_WORDN_ARG
=
12 val fWord8
: Word8.word t
13 val fWord16
: Word16
.word t
14 val fWord32
: Word32
.word t
15 val fWord64
: Word64
.word t
18 functor ChooseWordN_Word8 (A
: CHOOSE_WORDN_ARG
) :
19 sig val f
: Word8.word A
.t
end =
20 struct val f
= A
.fWord8
val _
= A
.fWord16
val _
= A
.fWord32
val _
= A
.fWord64
end
21 functor ChooseWordN_Word16 (A
: CHOOSE_WORDN_ARG
) :
22 sig val f
: Word16
.word A
.t
end =
23 struct val _
= A
.fWord8
val f
= A
.fWord16
val _
= A
.fWord32
val _
= A
.fWord64
end
24 functor ChooseWordN_Word32 (A
: CHOOSE_WORDN_ARG
) :
25 sig val f
: Word32
.word A
.t
end =
26 struct val _
= A
.fWord8
val _
= A
.fWord16
val f
= A
.fWord32
val _
= A
.fWord64
end
27 functor ChooseWordN_Word64 (A
: CHOOSE_WORDN_ARG
) :
28 sig val f
: Word64
.word A
.t
end =
29 struct val _
= A
.fWord8
val _
= A
.fWord16
val _
= A
.fWord32
val f
= A
.fWord64
end