HscTypes

# compilation state

data HscEnv

hscEPS

type FinderCache

data FindResult

type ModLocationCache

data Target

data TargetId

pprTarget

pprTargetId

type ModuleGraph

emptyMG

data HscStatus

# Hsc monad

data Hsc a

runHsc

runInteractiveHsc

# Information about modules

data ModDetails

emptyModDetails

data ModGuts

data CgGuts

data ForeignStubs

appendStubC

type ImportedMods

type ImportedModsVal

data ModSummary

ms_imps

ms_mod_name

showModMsg

isBootSummary

msHsFilePath

msHiFilePath

msObjFilePath

data SourceModified

# Information about the module being compiled

data HscSource

isHsBootOrSig

hscSourceString

# State relating to modules in this package

type HomePackageTable

data HomeModInfo

emptyHomePackageTable

hptInstances

hptRules

hptVectInfo

pprHPT

hptObjs

# State relating to known packages

data ExternalPackageState

data EpsStats

addEpsInStats

type PackageTypeEnv

type PackageIfaceTable

emptyPackageIfaceTable

lookupIfaceByModule

emptyModIface

lookupHptByModule

type PackageInstEnv

type PackageFamInstEnv

type PackageRuleBase

mkSOName

mkHsSOName

soExt

# Metaprogramming

data MetaRequest

data MetaResult

metaRequestE

metaRequestP

metaRequestT

metaRequestD

metaRequestAW

type MetaHook f

# Annotations

prepareAnnotations

# Interactive context

data InteractiveContext

emptyInteractiveContext

icPrintUnqual

icInScopeTTs

icExtendGblRdrEnv

extendInteractiveContext

extendInteractiveContextWithIds

substInteractiveContext

setInteractivePrintName

icInteractiveModule

data InteractiveImport

setInteractivePackage

mkPrintUnqualified

pprModulePrefix

mkQualPackage

mkQualModule

pkgQual

# Interfaces

data ModIface

mkIfaceWarnCache

mkIfaceHashCache

mkIfaceFixCache

emptyIfaceWarnCache

# Fixity

type FixityEnv

data FixItem

lookupFixity

emptyFixityEnv

# TyThings and type environments

data TyThing

tyThingAvailInfo

tyThingTyCon

tyThingDataCon

tyThingId

tyThingCoAxiom

tyThingParent_maybe

tyThingsTyVars

implicitTyThings

implicitTyConThings

implicitClassThings

isImplicitTyThing

type TypeEnv

lookupType

lookupTypeHscEnv

mkTypeEnv

emptyTypeEnv

typeEnvFromEntities

mkTypeEnvWithImplicits

extendTypeEnv

extendTypeEnvList

extendTypeEnvWithIds

lookupTypeEnv

typeEnvElts

typeEnvTyCons

typeEnvIds

typeEnvPatSyns

typeEnvDataCons

typeEnvCoAxioms

typeEnvClasses

# MonadThings

class MonadThings m

# Information on imports and exports

type WhetherHasOrphans

type IsBootInterface

data Usage

data Dependencies

noDependencies

data NameCache

type OrigNameCache

type IfaceExport

# Warnings

data Warnings

data WarningTxt

plusWarns

# Linker stuff

data Linkable

isObjectLinkable

linkableObjs

data Unlinked

data CompiledByteCode

isObject

nameOfObject

isInterpretable

byteCodeOfObject

# Program coverage

data HpcInfo

emptyHpcInfo

isHpcUsed

type AnyHpcUsage

# Breakpoints

data ModBreaks

type BreakIndex

emptyModBreaks

# Vectorisation information

data VectInfo

data IfaceVectInfo

noVectInfo

plusVectInfo

noIfaceVectInfo

isNoIfaceVectInfo

# Safe Haskell information

data IfaceTrustInfo

getSafeMode

setSafeMode

noIfaceTrustInfo

trustInfoToNum

numToTrustInfo

type IsSafeImport

# result of the parser

data HsParsedModule

# Compilation errors and warnings

data SourceError

data GhcApiError

mkSrcErr

srcErrorMessages

mkApiErr

throwOneError

handleSourceError

handleFlagWarnings

printOrThrowWarnings