[commit: integer-simple] master: Follow library changes (3143e51)
Ian Lynagh
igloo at earth.li
Fri Jul 22 22:17:19 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/integer-simple
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/3143e51fdf050597396918833cb868e5841ccd3c
>---------------------------------------------------------------
commit 3143e51fdf050597396918833cb868e5841ccd3c
Author: Ian Lynagh <igloo at earth.li>
Date: Fri Jul 22 20:29:05 2011 +0100
Follow library changes
>---------------------------------------------------------------
GHC/Integer.hs | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/GHC/Integer.hs b/GHC/Integer.hs
index 7c21dca..118e0c6 100644
--- a/GHC/Integer.hs
+++ b/GHC/Integer.hs
@@ -2,6 +2,8 @@
{-# LANGUAGE CPP, MagicHash, ForeignFunctionInterface,
NoImplicitPrelude, BangPatterns, UnboxedTuples,
UnliftedFFITypes #-}
+-- TODO: Get rid of orphan instances
+{-# OPTIONS_GHC -fno-warn-orphans #-}
-----------------------------------------------------------------------------
-- |
@@ -40,6 +42,7 @@ module GHC.Integer (
import GHC.Integer.Type
+import GHC.Classes
import GHC.Ordering
import GHC.Prim
import GHC.Types
@@ -371,6 +374,10 @@ x `neqInteger` y = case x `compareInteger` y of
EQ -> False
_ -> True
+instance Eq Integer where
+ (==) = eqInteger
+ (/=) = neqInteger
+
ltInteger :: Integer -> Integer -> Bool
x `ltInteger` y = case x `compareInteger` y of
LT -> True
@@ -391,6 +398,13 @@ x `geInteger` y = case x `compareInteger` y of
LT -> False
_ -> True
+instance Ord Integer where
+ (<=) = leInteger
+ (>) = gtInteger
+ (<) = ltInteger
+ (>=) = geInteger
+ compare = compareInteger
+
absInteger :: Integer -> Integer
absInteger (Negative x) = Positive x
absInteger x = x
More information about the Cvs-libraries
mailing list