| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | Haskell2010 | 
Distribution.Backpack.LinkedComponent
Synopsis
- data LinkedComponent = LinkedComponent {
- lc_ann_id :: AnnotatedId ComponentId
 - lc_component :: Component
 - lc_exe_deps :: [AnnotatedId OpenUnitId]
 - lc_public :: Bool
 - lc_includes :: [ComponentInclude OpenUnitId ModuleRenaming]
 - lc_sig_includes :: [ComponentInclude OpenUnitId ModuleRenaming]
 - lc_shape :: ModuleShape
 
 - lc_insts :: LinkedComponent -> [(ModuleName, OpenModule)]
 - lc_uid :: LinkedComponent -> OpenUnitId
 - lc_cid :: LinkedComponent -> ComponentId
 - lc_pkgid :: LinkedComponent -> PackageId
 - toLinkedComponent :: Verbosity -> Bool -> FullDb -> PackageId -> LinkedComponentMap -> ConfiguredComponent -> LogProgress LinkedComponent
 - toLinkedComponents :: Verbosity -> Bool -> FullDb -> PackageId -> LinkedComponentMap -> [ConfiguredComponent] -> LogProgress [LinkedComponent]
 - dispLinkedComponent :: LinkedComponent -> Doc
 - type LinkedComponentMap = Map ComponentId (OpenUnitId, ModuleShape)
 - extendLinkedComponentMap :: LinkedComponent -> LinkedComponentMap -> LinkedComponentMap
 
Documentation
data LinkedComponent Source #
A linked component is a component that has been mix-in linked, at
 which point we have determined how all the dependencies of the
 component are explicitly instantiated (in the form of an OpenUnitId).
 ConfiguredComponent is mix-in linked into LinkedComponent, which
 is then instantiated into ReadyComponent.
Constructors
| LinkedComponent | |
Fields 
  | |
Instances
| Package LinkedComponent Source # | |
Defined in Distribution.Backpack.LinkedComponent Methods packageId :: LinkedComponent -> PackageIdentifier  | |
lc_insts :: LinkedComponent -> [(ModuleName, OpenModule)] Source #
lc_uid :: LinkedComponent -> OpenUnitId Source #
The OpenUnitId of this component in the "default" instantiation.
 See also lc_insts.  LinkedComponents cannot be instantiated
 (e.g., there is no ModSubst instance for them).
lc_cid :: LinkedComponent -> ComponentId Source #
Uniquely identifies a LinkedComponent.  Corresponds to
 cc_cid.
lc_pkgid :: LinkedComponent -> PackageId Source #
Corresponds to cc_pkgid.
Arguments
| :: Verbosity | |
| -> Bool | Whether there are any "promised" package dependencies which we won't find already installed.  | 
| -> FullDb | |
| -> PackageId | |
| -> LinkedComponentMap | |
| -> ConfiguredComponent | |
| -> LogProgress LinkedComponent | 
Arguments
| :: Verbosity | |
| -> Bool | Whether there are any "promised" package dependencies which we won't find already installed.  | 
| -> FullDb | |
| -> PackageId | |
| -> LinkedComponentMap | |
| -> [ConfiguredComponent] | |
| -> LogProgress [LinkedComponent] | 
type LinkedComponentMap = Map ComponentId (OpenUnitId, ModuleShape) Source #