TcSMonad

data WorkList

isEmptyWorkList

emptyWorkList

workListFromEq

workListFromNonEq

workListFromCt

extendWorkListEq

extendWorkListNonEq

extendWorkListCt

appendWorkListCt

appendWorkListEqs

unionWorkList

selectWorkItem

getTcSWorkList

updWorkListTcS

updWorkListTcS_return

getTcSWorkListTvs

getTcSImplics

updTcSImplics

emitTcSImplication

data Ct

type Xi

tyVarsOfCt

tyVarsOfCts

tyVarsOfCDicts

emitFrozenError

isWanted

isDerived

isGivenCt

isWantedCt

isDerivedCt

pprFlavorArising

isFlexiTcsTv

instFlexiTcSHelperTcS

canRewrite

canSolve

mkGivenLoc

ctWantedLoc

data TcS a

runTcS

runTcSWithEvBinds

failTcS

panicTcS

traceTcS

traceFireTcS

bumpStepCountTcS

doWithInert

tryTcS

nestImplicTcS

recoverTcS

wrapErrTcS

wrapWarnTcS

getFlatCache

updFlatCache

addSolvedDict

addSolvedFunEq

deferTcSForAllEq

setEvBind

data XEvTerm

data MaybeNew

isFresh

freshGoals

getEvTerms

xCtFlavor

rewriteCtFlavor

newWantedEvVar

instDFunConstraints

newDerived

setWantedTyBind

getInstEnvs

getFamInstEnvs

getTopEnv

getGblEnv

getTcEvBinds

getUntouchables

getTcEvBindsMap

getTcSTyBinds

getTcSTyBindsMap

newFlattenSkolemTy

data InertSet

data InertCans

getInertEqs

getCtCoercion

emptyInert

getTcSInerts

lookupInInerts

getInertUnsolved

getInertInsols

splitInertsForImplications

modifyInertTcS

updInertSetTcS

partitionCCanMap

partitionEqMap

getRelevantCts

extractRelevantInerts

data CCanMap a

type CtTypeMap

type CtFamHeadMap

type CtPredMap

data PredMap a

data FamHeadMap a

partCtFamHeadMap

lookupFamHead

filterSolved

instDFunType

newFlexiTcSTy

instFlexiTcS

compatKind

mkKindErrorCtxtTcS

type TcsUntouchables

isTouchableMetaTyVar

isTouchableMetaTyVar_InRange

getDefaultInfo

getDynFlags

matchClass

matchFam

data MatchInstResult mi

checkWellStagedDFun

warnTcS

pprEq