[project @ 2000-06-28 17:03:17 by simonmar]
[ghc-hetmet.git] / ghc / lib / std / PrelGHC.hi-boot
index b4a8254..af92064 100644 (file)
@@ -5,13 +5,12 @@
 --     primitive operations and types that GHC knows about.
 ---------------------------------------------------------------------------
 
-__interface PrelGHC 2 0 where
+__interface "std" PrelGHC 1 0 where
 
 __export PrelGHC
 
   ZLzmzgZR     -- (->)
 
-  All  -- Pseudo class used for universal quantification
   CCallable
   CReturnable
 
@@ -34,6 +33,8 @@ __export PrelGHC
   forkzh
   yieldzh
   killThreadzh
+  blockAsyncExceptionszh
+  unblockAsyncExceptionszh
   delayzh
   waitReadzh
   waitWritezh
@@ -44,6 +45,7 @@ __export PrelGHC
   newMVarzh
   takeMVarzh
   putMVarzh
+  tryTakeMVarzh
   isEmptyMVarzh
   
   -- Parallel
@@ -78,9 +80,9 @@ __export PrelGHC
   zpzh
   zmzh
   ztzh
-  zszh
   quotIntzh
   remIntzh
+  gcdIntzh
   negateIntzh
   iShiftLzh
   iShiftRAzh
@@ -189,6 +191,11 @@ __export PrelGHC
   minusIntegerzh
   timesIntegerzh
   gcdIntegerzh
+  quotIntegerzh
+  remIntegerzh
+  gcdIntegerzh
+  gcdIntegerIntzh
+  divExactIntegerzh
   quotRemIntegerzh
   divModIntegerzh
   integer2Intzh
@@ -239,6 +246,16 @@ __export PrelGHC
   indexInt64OffAddrzh
   indexWord64OffAddrzh
   
+  readCharOffAddrzh
+  readIntOffAddrzh
+  readWordOffAddrzh
+  readAddrOffAddrzh
+  readFloatOffAddrzh
+  readDoubleOffAddrzh
+  readStablePtrOffAddrzh
+  readInt64OffAddrzh
+  readWord64OffAddrzh
+
   writeCharOffAddrzh
   writeIntOffAddrzh
   writeWordOffAddrzh
@@ -287,7 +304,6 @@ __export PrelGHC
   unsafeFreezzeByteArrayzh     -- Ditto
 
   unsafeThawArrayzh
-  unsafeThawByteArrayzh
 
   sizzeofByteArrayzh           -- Ditto
   sizzeofMutableByteArrayzh    -- Ditto
@@ -307,7 +323,7 @@ __export PrelGHC
   finalizzeWeakzh
 
   ForeignObjzh
-  makeForeignObjzh
+  mkForeignObjzh
   writeForeignObjzh
 
   StablePtrzh
@@ -325,6 +341,18 @@ __export PrelGHC
   unsafeCoercezh
 ;
 
+-- Export PrelErr.error, so that others don't have to import PrelErr
+__export PrelErr error ;
+
+--------------------------------------------------
+-- These imports tell modules low down in the hierarchy that
+-- PrelErr and PrelBase are in the same package and 
+-- should be read from their hi-boot files
+import PrelErr @ ;
+import PrelNum @ ;
+
+
+--------------------------------------------------
 instance {CCallable Charzh} = zdfCCallableCharzh;
 instance {CCallable Doublezh} = zdfCCallableDoublezh;
 instance {CCallable Floatzh} = zdfCCallableFloatzh;
@@ -334,15 +362,15 @@ instance {CCallable Int64zh} = zdfCCallableInt64zh;
 instance {CCallable Word64zh} = zdfCCallableWord64zh;
 instance {CCallable Wordzh} = zdfCCallableWordzh;
 instance {CCallable ByteArrayzh} = zdfCCallableByteArrayzh;
-instance __forall [s] => {CCallable (MutableByteArrayzh s)} = zdfCCallableMutableByteArrayzh;
+instance __forall s => {CCallable (MutableByteArrayzh s)} = zdfCCallableMutableByteArrayzh;
 instance {CCallable ForeignObjzh} = zdfCCallableForeignObjzh;
-
+instance __forall s => {CCallable (StablePtrzh s)} = zdfCCallableStablePtrzh;
 -- CCallable and CReturnable have kind (Type AnyBox) so that
 -- things like Int# can be instances of CCallable. 
 1 class CCallable a :: ? ;
 1 class CReturnable a :: ? ;
 
-1 assert :: __forall [a] => PrelBase.Bool -> a -> a ;
+1 assert :: __forall a => PrelBase.Bool -> a -> a ;
 
 -- These guys don't really exist:
 --
@@ -355,5 +383,6 @@ instance {CCallable ForeignObjzh} = zdfCCallableForeignObjzh;
 1 zdfCCallableWord64zh :: {CCallable Word64zh} ;
 1 zdfCCallableWordzh :: {CCallable Wordzh} ;
 1 zdfCCallableByteArrayzh :: {CCallable ByteArrayzh} ;
-1 zdfCCallableMutableByteArrayzh :: __forall [s] => {CCallable (MutableByteArrayzh s)} ;
+1 zdfCCallableMutableByteArrayzh :: __forall s => {CCallable (MutableByteArrayzh s)} ;
 1 zdfCCallableForeignObjzh :: {CCallable ForeignObjzh} ;
+1 zdfCCallableStablePtrzh :: __forall a => {CCallable (StablePtrzh a)} ;