Language.Haskell.TH.Lib

Library functions

Abbreviations

type InfoQ

type ExpQ

type TExpQ a

type DecQ

type DecsQ

type ConQ

type TypeQ

type TyLitQ

type CxtQ

type PredQ

type DerivClauseQ

type MatchQ

type ClauseQ

type BodyQ

type GuardQ

type StmtQ

type RangeQ

type SourceStrictnessQ

type SourceUnpackednessQ

type BangQ

type BangTypeQ

type VarBangTypeQ

type StrictTypeQ

type VarStrictTypeQ

type FieldExpQ

type PatQ

type FieldPatQ

type RuleBndrQ

type TySynEqnQ

type PatSynDirQ

type PatSynArgsQ

Constructors lifted to Q

Literals

intPrimL

wordPrimL

floatPrimL

doublePrimL

integerL

rationalL

charL

stringL

stringPrimL

charPrimL

Patterns

litP

varP

tupP

unboxedTupP

unboxedSumP

conP

uInfixP

parensP

infixP

tildeP

bangP

asP

wildP

recP

listP

sigP

viewP

fieldPat

Pattern Guards

normalB

guardedB

normalG

normalGE

patG

patGE

match

clause

Expressions

dyn

varE

unboundVarE

conE

litE

appE

appTypeE

uInfixE

parensE

staticE

infixE

infixApp

sectionL

sectionR

lamE

lam1E

lamCaseE

tupE

unboxedTupE

unboxedSumE

condE

multiIfE

letE

caseE

appsE

listE

sigE

recConE

recUpdE

stringE

fieldExp

Ranges

fromE

fromThenE

fromToE

fromThenToE

Ranges with more indirection

arithSeqE

fromR

fromThenR

fromToR

fromThenToR

Statements

doE

compE

bindS

letS

noBindS

parS

Types

forallT

varT

conT

appT

arrowT

infixT

uInfixT

parensT

equalityT

listT

tupleT

unboxedTupleT

unboxedSumT

sigT

litT

wildCardT

promotedT

promotedTupleT

promotedNilT

promotedConsT

Type literals

numTyLit

strTyLit

Strictness

noSourceUnpackedness

sourceNoUnpack

sourceUnpack

noSourceStrictness

sourceLazy

sourceStrict

isStrict

notStrict

unpacked

bang

bangType

varBangType

strictType

varStrictType

Class Contexts

cxt

classP

equalP

Constructors

normalC

recC

infixC

forallC

gadtC

recGadtC

Kinds

varK

conK

tupleK

arrowK

listK

appK

starK

constraintK

Type variable binders

plainTV

kindedTV

Roles

nominalR

representationalR

phantomR

inferR

Top Level Declarations

Data

valD

funD

tySynD

dataD

newtypeD

derivClause

data DerivClause

data DerivStrategy

Class

classD

instanceD

instanceWithOverlapD

data Overlap

sigD

standaloneDerivD

standaloneDerivWithStrategyD

defaultSigD

Role annotations

roleAnnotD

Type Family / Data Family

dataFamilyD

openTypeFamilyD

closedTypeFamilyD

dataInstD

familyNoKindD

familyKindD

closedTypeFamilyNoKindD

closedTypeFamilyKindD

newtypeInstD

tySynInstD

typeFam

dataFam

tySynEqn

injectivityAnn

noSig

kindSig

tyVarSig

Fixity

infixLD

infixRD

infixND

Foreign Function Interface (FFI)

cCall

stdCall

cApi

prim

javaScript

unsafe

safe

interruptible

forImpD

Functional dependencies

funDep

Pragmas

ruleVar

typedRuleVar

valueAnnotation

typeAnnotation

moduleAnnotation

pragInlD

pragSpecD

pragSpecInlD

pragSpecInstD

pragRuleD

pragAnnD

pragLineD

pragCompleteD

Pattern Synonyms

patSynD

patSynSigD

unidir

implBidir

explBidir

prefixPatSyn

infixPatSyn

recordPatSyn

Reify

thisModule