[skip ci] correct formatting of casArray# in docs for casSmallArray#
[ghc.git] / compiler / prelude / THNames.hs
1 -- %************************************************************************
2 -- %* *
3 -- The known-key names for Template Haskell
4 -- %* *
5 -- %************************************************************************
6
7 module THNames where
8
9 import GhcPrelude ()
10
11 import PrelNames( mk_known_key_name )
12 import Module( Module, mkModuleNameFS, mkModule, thUnitId )
13 import Name( Name )
14 import OccName( tcName, clsName, dataName, varName )
15 import RdrName( RdrName, nameRdrName )
16 import Unique
17 import FastString
18
19 -- To add a name, do three things
20 --
21 -- 1) Allocate a key
22 -- 2) Make a "Name"
23 -- 3) Add the name to templateHaskellNames
24
25 templateHaskellNames :: [Name]
26 -- The names that are implicitly mentioned by ``bracket''
27 -- Should stay in sync with the import list of DsMeta
28
29 templateHaskellNames = [
30 returnQName, bindQName, sequenceQName, newNameName, liftName, liftTypedName,
31 mkNameName, mkNameG_vName, mkNameG_dName, mkNameG_tcName, mkNameLName,
32 mkNameSName,
33 liftStringName,
34 unTypeName,
35 unTypeQName,
36 unsafeTExpCoerceName,
37
38 -- Lit
39 charLName, stringLName, integerLName, intPrimLName, wordPrimLName,
40 floatPrimLName, doublePrimLName, rationalLName, stringPrimLName,
41 charPrimLName,
42 -- Pat
43 litPName, varPName, tupPName, unboxedTupPName, unboxedSumPName,
44 conPName, tildePName, bangPName, infixPName,
45 asPName, wildPName, recPName, listPName, sigPName, viewPName,
46 -- FieldPat
47 fieldPatName,
48 -- Match
49 matchName,
50 -- Clause
51 clauseName,
52 -- Exp
53 varEName, conEName, litEName, appEName, appTypeEName, infixEName,
54 infixAppName, sectionLName, sectionRName, lamEName, lamCaseEName,
55 tupEName, unboxedTupEName, unboxedSumEName,
56 condEName, multiIfEName, letEName, caseEName, doEName, mdoEName, compEName,
57 fromEName, fromThenEName, fromToEName, fromThenToEName,
58 listEName, sigEName, recConEName, recUpdEName, staticEName, unboundVarEName,
59 labelEName, implicitParamVarEName,
60 -- FieldExp
61 fieldExpName,
62 -- Body
63 guardedBName, normalBName,
64 -- Guard
65 normalGEName, patGEName,
66 -- Stmt
67 bindSName, letSName, noBindSName, parSName, recSName,
68 -- Dec
69 funDName, valDName, dataDName, newtypeDName, tySynDName,
70 classDName, instanceWithOverlapDName,
71 standaloneDerivWithStrategyDName, sigDName, forImpDName,
72 pragInlDName, pragSpecDName, pragSpecInlDName, pragSpecInstDName,
73 pragRuleDName, pragCompleteDName, pragAnnDName, defaultSigDName,
74 dataFamilyDName, openTypeFamilyDName, closedTypeFamilyDName,
75 dataInstDName, newtypeInstDName, tySynInstDName,
76 infixLDName, infixRDName, infixNDName,
77 roleAnnotDName, patSynDName, patSynSigDName,
78 implicitParamBindDName,
79 -- Cxt
80 cxtName,
81
82 -- SourceUnpackedness
83 noSourceUnpackednessName, sourceNoUnpackName, sourceUnpackName,
84 -- SourceStrictness
85 noSourceStrictnessName, sourceLazyName, sourceStrictName,
86 -- Con
87 normalCName, recCName, infixCName, forallCName, gadtCName, recGadtCName,
88 -- Bang
89 bangName,
90 -- BangType
91 bangTypeName,
92 -- VarBangType
93 varBangTypeName,
94 -- PatSynDir (for pattern synonyms)
95 unidirPatSynName, implBidirPatSynName, explBidirPatSynName,
96 -- PatSynArgs (for pattern synonyms)
97 prefixPatSynName, infixPatSynName, recordPatSynName,
98 -- Type
99 forallTName, forallVisTName, varTName, conTName, infixTName, appTName,
100 appKindTName, equalityTName, tupleTName, unboxedTupleTName,
101 unboxedSumTName, arrowTName, listTName, sigTName, litTName,
102 promotedTName, promotedTupleTName, promotedNilTName, promotedConsTName,
103 wildCardTName, implicitParamTName,
104 -- TyLit
105 numTyLitName, strTyLitName,
106 -- TyVarBndr
107 plainTVName, kindedTVName,
108 -- Role
109 nominalRName, representationalRName, phantomRName, inferRName,
110 -- Kind
111 varKName, conKName, tupleKName, arrowKName, listKName, appKName,
112 starKName, constraintKName,
113 -- FamilyResultSig
114 noSigName, kindSigName, tyVarSigName,
115 -- InjectivityAnn
116 injectivityAnnName,
117 -- Callconv
118 cCallName, stdCallName, cApiCallName, primCallName, javaScriptCallName,
119 -- Safety
120 unsafeName,
121 safeName,
122 interruptibleName,
123 -- Inline
124 noInlineDataConName, inlineDataConName, inlinableDataConName,
125 -- RuleMatch
126 conLikeDataConName, funLikeDataConName,
127 -- Phases
128 allPhasesDataConName, fromPhaseDataConName, beforePhaseDataConName,
129 -- Overlap
130 overlappableDataConName, overlappingDataConName, overlapsDataConName,
131 incoherentDataConName,
132 -- DerivStrategy
133 stockStrategyName, anyclassStrategyName,
134 newtypeStrategyName, viaStrategyName,
135 -- TExp
136 tExpDataConName,
137 -- RuleBndr
138 ruleVarName, typedRuleVarName,
139 -- FunDep
140 funDepName,
141 -- TySynEqn
142 tySynEqnName,
143 -- AnnTarget
144 valueAnnotationName, typeAnnotationName, moduleAnnotationName,
145 -- DerivClause
146 derivClauseName,
147
148 -- The type classes
149 liftClassName,
150
151 -- And the tycons
152 qTyConName, nameTyConName, patTyConName, fieldPatTyConName, matchQTyConName,
153 clauseQTyConName, expQTyConName, fieldExpTyConName, predTyConName,
154 stmtQTyConName, decQTyConName, conQTyConName, bangTypeQTyConName,
155 varBangTypeQTyConName, typeQTyConName, expTyConName, decTyConName,
156 typeTyConName, tyVarBndrQTyConName, matchTyConName, clauseTyConName,
157 patQTyConName, fieldPatQTyConName, fieldExpQTyConName, funDepTyConName,
158 predQTyConName, decsQTyConName, ruleBndrQTyConName, tySynEqnQTyConName,
159 roleTyConName, tExpTyConName, injAnnTyConName, kindQTyConName,
160 overlapTyConName, derivClauseQTyConName, derivStrategyQTyConName,
161
162 -- Quasiquoting
163 quoteDecName, quoteTypeName, quoteExpName, quotePatName]
164
165 thSyn, thLib, qqLib :: Module
166 thSyn = mkTHModule (fsLit "Language.Haskell.TH.Syntax")
167 thLib = mkTHModule (fsLit "Language.Haskell.TH.Lib.Internal")
168 qqLib = mkTHModule (fsLit "Language.Haskell.TH.Quote")
169
170 mkTHModule :: FastString -> Module
171 mkTHModule m = mkModule thUnitId (mkModuleNameFS m)
172
173 libFun, libTc, thFun, thTc, thCls, thCon, qqFun :: FastString -> Unique -> Name
174 libFun = mk_known_key_name OccName.varName thLib
175 libTc = mk_known_key_name OccName.tcName thLib
176 thFun = mk_known_key_name OccName.varName thSyn
177 thTc = mk_known_key_name OccName.tcName thSyn
178 thCls = mk_known_key_name OccName.clsName thSyn
179 thCon = mk_known_key_name OccName.dataName thSyn
180 qqFun = mk_known_key_name OccName.varName qqLib
181
182 -------------------- TH.Syntax -----------------------
183 liftClassName :: Name
184 liftClassName = thCls (fsLit "Lift") liftClassKey
185
186 qTyConName, nameTyConName, fieldExpTyConName, patTyConName,
187 fieldPatTyConName, expTyConName, decTyConName, typeTyConName,
188 matchTyConName, clauseTyConName, funDepTyConName, predTyConName,
189 tExpTyConName, injAnnTyConName, overlapTyConName :: Name
190 qTyConName = thTc (fsLit "Q") qTyConKey
191 nameTyConName = thTc (fsLit "Name") nameTyConKey
192 fieldExpTyConName = thTc (fsLit "FieldExp") fieldExpTyConKey
193 patTyConName = thTc (fsLit "Pat") patTyConKey
194 fieldPatTyConName = thTc (fsLit "FieldPat") fieldPatTyConKey
195 expTyConName = thTc (fsLit "Exp") expTyConKey
196 decTyConName = thTc (fsLit "Dec") decTyConKey
197 typeTyConName = thTc (fsLit "Type") typeTyConKey
198 matchTyConName = thTc (fsLit "Match") matchTyConKey
199 clauseTyConName = thTc (fsLit "Clause") clauseTyConKey
200 funDepTyConName = thTc (fsLit "FunDep") funDepTyConKey
201 predTyConName = thTc (fsLit "Pred") predTyConKey
202 tExpTyConName = thTc (fsLit "TExp") tExpTyConKey
203 injAnnTyConName = thTc (fsLit "InjectivityAnn") injAnnTyConKey
204 overlapTyConName = thTc (fsLit "Overlap") overlapTyConKey
205
206 returnQName, bindQName, sequenceQName, newNameName, liftName,
207 mkNameName, mkNameG_vName, mkNameG_dName, mkNameG_tcName,
208 mkNameLName, mkNameSName, liftStringName, unTypeName, unTypeQName,
209 unsafeTExpCoerceName, liftTypedName :: Name
210 returnQName = thFun (fsLit "returnQ") returnQIdKey
211 bindQName = thFun (fsLit "bindQ") bindQIdKey
212 sequenceQName = thFun (fsLit "sequenceQ") sequenceQIdKey
213 newNameName = thFun (fsLit "newName") newNameIdKey
214 liftName = thFun (fsLit "lift") liftIdKey
215 liftStringName = thFun (fsLit "liftString") liftStringIdKey
216 mkNameName = thFun (fsLit "mkName") mkNameIdKey
217 mkNameG_vName = thFun (fsLit "mkNameG_v") mkNameG_vIdKey
218 mkNameG_dName = thFun (fsLit "mkNameG_d") mkNameG_dIdKey
219 mkNameG_tcName = thFun (fsLit "mkNameG_tc") mkNameG_tcIdKey
220 mkNameLName = thFun (fsLit "mkNameL") mkNameLIdKey
221 mkNameSName = thFun (fsLit "mkNameS") mkNameSIdKey
222 unTypeName = thFun (fsLit "unType") unTypeIdKey
223 unTypeQName = thFun (fsLit "unTypeQ") unTypeQIdKey
224 unsafeTExpCoerceName = thFun (fsLit "unsafeTExpCoerce") unsafeTExpCoerceIdKey
225 liftTypedName = thFun (fsLit "liftTyped") liftTypedIdKey
226
227
228 -------------------- TH.Lib -----------------------
229 -- data Lit = ...
230 charLName, stringLName, integerLName, intPrimLName, wordPrimLName,
231 floatPrimLName, doublePrimLName, rationalLName, stringPrimLName,
232 charPrimLName :: Name
233 charLName = libFun (fsLit "charL") charLIdKey
234 stringLName = libFun (fsLit "stringL") stringLIdKey
235 integerLName = libFun (fsLit "integerL") integerLIdKey
236 intPrimLName = libFun (fsLit "intPrimL") intPrimLIdKey
237 wordPrimLName = libFun (fsLit "wordPrimL") wordPrimLIdKey
238 floatPrimLName = libFun (fsLit "floatPrimL") floatPrimLIdKey
239 doublePrimLName = libFun (fsLit "doublePrimL") doublePrimLIdKey
240 rationalLName = libFun (fsLit "rationalL") rationalLIdKey
241 stringPrimLName = libFun (fsLit "stringPrimL") stringPrimLIdKey
242 charPrimLName = libFun (fsLit "charPrimL") charPrimLIdKey
243
244 -- data Pat = ...
245 litPName, varPName, tupPName, unboxedTupPName, unboxedSumPName, conPName,
246 infixPName, tildePName, bangPName, asPName, wildPName, recPName, listPName,
247 sigPName, viewPName :: Name
248 litPName = libFun (fsLit "litP") litPIdKey
249 varPName = libFun (fsLit "varP") varPIdKey
250 tupPName = libFun (fsLit "tupP") tupPIdKey
251 unboxedTupPName = libFun (fsLit "unboxedTupP") unboxedTupPIdKey
252 unboxedSumPName = libFun (fsLit "unboxedSumP") unboxedSumPIdKey
253 conPName = libFun (fsLit "conP") conPIdKey
254 infixPName = libFun (fsLit "infixP") infixPIdKey
255 tildePName = libFun (fsLit "tildeP") tildePIdKey
256 bangPName = libFun (fsLit "bangP") bangPIdKey
257 asPName = libFun (fsLit "asP") asPIdKey
258 wildPName = libFun (fsLit "wildP") wildPIdKey
259 recPName = libFun (fsLit "recP") recPIdKey
260 listPName = libFun (fsLit "listP") listPIdKey
261 sigPName = libFun (fsLit "sigP") sigPIdKey
262 viewPName = libFun (fsLit "viewP") viewPIdKey
263
264 -- type FieldPat = ...
265 fieldPatName :: Name
266 fieldPatName = libFun (fsLit "fieldPat") fieldPatIdKey
267
268 -- data Match = ...
269 matchName :: Name
270 matchName = libFun (fsLit "match") matchIdKey
271
272 -- data Clause = ...
273 clauseName :: Name
274 clauseName = libFun (fsLit "clause") clauseIdKey
275
276 -- data Exp = ...
277 varEName, conEName, litEName, appEName, appTypeEName, infixEName, infixAppName,
278 sectionLName, sectionRName, lamEName, lamCaseEName, tupEName,
279 unboxedTupEName, unboxedSumEName, condEName, multiIfEName, letEName,
280 caseEName, doEName, mdoEName, compEName, staticEName, unboundVarEName,
281 labelEName, implicitParamVarEName :: Name
282 varEName = libFun (fsLit "varE") varEIdKey
283 conEName = libFun (fsLit "conE") conEIdKey
284 litEName = libFun (fsLit "litE") litEIdKey
285 appEName = libFun (fsLit "appE") appEIdKey
286 appTypeEName = libFun (fsLit "appTypeE") appTypeEIdKey
287 infixEName = libFun (fsLit "infixE") infixEIdKey
288 infixAppName = libFun (fsLit "infixApp") infixAppIdKey
289 sectionLName = libFun (fsLit "sectionL") sectionLIdKey
290 sectionRName = libFun (fsLit "sectionR") sectionRIdKey
291 lamEName = libFun (fsLit "lamE") lamEIdKey
292 lamCaseEName = libFun (fsLit "lamCaseE") lamCaseEIdKey
293 tupEName = libFun (fsLit "tupE") tupEIdKey
294 unboxedTupEName = libFun (fsLit "unboxedTupE") unboxedTupEIdKey
295 unboxedSumEName = libFun (fsLit "unboxedSumE") unboxedSumEIdKey
296 condEName = libFun (fsLit "condE") condEIdKey
297 multiIfEName = libFun (fsLit "multiIfE") multiIfEIdKey
298 letEName = libFun (fsLit "letE") letEIdKey
299 caseEName = libFun (fsLit "caseE") caseEIdKey
300 doEName = libFun (fsLit "doE") doEIdKey
301 mdoEName = libFun (fsLit "mdoE") mdoEIdKey
302 compEName = libFun (fsLit "compE") compEIdKey
303 -- ArithSeq skips a level
304 fromEName, fromThenEName, fromToEName, fromThenToEName :: Name
305 fromEName = libFun (fsLit "fromE") fromEIdKey
306 fromThenEName = libFun (fsLit "fromThenE") fromThenEIdKey
307 fromToEName = libFun (fsLit "fromToE") fromToEIdKey
308 fromThenToEName = libFun (fsLit "fromThenToE") fromThenToEIdKey
309 -- end ArithSeq
310 listEName, sigEName, recConEName, recUpdEName :: Name
311 listEName = libFun (fsLit "listE") listEIdKey
312 sigEName = libFun (fsLit "sigE") sigEIdKey
313 recConEName = libFun (fsLit "recConE") recConEIdKey
314 recUpdEName = libFun (fsLit "recUpdE") recUpdEIdKey
315 staticEName = libFun (fsLit "staticE") staticEIdKey
316 unboundVarEName = libFun (fsLit "unboundVarE") unboundVarEIdKey
317 labelEName = libFun (fsLit "labelE") labelEIdKey
318 implicitParamVarEName = libFun (fsLit "implicitParamVarE") implicitParamVarEIdKey
319
320 -- type FieldExp = ...
321 fieldExpName :: Name
322 fieldExpName = libFun (fsLit "fieldExp") fieldExpIdKey
323
324 -- data Body = ...
325 guardedBName, normalBName :: Name
326 guardedBName = libFun (fsLit "guardedB") guardedBIdKey
327 normalBName = libFun (fsLit "normalB") normalBIdKey
328
329 -- data Guard = ...
330 normalGEName, patGEName :: Name
331 normalGEName = libFun (fsLit "normalGE") normalGEIdKey
332 patGEName = libFun (fsLit "patGE") patGEIdKey
333
334 -- data Stmt = ...
335 bindSName, letSName, noBindSName, parSName, recSName :: Name
336 bindSName = libFun (fsLit "bindS") bindSIdKey
337 letSName = libFun (fsLit "letS") letSIdKey
338 noBindSName = libFun (fsLit "noBindS") noBindSIdKey
339 parSName = libFun (fsLit "parS") parSIdKey
340 recSName = libFun (fsLit "recS") recSIdKey
341
342 -- data Dec = ...
343 funDName, valDName, dataDName, newtypeDName, tySynDName, classDName,
344 instanceWithOverlapDName, sigDName, forImpDName, pragInlDName,
345 pragSpecDName, pragSpecInlDName, pragSpecInstDName, pragRuleDName,
346 pragAnnDName, standaloneDerivWithStrategyDName, defaultSigDName,
347 dataInstDName, newtypeInstDName, tySynInstDName, dataFamilyDName,
348 openTypeFamilyDName, closedTypeFamilyDName, infixLDName, infixRDName,
349 infixNDName, roleAnnotDName, patSynDName, patSynSigDName,
350 pragCompleteDName, implicitParamBindDName :: Name
351 funDName = libFun (fsLit "funD") funDIdKey
352 valDName = libFun (fsLit "valD") valDIdKey
353 dataDName = libFun (fsLit "dataD") dataDIdKey
354 newtypeDName = libFun (fsLit "newtypeD") newtypeDIdKey
355 tySynDName = libFun (fsLit "tySynD") tySynDIdKey
356 classDName = libFun (fsLit "classD") classDIdKey
357 instanceWithOverlapDName = libFun (fsLit "instanceWithOverlapD") instanceWithOverlapDIdKey
358 standaloneDerivWithStrategyDName = libFun (fsLit "standaloneDerivWithStrategyD") standaloneDerivWithStrategyDIdKey
359 sigDName = libFun (fsLit "sigD") sigDIdKey
360 defaultSigDName = libFun (fsLit "defaultSigD") defaultSigDIdKey
361 forImpDName = libFun (fsLit "forImpD") forImpDIdKey
362 pragInlDName = libFun (fsLit "pragInlD") pragInlDIdKey
363 pragSpecDName = libFun (fsLit "pragSpecD") pragSpecDIdKey
364 pragSpecInlDName = libFun (fsLit "pragSpecInlD") pragSpecInlDIdKey
365 pragSpecInstDName = libFun (fsLit "pragSpecInstD") pragSpecInstDIdKey
366 pragRuleDName = libFun (fsLit "pragRuleD") pragRuleDIdKey
367 pragCompleteDName = libFun (fsLit "pragCompleteD") pragCompleteDIdKey
368 pragAnnDName = libFun (fsLit "pragAnnD") pragAnnDIdKey
369 dataInstDName = libFun (fsLit "dataInstD") dataInstDIdKey
370 newtypeInstDName = libFun (fsLit "newtypeInstD") newtypeInstDIdKey
371 tySynInstDName = libFun (fsLit "tySynInstD") tySynInstDIdKey
372 openTypeFamilyDName = libFun (fsLit "openTypeFamilyD") openTypeFamilyDIdKey
373 closedTypeFamilyDName = libFun (fsLit "closedTypeFamilyD") closedTypeFamilyDIdKey
374 dataFamilyDName = libFun (fsLit "dataFamilyD") dataFamilyDIdKey
375 infixLDName = libFun (fsLit "infixLD") infixLDIdKey
376 infixRDName = libFun (fsLit "infixRD") infixRDIdKey
377 infixNDName = libFun (fsLit "infixND") infixNDIdKey
378 roleAnnotDName = libFun (fsLit "roleAnnotD") roleAnnotDIdKey
379 patSynDName = libFun (fsLit "patSynD") patSynDIdKey
380 patSynSigDName = libFun (fsLit "patSynSigD") patSynSigDIdKey
381 implicitParamBindDName = libFun (fsLit "implicitParamBindD") implicitParamBindDIdKey
382
383 -- type Ctxt = ...
384 cxtName :: Name
385 cxtName = libFun (fsLit "cxt") cxtIdKey
386
387 -- data SourceUnpackedness = ...
388 noSourceUnpackednessName, sourceNoUnpackName, sourceUnpackName :: Name
389 noSourceUnpackednessName = libFun (fsLit "noSourceUnpackedness") noSourceUnpackednessKey
390 sourceNoUnpackName = libFun (fsLit "sourceNoUnpack") sourceNoUnpackKey
391 sourceUnpackName = libFun (fsLit "sourceUnpack") sourceUnpackKey
392
393 -- data SourceStrictness = ...
394 noSourceStrictnessName, sourceLazyName, sourceStrictName :: Name
395 noSourceStrictnessName = libFun (fsLit "noSourceStrictness") noSourceStrictnessKey
396 sourceLazyName = libFun (fsLit "sourceLazy") sourceLazyKey
397 sourceStrictName = libFun (fsLit "sourceStrict") sourceStrictKey
398
399 -- data Con = ...
400 normalCName, recCName, infixCName, forallCName, gadtCName, recGadtCName :: Name
401 normalCName = libFun (fsLit "normalC" ) normalCIdKey
402 recCName = libFun (fsLit "recC" ) recCIdKey
403 infixCName = libFun (fsLit "infixC" ) infixCIdKey
404 forallCName = libFun (fsLit "forallC" ) forallCIdKey
405 gadtCName = libFun (fsLit "gadtC" ) gadtCIdKey
406 recGadtCName = libFun (fsLit "recGadtC") recGadtCIdKey
407
408 -- data Bang = ...
409 bangName :: Name
410 bangName = libFun (fsLit "bang") bangIdKey
411
412 -- type BangType = ...
413 bangTypeName :: Name
414 bangTypeName = libFun (fsLit "bangType") bangTKey
415
416 -- type VarBangType = ...
417 varBangTypeName :: Name
418 varBangTypeName = libFun (fsLit "varBangType") varBangTKey
419
420 -- data PatSynDir = ...
421 unidirPatSynName, implBidirPatSynName, explBidirPatSynName :: Name
422 unidirPatSynName = libFun (fsLit "unidir") unidirPatSynIdKey
423 implBidirPatSynName = libFun (fsLit "implBidir") implBidirPatSynIdKey
424 explBidirPatSynName = libFun (fsLit "explBidir") explBidirPatSynIdKey
425
426 -- data PatSynArgs = ...
427 prefixPatSynName, infixPatSynName, recordPatSynName :: Name
428 prefixPatSynName = libFun (fsLit "prefixPatSyn") prefixPatSynIdKey
429 infixPatSynName = libFun (fsLit "infixPatSyn") infixPatSynIdKey
430 recordPatSynName = libFun (fsLit "recordPatSyn") recordPatSynIdKey
431
432 -- data Type = ...
433 forallTName, forallVisTName, varTName, conTName, infixTName, tupleTName,
434 unboxedTupleTName, unboxedSumTName, arrowTName, listTName, appTName,
435 appKindTName, sigTName, equalityTName, litTName, promotedTName,
436 promotedTupleTName, promotedNilTName, promotedConsTName,
437 wildCardTName, implicitParamTName :: Name
438 forallTName = libFun (fsLit "forallT") forallTIdKey
439 forallVisTName = libFun (fsLit "forallVisT") forallVisTIdKey
440 varTName = libFun (fsLit "varT") varTIdKey
441 conTName = libFun (fsLit "conT") conTIdKey
442 tupleTName = libFun (fsLit "tupleT") tupleTIdKey
443 unboxedTupleTName = libFun (fsLit "unboxedTupleT") unboxedTupleTIdKey
444 unboxedSumTName = libFun (fsLit "unboxedSumT") unboxedSumTIdKey
445 arrowTName = libFun (fsLit "arrowT") arrowTIdKey
446 listTName = libFun (fsLit "listT") listTIdKey
447 appTName = libFun (fsLit "appT") appTIdKey
448 appKindTName = libFun (fsLit "appKindT") appKindTIdKey
449 sigTName = libFun (fsLit "sigT") sigTIdKey
450 equalityTName = libFun (fsLit "equalityT") equalityTIdKey
451 litTName = libFun (fsLit "litT") litTIdKey
452 promotedTName = libFun (fsLit "promotedT") promotedTIdKey
453 promotedTupleTName = libFun (fsLit "promotedTupleT") promotedTupleTIdKey
454 promotedNilTName = libFun (fsLit "promotedNilT") promotedNilTIdKey
455 promotedConsTName = libFun (fsLit "promotedConsT") promotedConsTIdKey
456 wildCardTName = libFun (fsLit "wildCardT") wildCardTIdKey
457 infixTName = libFun (fsLit "infixT") infixTIdKey
458 implicitParamTName = libFun (fsLit "implicitParamT") implicitParamTIdKey
459
460 -- data TyLit = ...
461 numTyLitName, strTyLitName :: Name
462 numTyLitName = libFun (fsLit "numTyLit") numTyLitIdKey
463 strTyLitName = libFun (fsLit "strTyLit") strTyLitIdKey
464
465 -- data TyVarBndr = ...
466 plainTVName, kindedTVName :: Name
467 plainTVName = libFun (fsLit "plainTV") plainTVIdKey
468 kindedTVName = libFun (fsLit "kindedTV") kindedTVIdKey
469
470 -- data Role = ...
471 nominalRName, representationalRName, phantomRName, inferRName :: Name
472 nominalRName = libFun (fsLit "nominalR") nominalRIdKey
473 representationalRName = libFun (fsLit "representationalR") representationalRIdKey
474 phantomRName = libFun (fsLit "phantomR") phantomRIdKey
475 inferRName = libFun (fsLit "inferR") inferRIdKey
476
477 -- data Kind = ...
478 varKName, conKName, tupleKName, arrowKName, listKName, appKName,
479 starKName, constraintKName :: Name
480 varKName = libFun (fsLit "varK") varKIdKey
481 conKName = libFun (fsLit "conK") conKIdKey
482 tupleKName = libFun (fsLit "tupleK") tupleKIdKey
483 arrowKName = libFun (fsLit "arrowK") arrowKIdKey
484 listKName = libFun (fsLit "listK") listKIdKey
485 appKName = libFun (fsLit "appK") appKIdKey
486 starKName = libFun (fsLit "starK") starKIdKey
487 constraintKName = libFun (fsLit "constraintK") constraintKIdKey
488
489 -- data FamilyResultSig = ...
490 noSigName, kindSigName, tyVarSigName :: Name
491 noSigName = libFun (fsLit "noSig") noSigIdKey
492 kindSigName = libFun (fsLit "kindSig") kindSigIdKey
493 tyVarSigName = libFun (fsLit "tyVarSig") tyVarSigIdKey
494
495 -- data InjectivityAnn = ...
496 injectivityAnnName :: Name
497 injectivityAnnName = libFun (fsLit "injectivityAnn") injectivityAnnIdKey
498
499 -- data Callconv = ...
500 cCallName, stdCallName, cApiCallName, primCallName, javaScriptCallName :: Name
501 cCallName = libFun (fsLit "cCall") cCallIdKey
502 stdCallName = libFun (fsLit "stdCall") stdCallIdKey
503 cApiCallName = libFun (fsLit "cApi") cApiCallIdKey
504 primCallName = libFun (fsLit "prim") primCallIdKey
505 javaScriptCallName = libFun (fsLit "javaScript") javaScriptCallIdKey
506
507 -- data Safety = ...
508 unsafeName, safeName, interruptibleName :: Name
509 unsafeName = libFun (fsLit "unsafe") unsafeIdKey
510 safeName = libFun (fsLit "safe") safeIdKey
511 interruptibleName = libFun (fsLit "interruptible") interruptibleIdKey
512
513 -- newtype TExp a = ...
514 tExpDataConName :: Name
515 tExpDataConName = thCon (fsLit "TExp") tExpDataConKey
516
517 -- data RuleBndr = ...
518 ruleVarName, typedRuleVarName :: Name
519 ruleVarName = libFun (fsLit ("ruleVar")) ruleVarIdKey
520 typedRuleVarName = libFun (fsLit ("typedRuleVar")) typedRuleVarIdKey
521
522 -- data FunDep = ...
523 funDepName :: Name
524 funDepName = libFun (fsLit "funDep") funDepIdKey
525
526 -- data TySynEqn = ...
527 tySynEqnName :: Name
528 tySynEqnName = libFun (fsLit "tySynEqn") tySynEqnIdKey
529
530 -- data AnnTarget = ...
531 valueAnnotationName, typeAnnotationName, moduleAnnotationName :: Name
532 valueAnnotationName = libFun (fsLit "valueAnnotation") valueAnnotationIdKey
533 typeAnnotationName = libFun (fsLit "typeAnnotation") typeAnnotationIdKey
534 moduleAnnotationName = libFun (fsLit "moduleAnnotation") moduleAnnotationIdKey
535
536 -- type DerivClause = ...
537 derivClauseName :: Name
538 derivClauseName = libFun (fsLit "derivClause") derivClauseIdKey
539
540 -- data DerivStrategy = ...
541 stockStrategyName, anyclassStrategyName, newtypeStrategyName,
542 viaStrategyName :: Name
543 stockStrategyName = libFun (fsLit "stockStrategy") stockStrategyIdKey
544 anyclassStrategyName = libFun (fsLit "anyclassStrategy") anyclassStrategyIdKey
545 newtypeStrategyName = libFun (fsLit "newtypeStrategy") newtypeStrategyIdKey
546 viaStrategyName = libFun (fsLit "viaStrategy") viaStrategyIdKey
547
548 matchQTyConName, clauseQTyConName, expQTyConName, stmtQTyConName,
549 decQTyConName, conQTyConName, bangTypeQTyConName,
550 varBangTypeQTyConName, typeQTyConName, fieldExpQTyConName,
551 patQTyConName, fieldPatQTyConName, predQTyConName, decsQTyConName,
552 ruleBndrQTyConName, tySynEqnQTyConName, roleTyConName,
553 derivClauseQTyConName, kindQTyConName, tyVarBndrQTyConName,
554 derivStrategyQTyConName :: Name
555 matchQTyConName = libTc (fsLit "MatchQ") matchQTyConKey
556 clauseQTyConName = libTc (fsLit "ClauseQ") clauseQTyConKey
557 expQTyConName = libTc (fsLit "ExpQ") expQTyConKey
558 stmtQTyConName = libTc (fsLit "StmtQ") stmtQTyConKey
559 decQTyConName = libTc (fsLit "DecQ") decQTyConKey
560 decsQTyConName = libTc (fsLit "DecsQ") decsQTyConKey -- Q [Dec]
561 conQTyConName = libTc (fsLit "ConQ") conQTyConKey
562 bangTypeQTyConName = libTc (fsLit "BangTypeQ") bangTypeQTyConKey
563 varBangTypeQTyConName = libTc (fsLit "VarBangTypeQ") varBangTypeQTyConKey
564 typeQTyConName = libTc (fsLit "TypeQ") typeQTyConKey
565 fieldExpQTyConName = libTc (fsLit "FieldExpQ") fieldExpQTyConKey
566 patQTyConName = libTc (fsLit "PatQ") patQTyConKey
567 fieldPatQTyConName = libTc (fsLit "FieldPatQ") fieldPatQTyConKey
568 predQTyConName = libTc (fsLit "PredQ") predQTyConKey
569 ruleBndrQTyConName = libTc (fsLit "RuleBndrQ") ruleBndrQTyConKey
570 tySynEqnQTyConName = libTc (fsLit "TySynEqnQ") tySynEqnQTyConKey
571 roleTyConName = libTc (fsLit "Role") roleTyConKey
572 derivClauseQTyConName = libTc (fsLit "DerivClauseQ") derivClauseQTyConKey
573 kindQTyConName = libTc (fsLit "KindQ") kindQTyConKey
574 tyVarBndrQTyConName = libTc (fsLit "TyVarBndrQ") tyVarBndrQTyConKey
575 derivStrategyQTyConName = libTc (fsLit "DerivStrategyQ") derivStrategyQTyConKey
576
577 -- quasiquoting
578 quoteExpName, quotePatName, quoteDecName, quoteTypeName :: Name
579 quoteExpName = qqFun (fsLit "quoteExp") quoteExpKey
580 quotePatName = qqFun (fsLit "quotePat") quotePatKey
581 quoteDecName = qqFun (fsLit "quoteDec") quoteDecKey
582 quoteTypeName = qqFun (fsLit "quoteType") quoteTypeKey
583
584 -- data Inline = ...
585 noInlineDataConName, inlineDataConName, inlinableDataConName :: Name
586 noInlineDataConName = thCon (fsLit "NoInline") noInlineDataConKey
587 inlineDataConName = thCon (fsLit "Inline") inlineDataConKey
588 inlinableDataConName = thCon (fsLit "Inlinable") inlinableDataConKey
589
590 -- data RuleMatch = ...
591 conLikeDataConName, funLikeDataConName :: Name
592 conLikeDataConName = thCon (fsLit "ConLike") conLikeDataConKey
593 funLikeDataConName = thCon (fsLit "FunLike") funLikeDataConKey
594
595 -- data Phases = ...
596 allPhasesDataConName, fromPhaseDataConName, beforePhaseDataConName :: Name
597 allPhasesDataConName = thCon (fsLit "AllPhases") allPhasesDataConKey
598 fromPhaseDataConName = thCon (fsLit "FromPhase") fromPhaseDataConKey
599 beforePhaseDataConName = thCon (fsLit "BeforePhase") beforePhaseDataConKey
600
601 -- data Overlap = ...
602 overlappableDataConName,
603 overlappingDataConName,
604 overlapsDataConName,
605 incoherentDataConName :: Name
606 overlappableDataConName = thCon (fsLit "Overlappable") overlappableDataConKey
607 overlappingDataConName = thCon (fsLit "Overlapping") overlappingDataConKey
608 overlapsDataConName = thCon (fsLit "Overlaps") overlapsDataConKey
609 incoherentDataConName = thCon (fsLit "Incoherent") incoherentDataConKey
610
611 {- *********************************************************************
612 * *
613 Class keys
614 * *
615 ********************************************************************* -}
616
617 -- ClassUniques available: 200-299
618 -- Check in PrelNames if you want to change this
619
620 liftClassKey :: Unique
621 liftClassKey = mkPreludeClassUnique 200
622
623 {- *********************************************************************
624 * *
625 TyCon keys
626 * *
627 ********************************************************************* -}
628
629 -- TyConUniques available: 200-299
630 -- Check in PrelNames if you want to change this
631
632 expTyConKey, matchTyConKey, clauseTyConKey, qTyConKey, expQTyConKey,
633 decQTyConKey, patTyConKey, matchQTyConKey, clauseQTyConKey,
634 stmtQTyConKey, conQTyConKey, typeQTyConKey, typeTyConKey,
635 tyVarBndrQTyConKey, decTyConKey, bangTypeQTyConKey, varBangTypeQTyConKey,
636 fieldExpTyConKey, fieldPatTyConKey, nameTyConKey, patQTyConKey,
637 fieldPatQTyConKey, fieldExpQTyConKey, funDepTyConKey, predTyConKey,
638 predQTyConKey, decsQTyConKey, ruleBndrQTyConKey, tySynEqnQTyConKey,
639 roleTyConKey, tExpTyConKey, injAnnTyConKey, kindQTyConKey,
640 overlapTyConKey, derivClauseQTyConKey, derivStrategyQTyConKey :: Unique
641 expTyConKey = mkPreludeTyConUnique 200
642 matchTyConKey = mkPreludeTyConUnique 201
643 clauseTyConKey = mkPreludeTyConUnique 202
644 qTyConKey = mkPreludeTyConUnique 203
645 expQTyConKey = mkPreludeTyConUnique 204
646 decQTyConKey = mkPreludeTyConUnique 205
647 patTyConKey = mkPreludeTyConUnique 206
648 matchQTyConKey = mkPreludeTyConUnique 207
649 clauseQTyConKey = mkPreludeTyConUnique 208
650 stmtQTyConKey = mkPreludeTyConUnique 209
651 conQTyConKey = mkPreludeTyConUnique 210
652 typeQTyConKey = mkPreludeTyConUnique 211
653 typeTyConKey = mkPreludeTyConUnique 212
654 decTyConKey = mkPreludeTyConUnique 213
655 bangTypeQTyConKey = mkPreludeTyConUnique 214
656 varBangTypeQTyConKey = mkPreludeTyConUnique 215
657 fieldExpTyConKey = mkPreludeTyConUnique 216
658 fieldPatTyConKey = mkPreludeTyConUnique 217
659 nameTyConKey = mkPreludeTyConUnique 218
660 patQTyConKey = mkPreludeTyConUnique 219
661 fieldPatQTyConKey = mkPreludeTyConUnique 220
662 fieldExpQTyConKey = mkPreludeTyConUnique 221
663 funDepTyConKey = mkPreludeTyConUnique 222
664 predTyConKey = mkPreludeTyConUnique 223
665 predQTyConKey = mkPreludeTyConUnique 224
666 tyVarBndrQTyConKey = mkPreludeTyConUnique 225
667 decsQTyConKey = mkPreludeTyConUnique 226
668 ruleBndrQTyConKey = mkPreludeTyConUnique 227
669 tySynEqnQTyConKey = mkPreludeTyConUnique 228
670 roleTyConKey = mkPreludeTyConUnique 229
671 tExpTyConKey = mkPreludeTyConUnique 230
672 injAnnTyConKey = mkPreludeTyConUnique 231
673 kindQTyConKey = mkPreludeTyConUnique 232
674 overlapTyConKey = mkPreludeTyConUnique 233
675 derivClauseQTyConKey = mkPreludeTyConUnique 234
676 derivStrategyQTyConKey = mkPreludeTyConUnique 235
677
678 {- *********************************************************************
679 * *
680 DataCon keys
681 * *
682 ********************************************************************* -}
683
684 -- DataConUniques available: 100-150
685 -- If you want to change this, make sure you check in PrelNames
686
687 -- data Inline = ...
688 noInlineDataConKey, inlineDataConKey, inlinableDataConKey :: Unique
689 noInlineDataConKey = mkPreludeDataConUnique 200
690 inlineDataConKey = mkPreludeDataConUnique 201
691 inlinableDataConKey = mkPreludeDataConUnique 202
692
693 -- data RuleMatch = ...
694 conLikeDataConKey, funLikeDataConKey :: Unique
695 conLikeDataConKey = mkPreludeDataConUnique 203
696 funLikeDataConKey = mkPreludeDataConUnique 204
697
698 -- data Phases = ...
699 allPhasesDataConKey, fromPhaseDataConKey, beforePhaseDataConKey :: Unique
700 allPhasesDataConKey = mkPreludeDataConUnique 205
701 fromPhaseDataConKey = mkPreludeDataConUnique 206
702 beforePhaseDataConKey = mkPreludeDataConUnique 207
703
704 -- newtype TExp a = ...
705 tExpDataConKey :: Unique
706 tExpDataConKey = mkPreludeDataConUnique 208
707
708 -- data Overlap = ..
709 overlappableDataConKey,
710 overlappingDataConKey,
711 overlapsDataConKey,
712 incoherentDataConKey :: Unique
713 overlappableDataConKey = mkPreludeDataConUnique 209
714 overlappingDataConKey = mkPreludeDataConUnique 210
715 overlapsDataConKey = mkPreludeDataConUnique 211
716 incoherentDataConKey = mkPreludeDataConUnique 212
717
718 {- *********************************************************************
719 * *
720 Id keys
721 * *
722 ********************************************************************* -}
723
724 -- IdUniques available: 200-499
725 -- If you want to change this, make sure you check in PrelNames
726
727 returnQIdKey, bindQIdKey, sequenceQIdKey, liftIdKey, newNameIdKey,
728 mkNameIdKey, mkNameG_vIdKey, mkNameG_dIdKey, mkNameG_tcIdKey,
729 mkNameLIdKey, mkNameSIdKey, unTypeIdKey, unTypeQIdKey,
730 unsafeTExpCoerceIdKey, liftTypedIdKey :: Unique
731 returnQIdKey = mkPreludeMiscIdUnique 200
732 bindQIdKey = mkPreludeMiscIdUnique 201
733 sequenceQIdKey = mkPreludeMiscIdUnique 202
734 liftIdKey = mkPreludeMiscIdUnique 203
735 newNameIdKey = mkPreludeMiscIdUnique 204
736 mkNameIdKey = mkPreludeMiscIdUnique 205
737 mkNameG_vIdKey = mkPreludeMiscIdUnique 206
738 mkNameG_dIdKey = mkPreludeMiscIdUnique 207
739 mkNameG_tcIdKey = mkPreludeMiscIdUnique 208
740 mkNameLIdKey = mkPreludeMiscIdUnique 209
741 mkNameSIdKey = mkPreludeMiscIdUnique 210
742 unTypeIdKey = mkPreludeMiscIdUnique 211
743 unTypeQIdKey = mkPreludeMiscIdUnique 212
744 unsafeTExpCoerceIdKey = mkPreludeMiscIdUnique 213
745 liftTypedIdKey = mkPreludeMiscIdUnique 214
746
747
748 -- data Lit = ...
749 charLIdKey, stringLIdKey, integerLIdKey, intPrimLIdKey, wordPrimLIdKey,
750 floatPrimLIdKey, doublePrimLIdKey, rationalLIdKey, stringPrimLIdKey,
751 charPrimLIdKey:: Unique
752 charLIdKey = mkPreludeMiscIdUnique 220
753 stringLIdKey = mkPreludeMiscIdUnique 221
754 integerLIdKey = mkPreludeMiscIdUnique 222
755 intPrimLIdKey = mkPreludeMiscIdUnique 223
756 wordPrimLIdKey = mkPreludeMiscIdUnique 224
757 floatPrimLIdKey = mkPreludeMiscIdUnique 225
758 doublePrimLIdKey = mkPreludeMiscIdUnique 226
759 rationalLIdKey = mkPreludeMiscIdUnique 227
760 stringPrimLIdKey = mkPreludeMiscIdUnique 228
761 charPrimLIdKey = mkPreludeMiscIdUnique 229
762
763 liftStringIdKey :: Unique
764 liftStringIdKey = mkPreludeMiscIdUnique 230
765
766 -- data Pat = ...
767 litPIdKey, varPIdKey, tupPIdKey, unboxedTupPIdKey, unboxedSumPIdKey, conPIdKey,
768 infixPIdKey, tildePIdKey, bangPIdKey, asPIdKey, wildPIdKey, recPIdKey,
769 listPIdKey, sigPIdKey, viewPIdKey :: Unique
770 litPIdKey = mkPreludeMiscIdUnique 240
771 varPIdKey = mkPreludeMiscIdUnique 241
772 tupPIdKey = mkPreludeMiscIdUnique 242
773 unboxedTupPIdKey = mkPreludeMiscIdUnique 243
774 unboxedSumPIdKey = mkPreludeMiscIdUnique 244
775 conPIdKey = mkPreludeMiscIdUnique 245
776 infixPIdKey = mkPreludeMiscIdUnique 246
777 tildePIdKey = mkPreludeMiscIdUnique 247
778 bangPIdKey = mkPreludeMiscIdUnique 248
779 asPIdKey = mkPreludeMiscIdUnique 249
780 wildPIdKey = mkPreludeMiscIdUnique 250
781 recPIdKey = mkPreludeMiscIdUnique 251
782 listPIdKey = mkPreludeMiscIdUnique 252
783 sigPIdKey = mkPreludeMiscIdUnique 253
784 viewPIdKey = mkPreludeMiscIdUnique 254
785
786 -- type FieldPat = ...
787 fieldPatIdKey :: Unique
788 fieldPatIdKey = mkPreludeMiscIdUnique 260
789
790 -- data Match = ...
791 matchIdKey :: Unique
792 matchIdKey = mkPreludeMiscIdUnique 261
793
794 -- data Clause = ...
795 clauseIdKey :: Unique
796 clauseIdKey = mkPreludeMiscIdUnique 262
797
798
799 -- data Exp = ...
800 varEIdKey, conEIdKey, litEIdKey, appEIdKey, appTypeEIdKey, infixEIdKey,
801 infixAppIdKey, sectionLIdKey, sectionRIdKey, lamEIdKey, lamCaseEIdKey,
802 tupEIdKey, unboxedTupEIdKey, unboxedSumEIdKey, condEIdKey, multiIfEIdKey,
803 letEIdKey, caseEIdKey, doEIdKey, compEIdKey,
804 fromEIdKey, fromThenEIdKey, fromToEIdKey, fromThenToEIdKey,
805 listEIdKey, sigEIdKey, recConEIdKey, recUpdEIdKey, staticEIdKey,
806 unboundVarEIdKey, labelEIdKey, implicitParamVarEIdKey, mdoEIdKey :: Unique
807 varEIdKey = mkPreludeMiscIdUnique 270
808 conEIdKey = mkPreludeMiscIdUnique 271
809 litEIdKey = mkPreludeMiscIdUnique 272
810 appEIdKey = mkPreludeMiscIdUnique 273
811 appTypeEIdKey = mkPreludeMiscIdUnique 274
812 infixEIdKey = mkPreludeMiscIdUnique 275
813 infixAppIdKey = mkPreludeMiscIdUnique 276
814 sectionLIdKey = mkPreludeMiscIdUnique 277
815 sectionRIdKey = mkPreludeMiscIdUnique 278
816 lamEIdKey = mkPreludeMiscIdUnique 279
817 lamCaseEIdKey = mkPreludeMiscIdUnique 280
818 tupEIdKey = mkPreludeMiscIdUnique 281
819 unboxedTupEIdKey = mkPreludeMiscIdUnique 282
820 unboxedSumEIdKey = mkPreludeMiscIdUnique 283
821 condEIdKey = mkPreludeMiscIdUnique 284
822 multiIfEIdKey = mkPreludeMiscIdUnique 285
823 letEIdKey = mkPreludeMiscIdUnique 286
824 caseEIdKey = mkPreludeMiscIdUnique 287
825 doEIdKey = mkPreludeMiscIdUnique 288
826 compEIdKey = mkPreludeMiscIdUnique 289
827 fromEIdKey = mkPreludeMiscIdUnique 290
828 fromThenEIdKey = mkPreludeMiscIdUnique 291
829 fromToEIdKey = mkPreludeMiscIdUnique 292
830 fromThenToEIdKey = mkPreludeMiscIdUnique 293
831 listEIdKey = mkPreludeMiscIdUnique 294
832 sigEIdKey = mkPreludeMiscIdUnique 295
833 recConEIdKey = mkPreludeMiscIdUnique 296
834 recUpdEIdKey = mkPreludeMiscIdUnique 297
835 staticEIdKey = mkPreludeMiscIdUnique 298
836 unboundVarEIdKey = mkPreludeMiscIdUnique 299
837 labelEIdKey = mkPreludeMiscIdUnique 300
838 implicitParamVarEIdKey = mkPreludeMiscIdUnique 301
839 mdoEIdKey = mkPreludeMiscIdUnique 302
840
841 -- type FieldExp = ...
842 fieldExpIdKey :: Unique
843 fieldExpIdKey = mkPreludeMiscIdUnique 305
844
845 -- data Body = ...
846 guardedBIdKey, normalBIdKey :: Unique
847 guardedBIdKey = mkPreludeMiscIdUnique 306
848 normalBIdKey = mkPreludeMiscIdUnique 307
849
850 -- data Guard = ...
851 normalGEIdKey, patGEIdKey :: Unique
852 normalGEIdKey = mkPreludeMiscIdUnique 308
853 patGEIdKey = mkPreludeMiscIdUnique 309
854
855 -- data Stmt = ...
856 bindSIdKey, letSIdKey, noBindSIdKey, parSIdKey, recSIdKey :: Unique
857 bindSIdKey = mkPreludeMiscIdUnique 310
858 letSIdKey = mkPreludeMiscIdUnique 311
859 noBindSIdKey = mkPreludeMiscIdUnique 312
860 parSIdKey = mkPreludeMiscIdUnique 313
861 recSIdKey = mkPreludeMiscIdUnique 314
862
863 -- data Dec = ...
864 funDIdKey, valDIdKey, dataDIdKey, newtypeDIdKey, tySynDIdKey, classDIdKey,
865 instanceWithOverlapDIdKey, instanceDIdKey, sigDIdKey, forImpDIdKey,
866 pragInlDIdKey, pragSpecDIdKey, pragSpecInlDIdKey, pragSpecInstDIdKey,
867 pragRuleDIdKey, pragAnnDIdKey, defaultSigDIdKey, dataFamilyDIdKey,
868 openTypeFamilyDIdKey, closedTypeFamilyDIdKey, dataInstDIdKey,
869 newtypeInstDIdKey, tySynInstDIdKey, standaloneDerivWithStrategyDIdKey,
870 infixLDIdKey, infixRDIdKey, infixNDIdKey, roleAnnotDIdKey, patSynDIdKey,
871 patSynSigDIdKey, pragCompleteDIdKey, implicitParamBindDIdKey :: Unique
872 funDIdKey = mkPreludeMiscIdUnique 320
873 valDIdKey = mkPreludeMiscIdUnique 321
874 dataDIdKey = mkPreludeMiscIdUnique 322
875 newtypeDIdKey = mkPreludeMiscIdUnique 323
876 tySynDIdKey = mkPreludeMiscIdUnique 324
877 classDIdKey = mkPreludeMiscIdUnique 325
878 instanceWithOverlapDIdKey = mkPreludeMiscIdUnique 326
879 instanceDIdKey = mkPreludeMiscIdUnique 327
880 sigDIdKey = mkPreludeMiscIdUnique 328
881 forImpDIdKey = mkPreludeMiscIdUnique 329
882 pragInlDIdKey = mkPreludeMiscIdUnique 330
883 pragSpecDIdKey = mkPreludeMiscIdUnique 331
884 pragSpecInlDIdKey = mkPreludeMiscIdUnique 332
885 pragSpecInstDIdKey = mkPreludeMiscIdUnique 333
886 pragRuleDIdKey = mkPreludeMiscIdUnique 334
887 pragAnnDIdKey = mkPreludeMiscIdUnique 335
888 dataFamilyDIdKey = mkPreludeMiscIdUnique 336
889 openTypeFamilyDIdKey = mkPreludeMiscIdUnique 337
890 dataInstDIdKey = mkPreludeMiscIdUnique 338
891 newtypeInstDIdKey = mkPreludeMiscIdUnique 339
892 tySynInstDIdKey = mkPreludeMiscIdUnique 340
893 closedTypeFamilyDIdKey = mkPreludeMiscIdUnique 341
894 infixLDIdKey = mkPreludeMiscIdUnique 342
895 infixRDIdKey = mkPreludeMiscIdUnique 343
896 infixNDIdKey = mkPreludeMiscIdUnique 344
897 roleAnnotDIdKey = mkPreludeMiscIdUnique 345
898 standaloneDerivWithStrategyDIdKey = mkPreludeMiscIdUnique 346
899 defaultSigDIdKey = mkPreludeMiscIdUnique 347
900 patSynDIdKey = mkPreludeMiscIdUnique 348
901 patSynSigDIdKey = mkPreludeMiscIdUnique 349
902 pragCompleteDIdKey = mkPreludeMiscIdUnique 350
903 implicitParamBindDIdKey = mkPreludeMiscIdUnique 351
904
905 -- type Cxt = ...
906 cxtIdKey :: Unique
907 cxtIdKey = mkPreludeMiscIdUnique 361
908
909 -- data SourceUnpackedness = ...
910 noSourceUnpackednessKey, sourceNoUnpackKey, sourceUnpackKey :: Unique
911 noSourceUnpackednessKey = mkPreludeMiscIdUnique 362
912 sourceNoUnpackKey = mkPreludeMiscIdUnique 363
913 sourceUnpackKey = mkPreludeMiscIdUnique 364
914
915 -- data SourceStrictness = ...
916 noSourceStrictnessKey, sourceLazyKey, sourceStrictKey :: Unique
917 noSourceStrictnessKey = mkPreludeMiscIdUnique 365
918 sourceLazyKey = mkPreludeMiscIdUnique 366
919 sourceStrictKey = mkPreludeMiscIdUnique 367
920
921 -- data Con = ...
922 normalCIdKey, recCIdKey, infixCIdKey, forallCIdKey, gadtCIdKey,
923 recGadtCIdKey :: Unique
924 normalCIdKey = mkPreludeMiscIdUnique 368
925 recCIdKey = mkPreludeMiscIdUnique 369
926 infixCIdKey = mkPreludeMiscIdUnique 370
927 forallCIdKey = mkPreludeMiscIdUnique 371
928 gadtCIdKey = mkPreludeMiscIdUnique 372
929 recGadtCIdKey = mkPreludeMiscIdUnique 373
930
931 -- data Bang = ...
932 bangIdKey :: Unique
933 bangIdKey = mkPreludeMiscIdUnique 374
934
935 -- type BangType = ...
936 bangTKey :: Unique
937 bangTKey = mkPreludeMiscIdUnique 375
938
939 -- type VarBangType = ...
940 varBangTKey :: Unique
941 varBangTKey = mkPreludeMiscIdUnique 376
942
943 -- data PatSynDir = ...
944 unidirPatSynIdKey, implBidirPatSynIdKey, explBidirPatSynIdKey :: Unique
945 unidirPatSynIdKey = mkPreludeMiscIdUnique 377
946 implBidirPatSynIdKey = mkPreludeMiscIdUnique 378
947 explBidirPatSynIdKey = mkPreludeMiscIdUnique 379
948
949 -- data PatSynArgs = ...
950 prefixPatSynIdKey, infixPatSynIdKey, recordPatSynIdKey :: Unique
951 prefixPatSynIdKey = mkPreludeMiscIdUnique 380
952 infixPatSynIdKey = mkPreludeMiscIdUnique 381
953 recordPatSynIdKey = mkPreludeMiscIdUnique 382
954
955 -- data Type = ...
956 forallTIdKey, forallVisTIdKey, varTIdKey, conTIdKey, tupleTIdKey,
957 unboxedTupleTIdKey, unboxedSumTIdKey, arrowTIdKey, listTIdKey, appTIdKey,
958 appKindTIdKey, sigTIdKey, equalityTIdKey, litTIdKey, promotedTIdKey,
959 promotedTupleTIdKey, promotedNilTIdKey, promotedConsTIdKey,
960 wildCardTIdKey, implicitParamTIdKey, infixTIdKey :: Unique
961 forallTIdKey = mkPreludeMiscIdUnique 390
962 forallVisTIdKey = mkPreludeMiscIdUnique 391
963 varTIdKey = mkPreludeMiscIdUnique 392
964 conTIdKey = mkPreludeMiscIdUnique 393
965 tupleTIdKey = mkPreludeMiscIdUnique 394
966 unboxedTupleTIdKey = mkPreludeMiscIdUnique 395
967 unboxedSumTIdKey = mkPreludeMiscIdUnique 396
968 arrowTIdKey = mkPreludeMiscIdUnique 397
969 listTIdKey = mkPreludeMiscIdUnique 398
970 appTIdKey = mkPreludeMiscIdUnique 399
971 appKindTIdKey = mkPreludeMiscIdUnique 400
972 sigTIdKey = mkPreludeMiscIdUnique 401
973 equalityTIdKey = mkPreludeMiscIdUnique 402
974 litTIdKey = mkPreludeMiscIdUnique 403
975 promotedTIdKey = mkPreludeMiscIdUnique 404
976 promotedTupleTIdKey = mkPreludeMiscIdUnique 405
977 promotedNilTIdKey = mkPreludeMiscIdUnique 406
978 promotedConsTIdKey = mkPreludeMiscIdUnique 407
979 wildCardTIdKey = mkPreludeMiscIdUnique 408
980 implicitParamTIdKey = mkPreludeMiscIdUnique 409
981 infixTIdKey = mkPreludeMiscIdUnique 410
982
983 -- data TyLit = ...
984 numTyLitIdKey, strTyLitIdKey :: Unique
985 numTyLitIdKey = mkPreludeMiscIdUnique 411
986 strTyLitIdKey = mkPreludeMiscIdUnique 412
987
988 -- data TyVarBndr = ...
989 plainTVIdKey, kindedTVIdKey :: Unique
990 plainTVIdKey = mkPreludeMiscIdUnique 413
991 kindedTVIdKey = mkPreludeMiscIdUnique 414
992
993 -- data Role = ...
994 nominalRIdKey, representationalRIdKey, phantomRIdKey, inferRIdKey :: Unique
995 nominalRIdKey = mkPreludeMiscIdUnique 415
996 representationalRIdKey = mkPreludeMiscIdUnique 416
997 phantomRIdKey = mkPreludeMiscIdUnique 417
998 inferRIdKey = mkPreludeMiscIdUnique 418
999
1000 -- data Kind = ...
1001 varKIdKey, conKIdKey, tupleKIdKey, arrowKIdKey, listKIdKey, appKIdKey,
1002 starKIdKey, constraintKIdKey :: Unique
1003 varKIdKey = mkPreludeMiscIdUnique 419
1004 conKIdKey = mkPreludeMiscIdUnique 420
1005 tupleKIdKey = mkPreludeMiscIdUnique 421
1006 arrowKIdKey = mkPreludeMiscIdUnique 422
1007 listKIdKey = mkPreludeMiscIdUnique 423
1008 appKIdKey = mkPreludeMiscIdUnique 424
1009 starKIdKey = mkPreludeMiscIdUnique 425
1010 constraintKIdKey = mkPreludeMiscIdUnique 426
1011
1012 -- data FamilyResultSig = ...
1013 noSigIdKey, kindSigIdKey, tyVarSigIdKey :: Unique
1014 noSigIdKey = mkPreludeMiscIdUnique 427
1015 kindSigIdKey = mkPreludeMiscIdUnique 428
1016 tyVarSigIdKey = mkPreludeMiscIdUnique 429
1017
1018 -- data InjectivityAnn = ...
1019 injectivityAnnIdKey :: Unique
1020 injectivityAnnIdKey = mkPreludeMiscIdUnique 430
1021
1022 -- data Callconv = ...
1023 cCallIdKey, stdCallIdKey, cApiCallIdKey, primCallIdKey,
1024 javaScriptCallIdKey :: Unique
1025 cCallIdKey = mkPreludeMiscIdUnique 431
1026 stdCallIdKey = mkPreludeMiscIdUnique 432
1027 cApiCallIdKey = mkPreludeMiscIdUnique 433
1028 primCallIdKey = mkPreludeMiscIdUnique 434
1029 javaScriptCallIdKey = mkPreludeMiscIdUnique 435
1030
1031 -- data Safety = ...
1032 unsafeIdKey, safeIdKey, interruptibleIdKey :: Unique
1033 unsafeIdKey = mkPreludeMiscIdUnique 440
1034 safeIdKey = mkPreludeMiscIdUnique 441
1035 interruptibleIdKey = mkPreludeMiscIdUnique 442
1036
1037 -- data FunDep = ...
1038 funDepIdKey :: Unique
1039 funDepIdKey = mkPreludeMiscIdUnique 445
1040
1041 -- data TySynEqn = ...
1042 tySynEqnIdKey :: Unique
1043 tySynEqnIdKey = mkPreludeMiscIdUnique 460
1044
1045 -- quasiquoting
1046 quoteExpKey, quotePatKey, quoteDecKey, quoteTypeKey :: Unique
1047 quoteExpKey = mkPreludeMiscIdUnique 470
1048 quotePatKey = mkPreludeMiscIdUnique 471
1049 quoteDecKey = mkPreludeMiscIdUnique 472
1050 quoteTypeKey = mkPreludeMiscIdUnique 473
1051
1052 -- data RuleBndr = ...
1053 ruleVarIdKey, typedRuleVarIdKey :: Unique
1054 ruleVarIdKey = mkPreludeMiscIdUnique 480
1055 typedRuleVarIdKey = mkPreludeMiscIdUnique 481
1056
1057 -- data AnnTarget = ...
1058 valueAnnotationIdKey, typeAnnotationIdKey, moduleAnnotationIdKey :: Unique
1059 valueAnnotationIdKey = mkPreludeMiscIdUnique 490
1060 typeAnnotationIdKey = mkPreludeMiscIdUnique 491
1061 moduleAnnotationIdKey = mkPreludeMiscIdUnique 492
1062
1063 -- type DerivPred = ...
1064 derivClauseIdKey :: Unique
1065 derivClauseIdKey = mkPreludeMiscIdUnique 493
1066
1067 -- data DerivStrategy = ...
1068 stockStrategyIdKey, anyclassStrategyIdKey, newtypeStrategyIdKey,
1069 viaStrategyIdKey :: Unique
1070 stockStrategyIdKey = mkPreludeDataConUnique 494
1071 anyclassStrategyIdKey = mkPreludeDataConUnique 495
1072 newtypeStrategyIdKey = mkPreludeDataConUnique 496
1073 viaStrategyIdKey = mkPreludeDataConUnique 497
1074
1075 {-
1076 ************************************************************************
1077 * *
1078 RdrNames
1079 * *
1080 ************************************************************************
1081 -}
1082
1083 lift_RDR, liftTyped_RDR, mkNameG_dRDR, mkNameG_vRDR :: RdrName
1084 lift_RDR = nameRdrName liftName
1085 liftTyped_RDR = nameRdrName liftTypedName
1086 mkNameG_dRDR = nameRdrName mkNameG_dName
1087 mkNameG_vRDR = nameRdrName mkNameG_vName
1088
1089 -- data Exp = ...
1090 conE_RDR, litE_RDR, appE_RDR, infixApp_RDR :: RdrName
1091 conE_RDR = nameRdrName conEName
1092 litE_RDR = nameRdrName litEName
1093 appE_RDR = nameRdrName appEName
1094 infixApp_RDR = nameRdrName infixAppName
1095
1096 -- data Lit = ...
1097 stringL_RDR, intPrimL_RDR, wordPrimL_RDR, floatPrimL_RDR,
1098 doublePrimL_RDR, stringPrimL_RDR, charPrimL_RDR :: RdrName
1099 stringL_RDR = nameRdrName stringLName
1100 intPrimL_RDR = nameRdrName intPrimLName
1101 wordPrimL_RDR = nameRdrName wordPrimLName
1102 floatPrimL_RDR = nameRdrName floatPrimLName
1103 doublePrimL_RDR = nameRdrName doublePrimLName
1104 stringPrimL_RDR = nameRdrName stringPrimLName
1105 charPrimL_RDR = nameRdrName charPrimLName