bdcs-0.2.0: Tools for managing a content store of software packages

Copyright(c) 2016-2017 Red Hat Inc.
LicenseLGPL
Maintainerhttps://github.com/weldr
Stabilityalpha
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

BDCS.Depsolve

Description

Manage Builds records in the database.

Documentation

data Formula a Source #

Constructors

Atom a 
Not a 
Or [Formula a] 
And [Formula a] 

Instances

Eq a => Eq (Formula a) Source # 

Methods

(==) :: Formula a -> Formula a -> Bool #

(/=) :: Formula a -> Formula a -> Bool #

Show a => Show (Formula a) Source # 

Methods

showsPrec :: Int -> Formula a -> ShowS #

show :: Formula a -> String #

showList :: [Formula a] -> ShowS #

data CNFAtom a Source #

Constructors

CNFAtom (CNFLiteral a) 
CNFNot (CNFLiteral a) 

Instances

Eq a => Eq (CNFAtom a) Source # 

Methods

(==) :: CNFAtom a -> CNFAtom a -> Bool #

(/=) :: CNFAtom a -> CNFAtom a -> Bool #

Ord a => Ord (CNFAtom a) Source # 

Methods

compare :: CNFAtom a -> CNFAtom a -> Ordering #

(<) :: CNFAtom a -> CNFAtom a -> Bool #

(<=) :: CNFAtom a -> CNFAtom a -> Bool #

(>) :: CNFAtom a -> CNFAtom a -> Bool #

(>=) :: CNFAtom a -> CNFAtom a -> Bool #

max :: CNFAtom a -> CNFAtom a -> CNFAtom a #

min :: CNFAtom a -> CNFAtom a -> CNFAtom a #

Show a => Show (CNFAtom a) Source # 

Methods

showsPrec :: Int -> CNFAtom a -> ShowS #

show :: CNFAtom a -> String #

showList :: [CNFAtom a] -> ShowS #

type CNFFormula a = [[CNFAtom a]] Source #

type DepAssignment a = (a, Bool) Source #

solveCNF :: (MonadError String m, Ord a) => CNFFormula a -> m [DepAssignment a] Source #