[commit: integer-gmp] master: Eq and Ord instances are now in the integer package, not base (6f910fd)
Ian Lynagh
igloo at earth.li
Fri Jul 22 22:17:05 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/integer-gmp
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/6f910fd98b08fa194f7fcc8f75ca19b074845098
>---------------------------------------------------------------
commit 6f910fd98b08fa194f7fcc8f75ca19b074845098
Author: Ian Lynagh <igloo at earth.li>
Date: Fri Jul 22 19:09:46 2011 +0100
Eq and Ord instances are now in the integer package, not base
>---------------------------------------------------------------
GHC/Integer.lhs | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/GHC/Integer.lhs b/GHC/Integer.lhs
index 4ca4cee..fd911e0 100644
--- a/GHC/Integer.lhs
+++ b/GHC/Integer.lhs
@@ -85,6 +85,7 @@ import GHC.IntWord64 (
)
#endif
+import GHC.Classes
import GHC.Ordering
import GHC.Types
@@ -332,6 +333,10 @@ neqInteger (S# i) (J# s d) = cmpIntegerInt# s d i /=# 0#
neqInteger (J# s d) (S# i) = cmpIntegerInt# s d i /=# 0#
neqInteger (J# s1 d1) (J# s2 d2) = (cmpInteger# s1 d1 s2 d2) /=# 0#
+instance Eq Integer where
+ (==) = eqInteger
+ (/=) = neqInteger
+
------------------------------------------------------------------------
leInteger :: Integer -> Integer -> Bool
@@ -378,6 +383,13 @@ compareInteger (J# s1 d1) (J# s2 d2)
if res# <# 0# then LT else
if res# ># 0# then GT else EQ
}
+
+instance Ord Integer where
+ (<=) = leInteger
+ (>) = gtInteger
+ (<) = ltInteger
+ (>=) = geInteger
+ compare = compareInteger
\end{code}
More information about the Cvs-libraries
mailing list