06c2e096f59a3035cbb6a90216567438d92765bf
[ghc-hetmet.git] / ghc / compiler / basicTypes / Unique.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface Unique where
3 import CharSeq(CSeq)
4 import PreludePS(_PackedString)
5 import Pretty(PrettyRep)
6 import PrimKind(PrimKind)
7 import PrimOps(PrimOp)
8 import SplitUniq(SplitUniqSupply)
9 import UniType(UniType)
10 infixr 9 `thenUs`
11 data CSeq 
12 data PrimOp 
13 data SplitUniqSupply 
14 type UniqSM a = UniqueSupply -> (UniqueSupply, a)
15 data Unique 
16 data UniqueSupply 
17 absentErrorIdKey :: Unique
18 addrDataConKey :: Unique
19 addrPrimTyConKey :: Unique
20 addrTyConKey :: Unique
21 appendIdKey :: Unique
22 arrayPrimTyConKey :: Unique
23 augmentIdKey :: Unique
24 binaryClassKey :: Unique
25 boolTyConKey :: Unique
26 buildDataConKey :: Unique
27 buildIdKey :: Unique
28 byteArrayPrimTyConKey :: Unique
29 cCallableClassKey :: Unique
30 cReturnableClassKey :: Unique
31 charDataConKey :: Unique
32 charPrimTyConKey :: Unique
33 charTyConKey :: Unique
34 cmpTagTyConKey :: Unique
35 cmpUnique :: Unique -> Unique -> Int#
36 consDataConKey :: Unique
37 dialogueTyConKey :: Unique
38 doubleDataConKey :: Unique
39 doublePrimTyConKey :: Unique
40 doubleTyConKey :: Unique
41 enumClassKey :: Unique
42 eqClassKey :: Unique
43 eqTagDataConKey :: Unique
44 eqUnique :: Unique -> Unique -> Bool
45 errorIdKey :: Unique
46 falseDataConKey :: Unique
47 floatDataConKey :: Unique
48 floatPrimTyConKey :: Unique
49 floatTyConKey :: Unique
50 floatingClassKey :: Unique
51 foldlIdKey :: Unique
52 foldrIdKey :: Unique
53 forkIdKey :: Unique
54 fractionalClassKey :: Unique
55 getBuiltinUniques :: Int -> [Unique]
56 getUnique :: UniqueSupply -> (UniqueSupply, Unique)
57 getUniques :: Int -> UniqueSupply -> (UniqueSupply, [Unique])
58 gtTagDataConKey :: Unique
59 iOTyConKey :: Unique
60 initUs :: UniqueSupply -> (UniqueSupply -> (UniqueSupply, a)) -> (UniqueSupply, a)
61 intDataConKey :: Unique
62 intPrimTyConKey :: Unique
63 intTyConKey :: Unique
64 integerDataConKey :: Unique
65 integerMinusOneIdKey :: Unique
66 integerPlusOneIdKey :: Unique
67 integerPlusTwoIdKey :: Unique
68 integerTyConKey :: Unique
69 integerZeroIdKey :: Unique
70 integralClassKey :: Unique
71 ixClassKey :: Unique
72 liftDataConKey :: Unique
73 liftTyConKey :: Unique
74 listTyConKey :: Unique
75 ltTagDataConKey :: Unique
76 mallocPtrDataConKey :: Unique
77 mallocPtrPrimTyConKey :: Unique
78 mallocPtrTyConKey :: Unique
79 mapAndUnzipUs :: (a -> UniqueSupply -> (UniqueSupply, (b, c))) -> [a] -> UniqueSupply -> (UniqueSupply, ([b], [c]))
80 mapUs :: (a -> UniqueSupply -> (UniqueSupply, b)) -> [a] -> UniqueSupply -> (UniqueSupply, [b])
81 mkBuiltinUnique :: Int -> Unique
82 mkPrimOpIdUnique :: PrimOp -> Unique
83 mkPseudoUnique1 :: Int -> Unique
84 mkPseudoUnique2 :: Int -> Unique
85 mkPseudoUnique3 :: Int -> Unique
86 mkTupleDataConUnique :: Int -> Unique
87 mkUnifiableTyVarUnique :: Int -> Unique
88 mkUniqueGrimily :: Int# -> Unique
89 mkUniqueSupplyGrimily :: SplitUniqSupply -> UniqueSupply
90 mutableArrayPrimTyConKey :: Unique
91 mutableByteArrayPrimTyConKey :: Unique
92 nilDataConKey :: Unique
93 numClassKey :: Unique
94 ordClassKey :: Unique
95 packCStringIdKey :: Unique
96 parErrorIdKey :: Unique
97 parIdKey :: Unique
98 patErrorIdKey :: Unique
99 pprUnique :: Unique -> Int -> Bool -> PrettyRep
100 pprUnique10 :: Unique -> Int -> Bool -> PrettyRep
101 primIoTyConKey :: Unique
102 ratioDataConKey :: Unique
103 ratioTyConKey :: Unique
104 rationalTyConKey :: Unique
105 realClassKey :: Unique
106 realFloatClassKey :: Unique
107 realFracClassKey :: Unique
108 realWorldPrimIdKey :: Unique
109 realWorldTyConKey :: Unique
110 return2GMPsDataConKey :: Unique
111 return2GMPsTyConKey :: Unique
112 returnIntAndGMPDataConKey :: Unique
113 returnIntAndGMPTyConKey :: Unique
114 returnUs :: a -> UniqueSupply -> (UniqueSupply, a)
115 runBuiltinUs :: (UniqueSupply -> (UniqueSupply, a)) -> a
116 runSTIdKey :: Unique
117 seqIdKey :: Unique
118 showUnique :: Unique -> _PackedString
119 stTyConKey :: Unique
120 stablePtrDataConKey :: Unique
121 stablePtrPrimTyConKey :: Unique
122 stablePtrTyConKey :: Unique
123 stateAndAddrPrimDataConKey :: Unique
124 stateAndAddrPrimTyConKey :: Unique
125 stateAndArrayPrimDataConKey :: Unique
126 stateAndArrayPrimTyConKey :: Unique
127 stateAndByteArrayPrimDataConKey :: Unique
128 stateAndByteArrayPrimTyConKey :: Unique
129 stateAndCharPrimDataConKey :: Unique
130 stateAndCharPrimTyConKey :: Unique
131 stateAndDoublePrimDataConKey :: Unique
132 stateAndDoublePrimTyConKey :: Unique
133 stateAndFloatPrimDataConKey :: Unique
134 stateAndFloatPrimTyConKey :: Unique
135 stateAndIntPrimDataConKey :: Unique
136 stateAndIntPrimTyConKey :: Unique
137 stateAndMallocPtrPrimDataConKey :: Unique
138 stateAndMallocPtrPrimTyConKey :: Unique
139 stateAndMutableArrayPrimDataConKey :: Unique
140 stateAndMutableArrayPrimTyConKey :: Unique
141 stateAndMutableByteArrayPrimDataConKey :: Unique
142 stateAndMutableByteArrayPrimTyConKey :: Unique
143 stateAndPtrPrimDataConKey :: Unique
144 stateAndPtrPrimTyConKey :: Unique
145 stateAndStablePtrPrimDataConKey :: Unique
146 stateAndStablePtrPrimTyConKey :: Unique
147 stateAndSynchVarPrimDataConKey :: Unique
148 stateAndSynchVarPrimTyConKey :: Unique
149 stateAndWordPrimDataConKey :: Unique
150 stateAndWordPrimTyConKey :: Unique
151 stateDataConKey :: Unique
152 statePrimTyConKey :: Unique
153 stateTyConKey :: Unique
154 stringTyConKey :: Unique
155 synchVarPrimTyConKey :: Unique
156 textClassKey :: Unique
157 thenUs :: (UniqueSupply -> (UniqueSupply, a)) -> (a -> UniqueSupply -> (UniqueSupply, b)) -> UniqueSupply -> (UniqueSupply, b)
158 traceIdKey :: Unique
159 trueDataConKey :: Unique
160 u2i :: Unique -> Int#
161 uniqSupply_u :: UniqueSupply
162 unpackCString2IdKey :: Unique
163 unpackCStringAppendIdKey :: Unique
164 unpackCStringFoldrIdKey :: Unique
165 unpackCStringIdKey :: Unique
166 unpkUnifiableTyVarUnique :: Unique -> Int
167 voidPrimIdKey :: Unique
168 voidPrimTyConKey :: Unique
169 wordDataConKey :: Unique
170 wordPrimTyConKey :: Unique
171 wordTyConKey :: Unique
172 instance Eq Unique
173 instance Ord Unique
174 instance Text Unique
175