|
|
|
|
|
|
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 |