Move the Integer type definition into GHC.Integer.Internals
[packages/integer-gmp.git] / GHC / Integer / Internals.hs
1 {-# OPTIONS_GHC -XNoImplicitPrelude #-}
2 {-# OPTIONS_HADDOCK hide #-}
3
4 module GHC.Integer.Internals (Integer(..)) where
5
6 import GHC.Prim (Int#, ByteArray#)
7
8 -- Double isn't available yet, and we shouldn't be using defaults anyway:
9 default ()
10
11 -- | Arbitrary-precision integers.
12 data Integer
13 = S# Int# -- small integers
14 #ifndef ILX
15 | J# Int# ByteArray# -- large integers
16 #else
17 | J# Void BigInteger -- .NET big ints
18
19 foreign type dotnet "BigInteger" BigInteger
20 #endif
21