Distribution.PackageDescription

# Package descriptions

data PackageDescription

emptyPackageDescription

specVersion

descCabalVersion

data BuildType

knownBuildTypes

allLibraries

## Renaming (syntactic)

data ModuleRenaming

defaultRenaming

## Libraries

data Library

data ModuleReexport

emptyLibrary

withLib

hasPublicLib

hasLibs

explicitLibModules

libModulesAutogen

libModules

## Executables

data Executable

emptyExecutable

withExe

hasExes

exeModules

exeModulesAutogen

# Tests

data TestSuite

data TestSuiteInterface

data TestType

testType

knownTestTypes

emptyTestSuite

hasTests

withTest

testModules

testModulesAutogen

# Benchmarks

data Benchmark

data BenchmarkInterface

data BenchmarkType

benchmarkType

knownBenchmarkTypes

emptyBenchmark

hasBenchmarks

withBenchmark

benchmarkModules

benchmarkModulesAutogen

# Build information

data BuildInfo

emptyBuildInfo

allBuildInfo

allLanguages

allExtensions

usedExtensions

hcOptions

hcProfOptions

hcSharedOptions

## Supplementary build information

data ComponentName

defaultLibName

type HookedBuildInfo

emptyHookedBuildInfo

updatePackageDescription

# package configuration

data GenericPackageDescription

data Flag

emptyFlag

data FlagName

mkFlagName

unFlagName

type FlagAssignment

showFlagValue

dispFlagAssignment

parseFlagAssignment

data CondTree v c a

data ConfVar

data Condition c

cNot

cAnd

cOr

# Source repositories

data SourceRepo

data RepoKind

data RepoType

knownRepoTypes

emptySourceRepo

# Custom setup build information

data SetupBuildInfo