Pretty
Bool
Source
#
|
|
Instance details
Defined in
Distribution.Pretty
|
Pretty
Int
Source
#
|
|
Instance details
Defined in
Distribution.Pretty
|
Pretty
Version
Source
#
|
|
Instance details
Defined in
Distribution.Types.Version
|
Pretty
VersionRange
Source
#
|
|
Instance details
Defined in
Distribution.Types.VersionRange.Internal
|
Pretty
RepoType
Source
#
|
|
Instance details
Defined in
Distribution.Types.SourceRepo
|
Pretty
RepoKind
Source
#
|
|
Instance details
Defined in
Distribution.Types.SourceRepo
|
Pretty
PkgconfigVersion
Source
#
|
|
Instance details
Defined in
Distribution.Types.PkgconfigVersion
|
Pretty
PkgconfigVersionRange
Source
#
|
|
Instance details
Defined in
Distribution.Types.PkgconfigVersionRange
|
Pretty
PkgconfigName
Source
#
|
|
Instance details
Defined in
Distribution.Types.PkgconfigName
|
Pretty
PkgconfigDependency
Source
#
|
|
Instance details
Defined in
Distribution.Types.PkgconfigDependency
|
Pretty
PackageName
Source
#
|
|
Instance details
Defined in
Distribution.Types.PackageName
|
Pretty
UnqualComponentName
Source
#
|
|
Instance details
Defined in
Distribution.Types.UnqualComponentName
|
Pretty
PackageVersionConstraint
Source
#
|
|
Instance details
Defined in
Distribution.Types.PackageVersionConstraint
|
Pretty
LibraryVisibility
Source
#
|
|
Instance details
Defined in
Distribution.Types.LibraryVisibility
|
Pretty
MungedPackageName
Source
#
|
Computes the package name for a library. If this is the public
library, it will just be the original package name; otherwise,
it will be a munged package name recording the original package
name as well as the name of the internal library.
A lot of tooling in the Haskell ecosystem assumes that if something
is installed to the package database with the package name
foo
,
then it actually is an entry for the (only public) library in package
foo
. With internal packages, this is not necessarily true:
a public library as well as arbitrarily many internal libraries may
come from the same package. To prevent tools from getting confused
in this case, the package name of these internal libraries is munged
so that they do not conflict the public library proper. A particular
case where this matters is ghc-pkg: if we don't munge the package
name, the inplace registration will OVERRIDE a different internal
library.
We munge into a reserved namespace, "z-", and encode both the
component name and the package name of an internal library using the
following format:
compat-pkg-name ::= "z-" package-name "-z-" library-name
where package-name and library-name have "-" ( "z" + ) "-"
segments encoded by adding an extra "z".
When we have the public library, the compat-pkg-name is just the
package-name, no surprises there!
>>> prettyShow $ MungedPackageName "servant" LMainLibName
"servant"
>>> prettyShow $ MungedPackageName "servant" (LSubLibName "lackey")
"z-servant-z-lackey"
|
Instance details
Defined in
Distribution.Types.MungedPackageName
|
Pretty
ForeignLibType
Source
#
|
|
Instance details
Defined in
Distribution.Types.ForeignLibType
|
Pretty
ForeignLibOption
Source
#
|
|
Instance details
Defined in
Distribution.Types.ForeignLibOption
|
Pretty
FlagName
Source
#
|
|
Instance details
Defined in
Distribution.Types.Flag
|
Pretty
ExecutableScope
Source
#
|
|
Instance details
Defined in
Distribution.Types.ExecutableScope
|
Pretty
ComponentName
Source
#
|
|
Instance details
Defined in
Distribution.Types.ComponentName
|
Pretty
ComponentId
Source
#
|
|
Instance details
Defined in
Distribution.Types.ComponentId
|
Pretty
BuildType
Source
#
|
|
Instance details
Defined in
Distribution.Types.BuildType
|
Pretty
AbiHash
Source
#
|
|
Instance details
Defined in
Distribution.Types.AbiHash
|
Pretty
Platform
Source
#
|
|
Instance details
Defined in
Distribution.System
|
Pretty
Arch
Source
#
|
|
Instance details
Defined in
Distribution.System
|
Pretty
OS
Source
#
|
|
Instance details
Defined in
Distribution.System
|
Pretty
LicenseRef
Source
#
|
|
Instance details
Defined in
Distribution.SPDX.LicenseReference
|
Pretty
LicenseId
Source
#
|
|
Instance details
Defined in
Distribution.SPDX.LicenseId
|
Pretty
LicenseExceptionId
Source
#
|
|
Instance details
Defined in
Distribution.SPDX.LicenseExceptionId
|
Pretty
SimpleLicenseExpression
Source
#
|
|
Instance details
Defined in
Distribution.SPDX.LicenseExpression
|
Pretty
LicenseExpression
Source
#
|
|
Instance details
Defined in
Distribution.SPDX.LicenseExpression
|
Pretty
License
Source
#
|
|
Instance details
Defined in
Distribution.SPDX.License
|
Pretty
ModuleName
Source
#
|
|
Instance details
Defined in
Distribution.ModuleName
|
Pretty
ModuleRenaming
Source
#
|
|
Instance details
Defined in
Distribution.Types.ModuleRenaming
|
Pretty
IncludeRenaming
Source
#
|
|
Instance details
Defined in
Distribution.Types.IncludeRenaming
|
Pretty
Mixin
Source
#
|
|
Instance details
Defined in
Distribution.Types.Mixin
|
Pretty
ModuleReexport
Source
#
|
|
Instance details
Defined in
Distribution.Types.ModuleReexport
|
Pretty
TestType
Source
#
|
|
Instance details
Defined in
Distribution.Types.TestType
|
Pretty
PackageIdentifier
Source
#
|
|
Instance details
Defined in
Distribution.Types.PackageId
|
Pretty
DefUnitId
Source
#
|
|
Instance details
Defined in
Distribution.Types.UnitId
|
Pretty
UnitId
Source
#
|
The textual format for
UnitId
coincides with the format
GHC accepts for
-package-id
.
|
Instance details
Defined in
Distribution.Types.UnitId
|
Pretty
Module
Source
#
|
|
Instance details
Defined in
Distribution.Types.Module
|
Pretty
OpenModule
Source
#
|
|
Instance details
Defined in
Distribution.Backpack
|
Pretty
OpenUnitId
Source
#
|
|
Instance details
Defined in
Distribution.Backpack
|
Pretty
ExposedModule
Source
#
|
|
Instance details
Defined in
Distribution.Types.ExposedModule
|
Pretty
MungedPackageId
Source
#
|
>>> prettyShow $ MungedPackageId (MungedPackageName "servant" LMainLibName) (mkVersion [1,2,3])
"servant-1.2.3"
>>> prettyShow $ MungedPackageId (MungedPackageName "servant" (LSubLibName "lackey")) (mkVersion [0,1,2])
"z-servant-z-lackey-0.1.2"
|
Instance details
Defined in
Distribution.Types.MungedPackageId
|
Pretty
LegacyExeDependency
Source
#
|
|
Instance details
Defined in
Distribution.Types.LegacyExeDependency
|
Pretty
ExeDependency
Source
#
|
|
Instance details
Defined in
Distribution.Types.ExeDependency
|
Pretty
Dependency
Source
#
|
|
Instance details
Defined in
Distribution.Types.Dependency
|
Pretty
BenchmarkType
Source
#
|
|
Instance details
Defined in
Distribution.Types.BenchmarkType
|
Pretty
AbiDependency
Source
#
|
|
Instance details
Defined in
Distribution.Types.AbiDependency
|
Pretty
License
Source
#
|
|
Instance details
Defined in
Distribution.License
|
Pretty
KnownExtension
Source
#
|
|
Instance details
Defined in
Language.Haskell.Extension
|
Pretty
Extension
Source
#
|
|
Instance details
Defined in
Language.Haskell.Extension
|
Pretty
Language
Source
#
|
|
Instance details
Defined in
Language.Haskell.Extension
|
Pretty
AbiTag
Source
#
|
|
Instance details
Defined in
Distribution.Compiler
|
Pretty
CompilerId
Source
#
|
|
Instance details
Defined in
Distribution.Compiler
|
Pretty
CompilerFlavor
Source
#
|
|
Instance details
Defined in
Distribution.Compiler
|
Pretty
LibVersionInfo
Source
#
|
|
Instance details
Defined in
Distribution.Types.ForeignLib
|
Pretty
FilePathNT
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
Pretty
TestedWith
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
Pretty
SpecLicense
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
Pretty
SpecVersion
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
Pretty
Token'
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
Pretty
Token
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
Pretty
TestShowDetails
Source
#
|
|
Instance details
Defined in
Distribution.Simple.Setup
|
Pretty
HaddockTarget
Source
#
|
|
Instance details
Defined in
Distribution.Simple.Setup
|
Pretty
a =>
Pretty
(
Identity
a)
Source
#
|
|
Instance details
Defined in
Distribution.Pretty
|
Pretty
a =>
Pretty
(
MQuoted
a)
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
(
Newtype
a b,
Sep
sep,
Pretty
b) =>
Pretty
(
Set'
sep b a)
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|
(
Newtype
a b,
Sep
sep,
Pretty
b) =>
Pretty
(
List
sep b a)
Source
#
|
|
Instance details
Defined in
Distribution.Parsec.Newtypes
|