Safe Haskell | None |
---|
A module for working with debian relationships http://www.debian.org/doc/debian-policy/ch-relationships.html
- newtype PkgName = PkgName {}
- newtype SrcPkgName = SrcPkgName {}
- newtype BinPkgName = BinPkgName {}
- prettyPkgName :: PkgName -> Doc
- prettySrcPkgName :: SrcPkgName -> Doc
- prettyBinPkgName :: BinPkgName -> Doc
- type AndRelation = [OrRelation]
- type OrRelation = [Relation]
- type Relations = AndRelation
- data Relation = Rel BinPkgName (Maybe VersionReq) (Maybe ArchitectureReq)
- prettyRelation :: Relation -> Doc
- data ArchitectureReq
- = ArchOnly [String]
- | ArchExcept [String]
- data VersionReq
- checkVersionReq :: Maybe VersionReq -> Maybe DebianVersion -> Bool
- type RelParser a = CharParser () a
- class ParseRelations a where
- parseRelations :: a -> Either ParseError Relations
Types
newtype SrcPkgName Source
newtype BinPkgName Source
prettyPkgName :: PkgName -> DocSource
type AndRelation = [OrRelation]Source
type OrRelation = [Relation]Source
type Relations = AndRelationSource
prettyRelation :: Relation -> DocSource
data ArchitectureReq Source
data VersionReq Source
Eq VersionReq | |
Ord VersionReq | The sort order is based on version number first, then on the kind of relation, sorting in the order <= , ==,= , >> |
Show VersionReq |
Helper Functions
checkVersionReq :: Maybe VersionReq -> Maybe DebianVersion -> BoolSource
Check if a version number satisfies a version requirement.
Relation Parser
type RelParser a = CharParser () aSource
class ParseRelations a whereSource
parseRelations :: a -> Either ParseError RelationsSource
parseRelations
parse a debian relation (i.e. the value of a
Depends field). Return a parsec error or a value of type
Relations