Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/branches/primop-branch-2/src/system/Basis/Implementation/word32.sml
ViewVC logotype

Annotation of /sml/branches/primop-branch-2/src/system/Basis/Implementation/word32.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1935 - (view) (download)

1 : monnier 416 (* word32.sml
2 :     *
3 :     * COPYRIGHT (c) 1995 AT&T Bell Laboratories.
4 :     *
5 :     *)
6 :    
7 :     structure Word32Imp : WORD =
8 :     struct
9 :     structure W32 = InlineT.Word32
10 :    
11 : monnier 429 type word = Word32.word
12 : monnier 416
13 :     val wordSize = 32
14 :    
15 :     val toLargeWord : word -> LargeWord.word = W32.toLargeWord
16 :     val toLargeWordX : word -> LargeWord.word = W32.toLargeWordX
17 :     val fromLargeWord : LargeWord.word -> word = W32.fromLargeWord
18 :    
19 :     val toLargeInt = W32.toLargeInt
20 :     val toLargeIntX = W32.toLargeIntX
21 :     val fromLargeInt = W32.fromLargeInt
22 :    
23 :     val toInt : word -> int = W32.toInt
24 :     val toIntX : word -> int = W32.toIntX
25 :     val fromInt : int -> word = W32.fromInt
26 :    
27 :     val orb : word * word -> word = W32.orb
28 :     val xorb : word * word -> word = W32.xorb
29 :     val andb : word * word -> word = W32.andb
30 :     val notb : word -> word = W32.notb
31 :    
32 :     val op * : word * word -> word = W32.*
33 :     val op + : word * word -> word = W32.+
34 :     val op - : word * word -> word = W32.-
35 :     val op div : word * word -> word = W32.div
36 : blume 1183 val op mod : word * word -> word = W32.mod
37 : monnier 416
38 :     fun compare (w1, w2) =
39 :     if (W32.<(w1, w2)) then LESS
40 :     else if (W32.>(w1, w2)) then GREATER
41 :     else EQUAL
42 :     val op > : word * word -> bool = W32.>
43 :     val op >= : word * word -> bool = W32.>=
44 :     val op < : word * word -> bool = W32.<
45 :     val op <= : word * word -> bool = W32.<=
46 :    
47 :     val << = W32.chkLshift
48 :     val >> = W32.chkRshiftl
49 :     val ~>> = W32.chkRshift
50 :    
51 : mblume 1381 val ~ : word -> word = ~
52 : blume 1183 val min : word * word -> word = W32.min
53 :     val max : word * word -> word = W32.max
54 : monnier 416
55 :     val fmt = NumFormat.fmtWord
56 :     val toString = fmt StringCvt.HEX
57 :    
58 :     val scan = NumScan.scanWord
59 :     val fromString = PreBasis.scanString (scan StringCvt.HEX)
60 :    
61 :     end (* structure Word32 *)

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0