|
|
|
|
|
|
| Synopsis |
|
| | | type State a = (Status, [a]) | | | complete :: State a -> Bool | | | data CSP a = CSP {} | | | controlCSP :: Control -> Relations -> (Paragraph -> Relations) -> CSP Paragraph | | | testCSP :: FilePath -> (Paragraph -> Relations) -> String -> (CSP Paragraph -> IO a) -> IO a | | | depF :: Paragraph -> Relations | | | packageVersionParagraph :: Paragraph -> (String, DebianVersion) | | | conflict :: CSP p -> p -> p -> Bool | | | conflict' :: (String, DebianVersion) -> Relation -> Bool | | | mkTree :: a -> [Tree a] -> Tree a | | | label :: Tree a -> a | | | initTree :: (a -> [a]) -> a -> Tree a | | | mapTree :: (a -> b) -> Tree a -> Tree b | | | foldTree :: (a -> [b] -> b) -> Tree a -> b | | | zipTreesWith :: (a -> b -> c) -> Tree a -> Tree b -> Tree c | | | prune :: (a -> Bool) -> Tree a -> Tree a | | | leaves :: Tree a -> [a] | | | inhTree :: (b -> a -> b) -> b -> Tree a -> Tree b | | | distrTree :: (a -> [b]) -> b -> Tree a -> Tree b | | | mkSearchTree :: forall a. CSP a -> Tree (State a) | | | earliestInconsistency :: CSP a -> State a -> Maybe ((String, DebianVersion), (String, DebianVersion)) | | | type ConflictSet = ([(String, DebianVersion)], [Relation]) | | | isConflict :: ConflictSet -> Bool | | | solutions :: Tree (State a, ConflictSet) -> [State a] | | | type Labeler a = CSP a -> Tree (State a) -> Tree (State a, ConflictSet) | | | search :: Labeler a -> CSP a -> [State a] | | | bt :: Labeler a | | | bj :: CSP p -> Tree (State p, ConflictSet) -> Tree (State p, ConflictSet) | | | unionCS :: [ConflictSet] -> ConflictSet | | | combine :: CSP p -> [(State p, ConflictSet)] -> [ConflictSet] -> ConflictSet |
|
|
|
| Basic CSP Types and Functions
|
|
|
| Constructors | | Instances | |
|
|
|
|
|
|
|
|
|
| Test CSP
|
|
|
| TODO addProvides -- see DQL.Exec
|
|
|
|
|
|
|
|
|
|
|
| JAS: deal with Provides (can a package provide more than one package?)
|
|
| Tree Helper Functions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| mkSearchTree
|
|
|
|
|
| earliestInconsistency does what it sounds like
the 'reverse as' is because the vars are order high to low, but we
want to find the lowest numbered (aka, eariest) inconsistency ??
|
|
| Conflict Set
|
|
|
| conflicting packages and relations that require non-existant packages
|
|
|
|
|
|
|
|
|
|
| Backtracking Labeler
|
|
|
|
| BackJumping Solver
|
|
|
bj - backjumping labeler
If the node already has a conflict set, then leave it alone.
Otherwise, the conflictset for the node is the combination of the
conflict sets of its direct children.
|
|
|
|
|
|
| Produced by Haddock version 2.4.2 |