Distribution.Solver.Modular.Assignment

cabal-install-solver-3.12.1.0: The command-line interface for Cabal and Hackage.

Safe Haskell | None
Language | Haskell2010

Distribution.Solver.Modular.Assignment

Synopsis

- data Assignment = A PAssignment FAssignment SAssignment
- type PAssignment = Map QPN I
- type FAssignment = Map QFN Bool
- type SAssignment = Map QSN Bool
- toCPs :: Assignment -> RevDepMap -> [CP QPN]

# Documentation

data Assignment #

A (partial) assignment of variables.

Constructors

A PAssignment FAssignment SAssignment |

#### Instances

Instances details

Show Assignment # |
Instance details Defined in Distribution.Solver.Modular.Assignment Methods showsPrec :: Int -> Assignment -> ShowS # show :: Assignment -> String # showList :: [Assignment] -> ShowS #
Eq Assignment # |
Instance details Defined in Distribution.Solver.Modular.Assignment Methods (==) :: Assignment -> Assignment -> Bool # (/=) :: Assignment -> Assignment -> Bool #

type PAssignment = Map QPN I #

A (partial) package assignment. Qualified package names are associated with instances.

type FAssignment = Map QFN Bool #

type SAssignment = Map QSN Bool #

toCPs :: Assignment -> RevDepMap -> [CP QPN] #

Delivers an ordered list of fully configured packages.

TODO: This function is (sort of) ok. However, there's an open bug w.r.t. unqualification. There might be several different instances of one package version chosen by the solver, which will lead to clashes.