X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Flib%2Fstd%2FIx.lhs;h=5f121d85423984097bc6a1fec466a15e73cd6937;hb=fc0ea62713a45e0004927195946746c1bcebe0ef;hp=545c266f43bf72db729fa79fed1f0ba49a8627ae;hpb=c837c7ef0990071a3f64a35a62072d5b97269bc7;p=ghc-hetmet.git diff --git a/ghc/lib/std/Ix.lhs b/ghc/lib/std/Ix.lhs index 545c266..5f121d8 100644 --- a/ghc/lib/std/Ix.lhs +++ b/ghc/lib/std/Ix.lhs @@ -41,7 +41,7 @@ import PrelBase %********************************************************* \begin{code} -class ({-Show a,-} Ord a) => Ix a where +class (Ord a) => Ix a where range :: (a,a) -> [a] index :: (a,a) -> a -> Int inRange :: (a,a) -> a -> Bool @@ -56,16 +56,16 @@ class ({-Show a,-} Ord a) => Ix a where \begin{code} instance Ix Char where - range (c,c') - | c <= c' = [c..c'] + range (m,n) + | m <= n = [m..n] | otherwise = [] - index b@(c,_) ci - | inRange b ci = fromEnum ci - fromEnum c - | otherwise = indexError ci b "Char" + index b@(m,_) i + | inRange b i = fromEnum i - fromEnum m + | otherwise = indexError i b "Char" inRange (m,n) i = m <= i && i <= n instance Ix Int where - range (m,n) + range (m,n) | m <= n = [m..n] | otherwise = [] index b@(m,_) i