module GHC.Prim (
Char#,
gtChar#,
geChar#,
eqChar#,
neChar#,
ltChar#,
leChar#,
ord#,
Int#,
(+#),
(-#),
(*#),
mulIntMayOflo#,
quotInt#,
remInt#,
gcdInt#,
negateInt#,
addIntC#,
subIntC#,
(>#),
(>=#),
(==#),
(/=#),
(<#),
(<=#),
chr#,
int2Word#,
int2Float#,
int2Double#,
int2Integer#,
uncheckedIShiftL#,
uncheckedIShiftRA#,
uncheckedIShiftRL#,
Word#,
plusWord#,
minusWord#,
timesWord#,
quotWord#,
remWord#,
and#,
or#,
xor#,
not#,
uncheckedShiftL#,
uncheckedShiftRL#,
word2Int#,
word2Integer#,
gtWord#,
geWord#,
eqWord#,
neWord#,
ltWord#,
leWord#,
narrow8Int#,
narrow16Int#,
narrow32Int#,
narrow8Word#,
narrow16Word#,
narrow32Word#,
plusInteger#,
minusInteger#,
timesInteger#,
gcdInteger#,
gcdIntegerInt#,
divExactInteger#,
quotInteger#,
remInteger#,
cmpInteger#,
cmpIntegerInt#,
quotRemInteger#,
divModInteger#,
integer2Int#,
integer2Word#,
andInteger#,
orInteger#,
xorInteger#,
complementInteger#,
Double#,
(>##),
(>=##),
(==##),
(/=##),
(<##),
(<=##),
(+##),
(-##),
(*##),
(/##),
negateDouble#,
double2Int#,
double2Float#,
expDouble#,
logDouble#,
sqrtDouble#,
sinDouble#,
cosDouble#,
tanDouble#,
asinDouble#,
acosDouble#,
atanDouble#,
sinhDouble#,
coshDouble#,
tanhDouble#,
(**##),
decodeDouble#,
Float#,
gtFloat#,
geFloat#,
eqFloat#,
neFloat#,
ltFloat#,
leFloat#,
plusFloat#,
minusFloat#,
timesFloat#,
divideFloat#,
negateFloat#,
float2Int#,
expFloat#,
logFloat#,
sqrtFloat#,
sinFloat#,
cosFloat#,
tanFloat#,
asinFloat#,
acosFloat#,
atanFloat#,
sinhFloat#,
coshFloat#,
tanhFloat#,
powerFloat#,
float2Double#,
decodeFloat#,
Array#,
MutArr#,
newArray#,
sameMutableArray#,
readArray#,
writeArray#,
indexArray#,
unsafeFreezeArray#,
unsafeThawArray#,
ByteArr#,
MutByteArr#,
newByteArray#,
newPinnedByteArray#,
byteArrayContents#,
sameMutableByteArray#,
unsafeFreezeByteArray#,
sizeofByteArray#,
sizeofMutableByteArray#,
indexCharArray#,
indexWideCharArray#,
indexIntArray#,
indexWordArray#,
indexAddrArray#,
indexFloatArray#,
indexDoubleArray#,
indexStablePtrArray#,
indexInt8Array#,
indexInt16Array#,
indexInt32Array#,
indexInt64Array#,
indexWord8Array#,
indexWord16Array#,
indexWord32Array#,
indexWord64Array#,
readCharArray#,
readWideCharArray#,
readIntArray#,
readWordArray#,
readAddrArray#,
readFloatArray#,
readDoubleArray#,
readStablePtrArray#,
readInt8Array#,
readInt16Array#,
readInt32Array#,
readInt64Array#,
readWord8Array#,
readWord16Array#,
readWord32Array#,
readWord64Array#,
writeCharArray#,
writeWideCharArray#,
writeIntArray#,
writeWordArray#,
writeAddrArray#,
writeFloatArray#,
writeDoubleArray#,
writeStablePtrArray#,
writeInt8Array#,
writeInt16Array#,
writeInt32Array#,
writeInt64Array#,
writeWord8Array#,
writeWord16Array#,
writeWord32Array#,
writeWord64Array#,
Addr#,
nullAddr#,
plusAddr#,
minusAddr#,
remAddr#,
addr2Int#,
int2Addr#,
gtAddr#,
geAddr#,
eqAddr#,
neAddr#,
ltAddr#,
leAddr#,
indexCharOffAddr#,
indexWideCharOffAddr#,
indexIntOffAddr#,
indexWordOffAddr#,
indexAddrOffAddr#,
indexFloatOffAddr#,
indexDoubleOffAddr#,
indexStablePtrOffAddr#,
indexInt8OffAddr#,
indexInt16OffAddr#,
indexInt32OffAddr#,
indexInt64OffAddr#,
indexWord8OffAddr#,
indexWord16OffAddr#,
indexWord32OffAddr#,
indexWord64OffAddr#,
readCharOffAddr#,
readWideCharOffAddr#,
readIntOffAddr#,
readWordOffAddr#,
readAddrOffAddr#,
readFloatOffAddr#,
readDoubleOffAddr#,
readStablePtrOffAddr#,
readInt8OffAddr#,
readInt16OffAddr#,
readInt32OffAddr#,
readInt64OffAddr#,
readWord8OffAddr#,
readWord16OffAddr#,
readWord32OffAddr#,
readWord64OffAddr#,
writeCharOffAddr#,
writeWideCharOffAddr#,
writeIntOffAddr#,
writeWordOffAddr#,
writeAddrOffAddr#,
writeFloatOffAddr#,
writeDoubleOffAddr#,
writeStablePtrOffAddr#,
writeInt8OffAddr#,
writeInt16OffAddr#,
writeInt32OffAddr#,
writeInt64OffAddr#,
writeWord8OffAddr#,
writeWord16OffAddr#,
writeWord32OffAddr#,
writeWord64OffAddr#,
MutVar#,
newMutVar#,
readMutVar#,
writeMutVar#,
sameMutVar#,
atomicModifyMutVar#,
catch#,
raise#,
raiseIO#,
blockAsyncExceptions#,
unblockAsyncExceptions#,
TVar#,
atomically#,
retry#,
catchRetry#,
catchSTM#,
check#,
newTVar#,
readTVar#,
writeTVar#,
sameTVar#,
MVar#,
newMVar#,
takeMVar#,
tryTakeMVar#,
putMVar#,
tryPutMVar#,
sameMVar#,
isEmptyMVar#,
delay#,
waitRead#,
waitWrite#,
State#,
RealWorld,
ThreadId#,
fork#,
forkOn#,
killThread#,
yield#,
myThreadId#,
labelThread#,
isCurrentThreadBound#,
noDuplicate#,
Weak#,
mkWeak#,
deRefWeak#,
finalizeWeak#,
touch#,
StablePtr#,
StableName#,
makeStablePtr#,
deRefStablePtr#,
eqStablePtr#,
makeStableName#,
eqStableName#,
stableNameToInt#,
reallyUnsafePtrEquality#,
par#,
parGlobal#,
parLocal#,
parAt#,
parAtAbs#,
parAtRel#,
parAtForNow#,
dataToTag#,
tagToEnum#,
BCO#,
addrToHValue#,
mkApUpd0#,
newBCO#,
unpackClosure#,
getApStackVal#,
seq,
inline,
lazy,
Any,
unsafeCoerce#,
) where
data Char#
gtChar# :: Char# -> Char# -> Bool
geChar# :: Char# -> Char# -> Bool
eqChar# :: Char# -> Char# -> Bool
neChar# :: Char# -> Char# -> Bool
ltChar# :: Char# -> Char# -> Bool
leChar# :: Char# -> Char# -> Bool
ord# :: Char# -> Int#
data Int#
(+#) :: Int# -> Int# -> Int#
(-#) :: Int# -> Int# -> Int#
(*#) :: Int# -> Int# -> Int#
mulIntMayOflo# :: Int# -> Int# -> Int#
quotInt# :: Int# -> Int# -> Int#
remInt# :: Int# -> Int# -> Int#
gcdInt# :: Int# -> Int# -> Int#
negateInt# :: Int# -> Int#
addIntC# :: Int# -> Int# -> (# Int#,Int# #)
subIntC# :: Int# -> Int# -> (# Int#,Int# #)
(>#) :: Int# -> Int# -> Bool
(>=#) :: Int# -> Int# -> Bool
(==#) :: Int# -> Int# -> Bool
(/=#) :: Int# -> Int# -> Bool
(<#) :: Int# -> Int# -> Bool
(<=#) :: Int# -> Int# -> Bool
chr# :: Int# -> Char#
int2Word# :: Int# -> Word#
int2Float# :: Int# -> Float#
int2Double# :: Int# -> Double#
int2Integer# :: Int# -> (# Int#,ByteArr# #)
uncheckedIShiftL# :: Int# -> Int# -> Int#
uncheckedIShiftRA# :: Int# -> Int# -> Int#
uncheckedIShiftRL# :: Int# -> Int# -> Int#
data Word#
plusWord# :: Word# -> Word# -> Word#
minusWord# :: Word# -> Word# -> Word#
timesWord# :: Word# -> Word# -> Word#
quotWord# :: Word# -> Word# -> Word#
remWord# :: Word# -> Word# -> Word#
and# :: Word# -> Word# -> Word#
or# :: Word# -> Word# -> Word#
xor# :: Word# -> Word# -> Word#
not# :: Word# -> Word#
uncheckedShiftL# :: Word# -> Int# -> Word#
uncheckedShiftRL# :: Word# -> Int# -> Word#
word2Int# :: Word# -> Int#
word2Integer# :: Word# -> (# Int#,ByteArr# #)
gtWord# :: Word# -> Word# -> Bool
geWord# :: Word# -> Word# -> Bool
eqWord# :: Word# -> Word# -> Bool
neWord# :: Word# -> Word# -> Bool
ltWord# :: Word# -> Word# -> Bool
leWord# :: Word# -> Word# -> Bool
narrow8Int# :: Int# -> Int#
narrow16Int# :: Int# -> Int#
narrow32Int# :: Int# -> Int#
narrow8Word# :: Word# -> Word#
narrow16Word# :: Word# -> Word#
narrow32Word# :: Word# -> Word#
plusInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
minusInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
timesInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
gcdInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
gcdIntegerInt# :: Int# -> ByteArr# -> Int# -> Int#
divExactInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
quotInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
remInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
cmpInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> Int#
cmpIntegerInt# :: Int# -> ByteArr# -> Int# -> Int#
quotRemInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr#,Int#,ByteArr# #)
divModInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr#,Int#,ByteArr# #)
integer2Int# :: Int# -> ByteArr# -> Int#
integer2Word# :: Int# -> ByteArr# -> Word#
andInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
orInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
xorInteger# :: Int# -> ByteArr# -> Int# -> ByteArr# -> (# Int#,ByteArr# #)
complementInteger# :: Int# -> ByteArr# -> (# Int#,ByteArr# #)
data Double#
(>##) :: Double# -> Double# -> Bool
(>=##) :: Double# -> Double# -> Bool
(==##) :: Double# -> Double# -> Bool
(/=##) :: Double# -> Double# -> Bool
(<##) :: Double# -> Double# -> Bool
(<=##) :: Double# -> Double# -> Bool
(+##) :: Double# -> Double# -> Double#
(-##) :: Double# -> Double# -> Double#
(*##) :: Double# -> Double# -> Double#
(/##) :: Double# -> Double# -> Double#
negateDouble# :: Double# -> Double#
double2Int# :: Double# -> Int#
double2Float# :: Double# -> Float#
expDouble# :: Double# -> Double#
logDouble# :: Double# -> Double#
sqrtDouble# :: Double# -> Double#
sinDouble# :: Double# -> Double#
cosDouble# :: Double# -> Double#
tanDouble# :: Double# -> Double#
asinDouble# :: Double# -> Double#
acosDouble# :: Double# -> Double#
atanDouble# :: Double# -> Double#
sinhDouble# :: Double# -> Double#
coshDouble# :: Double# -> Double#
tanhDouble# :: Double# -> Double#
(**##) :: Double# -> Double# -> Double#
decodeDouble# :: Double# -> (# Int#,Int#,ByteArr# #)
data Float#
gtFloat# :: Float# -> Float# -> Bool
geFloat# :: Float# -> Float# -> Bool
eqFloat# :: Float# -> Float# -> Bool
neFloat# :: Float# -> Float# -> Bool
ltFloat# :: Float# -> Float# -> Bool
leFloat# :: Float# -> Float# -> Bool
plusFloat# :: Float# -> Float# -> Float#
minusFloat# :: Float# -> Float# -> Float#
timesFloat# :: Float# -> Float# -> Float#
divideFloat# :: Float# -> Float# -> Float#
negateFloat# :: Float# -> Float#
float2Int# :: Float# -> Int#
expFloat# :: Float# -> Float#
logFloat# :: Float# -> Float#
sqrtFloat# :: Float# -> Float#
sinFloat# :: Float# -> Float#
cosFloat# :: Float# -> Float#
tanFloat# :: Float# -> Float#
asinFloat# :: Float# -> Float#
acosFloat# :: Float# -> Float#
atanFloat# :: Float# -> Float#
sinhFloat# :: Float# -> Float#
coshFloat# :: Float# -> Float#
tanhFloat# :: Float# -> Float#
powerFloat# :: Float# -> Float# -> Float#
float2Double# :: Float# -> Double#
decodeFloat# :: Float# -> (# Int#,Int#,ByteArr# #)
data Array# a
data MutArr# s a
newArray# :: Int# -> a -> State# s -> (# State# s,MutArr# s a #)
sameMutableArray# :: MutArr# s a -> MutArr# s a -> Bool
readArray# :: MutArr# s a -> Int# -> State# s -> (# State# s,a #)
writeArray# :: MutArr# s a -> Int# -> a -> State# s -> State# s
indexArray# :: Array# a -> Int# -> (# a #)
unsafeFreezeArray# :: MutArr# s a -> State# s -> (# State# s,Array# a #)
unsafeThawArray# :: Array# a -> State# s -> (# State# s,MutArr# s a #)
data ByteArr#
data MutByteArr# s
newByteArray# :: Int# -> State# s -> (# State# s,MutByteArr# s #)
newPinnedByteArray# :: Int# -> State# s -> (# State# s,MutByteArr# s #)
byteArrayContents# :: ByteArr# -> Addr#
sameMutableByteArray# :: MutByteArr# s -> MutByteArr# s -> Bool
unsafeFreezeByteArray# :: MutByteArr# s -> State# s -> (# State# s,ByteArr# #)
sizeofByteArray# :: ByteArr# -> Int#
sizeofMutableByteArray# :: MutByteArr# s -> Int#
indexCharArray# :: ByteArr# -> Int# -> Char#
indexWideCharArray# :: ByteArr# -> Int# -> Char#
indexIntArray# :: ByteArr# -> Int# -> Int#
indexWordArray# :: ByteArr# -> Int# -> Word#
indexAddrArray# :: ByteArr# -> Int# -> Addr#
indexFloatArray# :: ByteArr# -> Int# -> Float#
indexDoubleArray# :: ByteArr# -> Int# -> Double#
indexStablePtrArray# :: ByteArr# -> Int# -> StablePtr# a
indexInt8Array# :: ByteArr# -> Int# -> Int#
indexInt16Array# :: ByteArr# -> Int# -> Int#
indexInt32Array# :: ByteArr# -> Int# -> Int#
indexInt64Array# :: ByteArr# -> Int# -> Int#
indexWord8Array# :: ByteArr# -> Int# -> Word#
indexWord16Array# :: ByteArr# -> Int# -> Word#
indexWord32Array# :: ByteArr# -> Int# -> Word#
indexWord64Array# :: ByteArr# -> Int# -> Word#
readCharArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Char# #)
readWideCharArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Char# #)
readIntArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Int# #)
readWordArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Word# #)
readAddrArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Addr# #)
readFloatArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Float# #)
readDoubleArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Double# #)
readStablePtrArray# :: MutByteArr# s -> Int# -> State# s -> (# State# s,StablePtr# a #)
readInt8Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Int# #)
readInt16Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Int# #)
readInt32Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Int# #)
readInt64Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Int# #)
readWord8Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Word# #)
readWord16Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Word# #)
readWord32Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Word# #)
readWord64Array# :: MutByteArr# s -> Int# -> State# s -> (# State# s,Word# #)
writeCharArray# :: MutByteArr# s -> Int# -> Char# -> State# s -> State# s
writeWideCharArray# :: MutByteArr# s -> Int# -> Char# -> State# s -> State# s
writeIntArray# :: MutByteArr# s -> Int# -> Int# -> State# s -> State# s
writeWordArray# :: MutByteArr# s -> Int# -> Word# -> State# s -> State# s
writeAddrArray# :: MutByteArr# s -> Int# -> Addr# -> State# s -> State# s
writeFloatArray# :: MutByteArr# s -> Int# -> Float# -> State# s -> State# s
writeDoubleArray# :: MutByteArr# s -> Int# -> Double# -> State# s -> State# s
writeStablePtrArray# :: MutByteArr# s -> Int# -> StablePtr# a -> State# s -> State# s
writeInt8Array# :: MutByteArr# s -> Int# -> Int# -> State# s -> State# s
writeInt16Array# :: MutByteArr# s -> Int# -> Int# -> State# s -> State# s
writeInt32Array# :: MutByteArr# s -> Int# -> Int# -> State# s -> State# s
writeInt64Array# :: MutByteArr# s -> Int# -> Int# -> State# s -> State# s
writeWord8Array# :: MutByteArr# s -> Int# -> Word# -> State# s -> State# s
writeWord16Array# :: MutByteArr# s -> Int# -> Word# -> State# s -> State# s
writeWord32Array# :: MutByteArr# s -> Int# -> Word# -> State# s -> State# s
writeWord64Array# :: MutByteArr# s -> Int# -> Word# -> State# s -> State# s
data Addr#
nullAddr# :: Addr#
plusAddr# :: Addr# -> Int# -> Addr#
minusAddr# :: Addr# -> Addr# -> Int#
remAddr# :: Addr# -> Int# -> Int#
addr2Int# :: Addr# -> Int#
int2Addr# :: Int# -> Addr#
gtAddr# :: Addr# -> Addr# -> Bool
geAddr# :: Addr# -> Addr# -> Bool
eqAddr# :: Addr# -> Addr# -> Bool
neAddr# :: Addr# -> Addr# -> Bool
ltAddr# :: Addr# -> Addr# -> Bool
leAddr# :: Addr# -> Addr# -> Bool
indexCharOffAddr# :: Addr# -> Int# -> Char#
indexWideCharOffAddr# :: Addr# -> Int# -> Char#
indexIntOffAddr# :: Addr# -> Int# -> Int#
indexWordOffAddr# :: Addr# -> Int# -> Word#
indexAddrOffAddr# :: Addr# -> Int# -> Addr#
indexFloatOffAddr# :: Addr# -> Int# -> Float#
indexDoubleOffAddr# :: Addr# -> Int# -> Double#
indexStablePtrOffAddr# :: Addr# -> Int# -> StablePtr# a
indexInt8OffAddr# :: Addr# -> Int# -> Int#
indexInt16OffAddr# :: Addr# -> Int# -> Int#
indexInt32OffAddr# :: Addr# -> Int# -> Int#
indexInt64OffAddr# :: Addr# -> Int# -> Int#
indexWord8OffAddr# :: Addr# -> Int# -> Word#
indexWord16OffAddr# :: Addr# -> Int# -> Word#
indexWord32OffAddr# :: Addr# -> Int# -> Word#
indexWord64OffAddr# :: Addr# -> Int# -> Word#
readCharOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Char# #)
readWideCharOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Char# #)
readIntOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Int# #)
readWordOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Word# #)
readAddrOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Addr# #)
readFloatOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Float# #)
readDoubleOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Double# #)
readStablePtrOffAddr# :: Addr# -> Int# -> State# s -> (# State# s,StablePtr# a #)
readInt8OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Int# #)
readInt16OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Int# #)
readInt32OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Int# #)
readInt64OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Int# #)
readWord8OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Word# #)
readWord16OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Word# #)
readWord32OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Word# #)
readWord64OffAddr# :: Addr# -> Int# -> State# s -> (# State# s,Word# #)
writeCharOffAddr# :: Addr# -> Int# -> Char# -> State# s -> State# s
writeWideCharOffAddr# :: Addr# -> Int# -> Char# -> State# s -> State# s
writeIntOffAddr# :: Addr# -> Int# -> Int# -> State# s -> State# s
writeWordOffAddr# :: Addr# -> Int# -> Word# -> State# s -> State# s
writeAddrOffAddr# :: Addr# -> Int# -> Addr# -> State# s -> State# s
writeFloatOffAddr# :: Addr# -> Int# -> Float# -> State# s -> State# s
writeDoubleOffAddr# :: Addr# -> Int# -> Double# -> State# s -> State# s
writeStablePtrOffAddr# :: Addr# -> Int# -> StablePtr# a -> State# s -> State# s
writeInt8OffAddr# :: Addr# -> Int# -> Int# -> State# s -> State# s
writeInt16OffAddr# :: Addr# -> Int# -> Int# -> State# s -> State# s
writeInt32OffAddr# :: Addr# -> Int# -> Int# -> State# s -> State# s
writeInt64OffAddr# :: Addr# -> Int# -> Int# -> State# s -> State# s
writeWord8OffAddr# :: Addr# -> Int# -> Word# -> State# s -> State# s
writeWord16OffAddr# :: Addr# -> Int# -> Word# -> State# s -> State# s
writeWord32OffAddr# :: Addr# -> Int# -> Word# -> State# s -> State# s
writeWord64OffAddr# :: Addr# -> Int# -> Word# -> State# s -> State# s
data MutVar# s a
newMutVar# :: a -> State# s -> (# State# s,MutVar# s a #)
readMutVar# :: MutVar# s a -> State# s -> (# State# s,a #)
writeMutVar# :: MutVar# s a -> a -> State# s -> State# s
sameMutVar# :: MutVar# s a -> MutVar# s a -> Bool
atomicModifyMutVar# :: MutVar# s a -> (a -> b) -> State# s -> (# State# s,c #)
catch# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> (b -> State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),a #)
raise# :: a -> b
raiseIO# :: a -> State# (RealWorld) -> (# State# (RealWorld),b #)
blockAsyncExceptions# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),a #)
unblockAsyncExceptions# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),a #)
data TVar# s a
atomically# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),a #)
retry# :: State# (RealWorld) -> (# State# (RealWorld),a #)
catchRetry# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> (State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),a #)
catchSTM# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> (b -> State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),a #)
check# :: (State# (RealWorld) -> (# State# (RealWorld),a #)) -> State# (RealWorld) -> (# State# (RealWorld),() #)
newTVar# :: a -> State# s -> (# State# s,TVar# s a #)
readTVar# :: TVar# s a -> State# s -> (# State# s,a #)
writeTVar# :: TVar# s a -> a -> State# s -> State# s
sameTVar# :: TVar# s a -> TVar# s a -> Bool
data MVar# s a
newMVar# :: State# s -> (# State# s,MVar# s a #)
takeMVar# :: MVar# s a -> State# s -> (# State# s,a #)
tryTakeMVar# :: MVar# s a -> State# s -> (# State# s,Int#,a #)
putMVar# :: MVar# s a -> a -> State# s -> State# s
tryPutMVar# :: MVar# s a -> a -> State# s -> (# State# s,Int# #)
sameMVar# :: MVar# s a -> MVar# s a -> Bool
isEmptyMVar# :: MVar# s a -> State# s -> (# State# s,Int# #)
delay# :: Int# -> State# s -> State# s
waitRead# :: Int# -> State# s -> State# s
waitWrite# :: Int# -> State# s -> State# s
data State# s
data RealWorld
data ThreadId#
fork# :: a -> State# (RealWorld) -> (# State# (RealWorld),ThreadId# #)
forkOn# :: Int# -> a -> State# (RealWorld) -> (# State# (RealWorld),ThreadId# #)
killThread# :: ThreadId# -> a -> State# (RealWorld) -> State# (RealWorld)
yield# :: State# (RealWorld) -> State# (RealWorld)
myThreadId# :: State# (RealWorld) -> (# State# (RealWorld),ThreadId# #)
labelThread# :: ThreadId# -> Addr# -> State# (RealWorld) -> State# (RealWorld)
isCurrentThreadBound# :: State# (RealWorld) -> (# State# (RealWorld),Int# #)
noDuplicate# :: State# (RealWorld) -> State# (RealWorld)
data Weak# b
mkWeak# :: o -> b -> c -> State# (RealWorld) -> (# State# (RealWorld),Weak# b #)
deRefWeak# :: Weak# a -> State# (RealWorld) -> (# State# (RealWorld),Int#,a #)
finalizeWeak# :: Weak# a -> State# (RealWorld) -> (# State# (RealWorld),Int#,State# (RealWorld) -> (# State# (RealWorld),() #) #)
touch# :: o -> State# (RealWorld) -> State# (RealWorld)
data StablePtr# a
data StableName# a
makeStablePtr# :: a -> State# (RealWorld) -> (# State# (RealWorld),StablePtr# a #)
deRefStablePtr# :: StablePtr# a -> State# (RealWorld) -> (# State# (RealWorld),a #)
eqStablePtr# :: StablePtr# a -> StablePtr# a -> Int#
makeStableName# :: a -> State# (RealWorld) -> (# State# (RealWorld),StableName# a #)
eqStableName# :: StableName# a -> StableName# a -> Int#
stableNameToInt# :: StableName# a -> Int#
reallyUnsafePtrEquality# :: a -> a -> Int#
par# :: a -> Int#
parGlobal# :: a -> Int# -> Int# -> Int# -> Int# -> b -> Int#
parLocal# :: a -> Int# -> Int# -> Int# -> Int# -> b -> Int#
parAt# :: b -> a -> Int# -> Int# -> Int# -> Int# -> c -> Int#
parAtAbs# :: a -> Int# -> Int# -> Int# -> Int# -> Int# -> b -> Int#
parAtRel# :: a -> Int# -> Int# -> Int# -> Int# -> Int# -> b -> Int#
parAtForNow# :: b -> a -> Int# -> Int# -> Int# -> Int# -> c -> Int#
dataToTag# :: a -> Int#
tagToEnum# :: Int# -> a
data BCO#
addrToHValue# :: Addr# -> (# a #)
mkApUpd0# :: BCO# -> (# a #)
newBCO# :: ByteArr# -> ByteArr# -> Array# a -> Int# -> ByteArr# -> State# s -> (# State# s,BCO# #)
unpackClosure# :: a -> (# Addr#,Array# b,ByteArr# #)
getApStackVal# :: a -> Int# -> (# Int#,b #)
seq :: a -> b -> b
inline :: a -> a
lazy :: a -> a
data Any a
unsafeCoerce# :: a -> b