| 
24584
 | 
     1  | 
(*  Title:      Pure/ML-Systems/overloading_smlnj.ML
  | 
| 
24158
 | 
     2  | 
    ID:         $Id$
  | 
| 
 | 
     3  | 
    Author:     Makarius
  | 
| 
 | 
     4  | 
  | 
| 
 | 
     5  | 
Overloading in SML/NJ (cf. smlnj/base/system/smlnj/init/pervasive.sml).
  | 
| 
 | 
     6  | 
*)
  | 
| 
 | 
     7  | 
  | 
| 
 | 
     8  | 
Control.overloadKW := true;
  | 
| 
 | 
     9  | 
  | 
| 
 | 
    10  | 
overload ~ : ('a -> 'a) as
 | 
| 
24160
 | 
    11  | 
  IntInf.~ and Int31.~ and Int32.~ and Int64.~ and
  | 
| 
 | 
    12  | 
  Word.~ and Word8.~ and Word32.~ and Word64.~ and Real.~;
  | 
| 
24158
 | 
    13  | 
overload + : ('a * 'a -> 'a) as
 | 
| 
24160
 | 
    14  | 
  IntInf.+ and Int31.+ and Int32.+ and Int64.+ and
  | 
| 
 | 
    15  | 
  Word.+ and Word8.+ and Word32.+ and Word64.+ and Real.+;
  | 
| 
24158
 | 
    16  | 
overload - : ('a * 'a -> 'a) as
 | 
| 
24160
 | 
    17  | 
  IntInf.- and Int31.- and Int32.- and Int64.- and
  | 
| 
 | 
    18  | 
  Word.- and Word8.- and Word32.- and Word64.- and Real.-;
  | 
| 
24158
 | 
    19  | 
overload * : ('a * 'a -> 'a) as
 | 
| 
24160
 | 
    20  | 
  IntInf.* and Int31.* and Int32.* and Int64.* and
  | 
| 
 | 
    21  | 
  Word.* and Word8.* and Word32.* and Word64.* and Real.*;
  | 
| 
24158
 | 
    22  | 
overload div: ('a * 'a -> 'a) as
 | 
| 
24160
 | 
    23  | 
  IntInf.div and Int31.div and Int32.div and Int64.div and
  | 
| 
 | 
    24  | 
  Word.div and Word8.div and Word32.div and Word64.div;
  | 
| 
24158
 | 
    25  | 
overload mod: ('a * 'a -> 'a) as
 | 
| 
24160
 | 
    26  | 
  IntInf.mod and Int31.mod and Int32.mod and Int64.mod and
  | 
| 
 | 
    27  | 
  Word.mod and Word8.mod and Word32.mod and Word64.mod;
  | 
| 
24158
 | 
    28  | 
overload < : ('a * 'a -> bool) as
 | 
| 
24169
 | 
    29  | 
  IntInf.< and Int31.< and Int32.< and Int64.< and Real.< and
  | 
| 
24160
 | 
    30  | 
  Word.< and Word8.< and Word32.< and Word64.< and Char.< and String.<;
  | 
| 
24158
 | 
    31  | 
overload <= : ('a * 'a -> bool) as
 | 
| 
24169
 | 
    32  | 
  IntInf.<= and Int31.<= and Int32.<= and Int64.<= and Real.<= and
  | 
| 
24160
 | 
    33  | 
  Word.<= and Word8.<= and Word32.<= and Word64.<= and Char.<= and String.<=;
  | 
| 
24158
 | 
    34  | 
overload > : ('a * 'a -> bool) as
 | 
| 
24169
 | 
    35  | 
  IntInf.> and Int31.> and Int32.> and Int64.> and Real.> and
  | 
| 
24160
 | 
    36  | 
  Word.> and Word8.> and Word32.> and Word64.> and Char.> and String.>;
  | 
| 
24158
 | 
    37  | 
overload >= : ('a * 'a -> bool) as
 | 
| 
24169
 | 
    38  | 
  IntInf.>= and Int31.>= and Int32.>= and Int64.>= and Real.>= and
  | 
| 
24160
 | 
    39  | 
  Word.>= and Word8.>= and Word32.>= and Word64.>= and Char.>= and String.>=;
  | 
| 
24158
 | 
    40  | 
overload abs: ('a -> 'a) as IntInf.abs and Int31.abs and Int32.abs and Int64.abs and Real.abs;
 | 
| 
 | 
    41  | 
  | 
| 
 | 
    42  | 
Control.overloadKW := false;
  |