Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- type InstalledPackageId = ComponentId
- data ConfiguredId = ConfiguredId {}
- annotatedIdToConfiguredId :: AnnotatedId ComponentId -> ConfiguredId
- class HasConfiguredId a where
- configuredId :: a -> ConfiguredId
Documentation
type InstalledPackageId = ComponentId Source #
Within Cabal the library we no longer have a InstalledPackageId
type.
That's because it deals with the compilers' notion of a registered library,
and those really are libraries not packages. Those are now named units.
The package management layer does however deal with installed packages, as whole packages not just as libraries. So we do still need a type for installed package ids. At the moment however we track installed packages via their primary library, which is a unit id. In future this may change slightly and we may distinguish these two types and have an explicit conversion when we register units with the compiler.
data ConfiguredId Source #
A ConfiguredId is a package ID for a configured package.
Once we configure a source package we know its UnitId. It is still however useful in lots of places to also know the source ID for the package. We therefore bundle the two.
An already installed package of course is also "configured" (all its configuration parameters and dependencies have been specified).
Instances
class HasConfiguredId a where Source #
configuredId :: a -> ConfiguredId Source #
Instances
HasConfiguredId InstalledPackageInfo Source # | |
HasConfiguredId ElaboratedConfiguredPackage Source # | |
HasConfiguredId (ConfiguredPackage loc) Source # |
|
Defined in Distribution.Client.Types.ConfiguredPackage configuredId :: ConfiguredPackage loc -> ConfiguredId Source # | |
(HasConfiguredId ipkg, HasConfiguredId srcpkg) => HasConfiguredId (GenericPlanPackage ipkg srcpkg) Source # | |
Defined in Distribution.Client.InstallPlan configuredId :: GenericPlanPackage ipkg srcpkg -> ConfiguredId Source # |