[project @ 1996-01-18 16:33:17 by partain]
[ghc-hetmet.git] / ghc / lib / prelude / ITup0.hs
1 module PreludeBuiltin where
2
3 --- 0-tuple (trivial type "()" ) ---------------------------------
4
5 import Cls
6 import Core
7 import IChar
8 import IList
9 import List             ( (++), foldr )
10 import PS               ( _PackedString, _unpackPS )
11 import Text
12 import TyArray
13 import TyComplex
14
15 instance Eq () where
16     () == () = True
17     () /= () = False
18
19 instance Ord () where
20     () <= () = True
21     () <  () = False
22     () >= () = True
23     () >  () = False
24     max () () = ()
25     min () () = ()
26     _tagCmp () () = _EQ
27
28 instance Text () where
29     readsPrec p    = readParen False
30                             (\r -> [((),t) | ("(",s) <- lex r,
31                                              (")",t) <- lex s ] )
32     showsPrec p () = showString "()"
33     readList = _readList (readsPrec 0)
34     showList = _showList (showsPrec 0) 
35
36 instance Ix () where
37     range   ((), ())    = [()]
38     index   ((), ()) () = 0
39     inRange ((), ()) () = True
40
41 instance Enum () where
42     enumFrom ()         = [()]
43     enumFromThen () ()  = [()]
44     enumFromTo () ()    = [()]
45     enumFromThenTo () () () = [()]
46
47 -- ToDo: something for Binary