Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Distribution.Solver.Modular.Index
Synopsis
- type Index = Map PN (Map I PInfo)
- data PInfo = PInfo (FlaggedDeps PN) (Map ExposedComponent ComponentInfo) FlagInfo (Maybe FailReason)
- data ComponentInfo = ComponentInfo {}
- newtype IsVisible = IsVisible Bool
- newtype IsBuildable = IsBuildable Bool
- defaultQualifyOptions :: Index -> QualifyOptions
- mkIndex :: [(PN, I, PInfo)] -> Index
Documentation
type Index = Map PN (Map I PInfo) #
An index contains information about package instances. This is a nested dictionary. Package names are mapped to instances, which in turn is mapped to info.
Info associated with a package instance. Currently, dependencies, component names, flags and failure reasons. The component map records whether any components are unbuildable in the current environment (compiler, os, arch, and global flag constraints). Packages that have a failure reason recorded for them are disabled globally, for reasons external to the solver. We currently use this for shadowing which essentially is a GHC limitation, and for installed packages that are broken.
Constructors
PInfo (FlaggedDeps PN) (Map ExposedComponent ComponentInfo) FlagInfo (Maybe FailReason) |
data ComponentInfo #
Info associated with each library and executable in a package instance.
Constructors
ComponentInfo | |
Fields |
Instances
Show ComponentInfo # | |
Defined in Distribution.Solver.Modular.Index Methods showsPrec :: Int -> ComponentInfo -> ShowS # show :: ComponentInfo -> String # showList :: [ComponentInfo] -> ShowS # |
newtype IsBuildable #
Whether a component is made unbuildable by a "buildable: False" field.
Constructors
IsBuildable Bool |
Instances
Show IsBuildable # | |
Defined in Distribution.Solver.Modular.Index Methods showsPrec :: Int -> IsBuildable -> ShowS # show :: IsBuildable -> String # showList :: [IsBuildable] -> ShowS # | |
Eq IsBuildable # | |
Defined in Distribution.Solver.Modular.Index |