summaryrefslogtreecommitdiff
path: root/ghc/lib/prelude/ITup0.hs
blob: 32776c8d4761c69321329305f1319e103afaa0a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
module PreludeBuiltin where

--- 0-tuple (trivial type "()" ) ---------------------------------

import Cls
import Core
import IChar
import IList
import List		( (++), foldr )
import PS		( _PackedString, _unpackPS )
import Text

instance Eq () where
    () == () = True
    () /= () = False

instance Ord () where
    () <= () = True
    () <  () = False
    () >= () = True
    () >  () = False
    max () () = ()
    min () () = ()
    _tagCmp () () = _EQ

instance Text () where
    readsPrec p    = readParen False
    	    	    	    (\r -> [((),t) | ("(",s) <- lex r,
					     (")",t) <- lex s ] )
    showsPrec p () = showString "()"

instance Ix () where
    range   ((), ())    = [()]
    index   ((), ()) () = 0
    inRange ((), ()) () = True

instance Enum () where
    enumFrom () 	= [()]
    enumFromThen () () 	= [()]
    enumFromTo () () 	= [()]
    enumFromThenTo () () () = [()]

-- ToDo: something for Binary