debian-4.0.4: Modules for working with the Debian package system
Safe HaskellSafe-Inferred
LanguageHaskell2010

Debian.Relation

Description

A module for working with debian relationships http://www.debian.org/doc/debian-policy/ch-relationships.html

Synopsis

Types

class Pretty (PP a) => PkgName a where Source #

Instances

Instances details
PkgName BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

PkgName SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

newtype SrcPkgName Source #

Constructors

SrcPkgName 

Fields

Instances

Instances details
Data SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcPkgName -> c SrcPkgName Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SrcPkgName Source #

toConstr :: SrcPkgName -> Constr Source #

dataTypeOf :: SrcPkgName -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SrcPkgName) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SrcPkgName) Source #

gmapT :: (forall b. Data b => b -> b) -> SrcPkgName -> SrcPkgName Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcPkgName -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcPkgName -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> SrcPkgName -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcPkgName -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcPkgName -> m SrcPkgName Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcPkgName -> m SrcPkgName Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcPkgName -> m SrcPkgName Source #

Read SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Show SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

PkgName SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Eq SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Ord SrcPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Pretty (PP SrcPkgName) Source # 
Instance details

Defined in Debian.Relation.Common

newtype BinPkgName Source #

Constructors

BinPkgName 

Fields

Instances

Instances details
Data BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BinPkgName -> c BinPkgName Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BinPkgName Source #

toConstr :: BinPkgName -> Constr Source #

dataTypeOf :: BinPkgName -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BinPkgName) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BinPkgName) Source #

gmapT :: (forall b. Data b => b -> b) -> BinPkgName -> BinPkgName Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BinPkgName -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BinPkgName -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> BinPkgName -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> BinPkgName -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> BinPkgName -> m BinPkgName Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BinPkgName -> m BinPkgName Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BinPkgName -> m BinPkgName Source #

Read BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Show BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

PkgName BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Eq BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Ord BinPkgName Source # 
Instance details

Defined in Debian.Relation.Common

Pretty (PP BinPkgName) Source # 
Instance details

Defined in Debian.Relation.Common

data Relation Source #

Instances

Instances details
Read Relation Source # 
Instance details

Defined in Debian.Relation.Common

Show Relation Source # 
Instance details

Defined in Debian.Relation.Common

Eq Relation Source # 
Instance details

Defined in Debian.Relation.Common

Ord Relation Source # 
Instance details

Defined in Debian.Relation.Common

Pretty (PP OrRelation) Source # 
Instance details

Defined in Debian.Relation.Common

Pretty (PP Relation) Source # 
Instance details

Defined in Debian.Relation.Common

Pretty (PP Relations) Source #

Wrap PP around type synonyms that might overlap with the `Pretty [a]` instance.

Instance details

Defined in Debian.Relation.Common

data ArchitectureReq Source #

Constructors

ArchOnly (Set Arch) 
ArchExcept (Set Arch) 

data Arch Source #

Constructors

Source 
All 
Binary ArchOS ArchCPU 

Instances

Instances details
Data Arch Source # 
Instance details

Defined in Debian.Arch

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Arch -> c Arch Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Arch Source #

toConstr :: Arch -> Constr Source #

dataTypeOf :: Arch -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Arch) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Arch) Source #

gmapT :: (forall b. Data b => b -> b) -> Arch -> Arch Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Arch -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Arch -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Arch -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Arch -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Arch -> m Arch Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Arch -> m Arch Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Arch -> m Arch Source #

Read Arch Source # 
Instance details

Defined in Debian.Arch

Show Arch Source # 
Instance details

Defined in Debian.Arch

Eq Arch Source # 
Instance details

Defined in Debian.Arch

Methods

(==) :: Arch -> Arch -> Bool Source #

(/=) :: Arch -> Arch -> Bool Source #

Ord Arch Source # 
Instance details

Defined in Debian.Arch

data ArchOS Source #

Constructors

ArchOS String 
ArchOSAny 

Instances

Instances details
Data ArchOS Source # 
Instance details

Defined in Debian.Arch

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ArchOS -> c ArchOS Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ArchOS Source #

toConstr :: ArchOS -> Constr Source #

dataTypeOf :: ArchOS -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ArchOS) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ArchOS) Source #

gmapT :: (forall b. Data b => b -> b) -> ArchOS -> ArchOS Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ArchOS -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ArchOS -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> ArchOS -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ArchOS -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ArchOS -> m ArchOS Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ArchOS -> m ArchOS Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ArchOS -> m ArchOS Source #

Read ArchOS Source # 
Instance details

Defined in Debian.Arch

Show ArchOS Source # 
Instance details

Defined in Debian.Arch

Eq ArchOS Source # 
Instance details

Defined in Debian.Arch

Ord ArchOS Source # 
Instance details

Defined in Debian.Arch

data ArchCPU Source #

Constructors

ArchCPU String 
ArchCPUAny 

Instances

Instances details
Data ArchCPU Source # 
Instance details

Defined in Debian.Arch

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ArchCPU -> c ArchCPU Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ArchCPU Source #

toConstr :: ArchCPU -> Constr Source #

dataTypeOf :: ArchCPU -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ArchCPU) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ArchCPU) Source #

gmapT :: (forall b. Data b => b -> b) -> ArchCPU -> ArchCPU Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ArchCPU -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ArchCPU -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> ArchCPU -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ArchCPU -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ArchCPU -> m ArchCPU Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ArchCPU -> m ArchCPU Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ArchCPU -> m ArchCPU Source #

Read ArchCPU Source # 
Instance details

Defined in Debian.Arch

Show ArchCPU Source # 
Instance details

Defined in Debian.Arch

Eq ArchCPU Source # 
Instance details

Defined in Debian.Arch

Ord ArchCPU Source # 
Instance details

Defined in Debian.Arch

data VersionReq Source #

Helper Functions

checkVersionReq :: Maybe VersionReq -> Maybe DebianVersion -> Bool Source #

Check if a version number satisfies a version requirement.

Relation Parser

class ParseRelations a where Source #

Methods

parseRelations :: a -> Either ParseError Relations Source #

parseRelations parse a debian relation (i.e. the value of a Depends field). Return a parsec error or a value of type Relations