Safe Haskell | None |
---|---|
Language | Haskell2010 |
Distribution.Solver.Modular.Package
Synopsis
- data I = I Ver Loc
- data Loc
- type PackageId = PackageIdentifier
- data PackageIdentifier = PackageIdentifier {}
- data PackageName
- mkPackageName :: String -> PackageName
- unPackageName :: PackageName -> String
- data PkgconfigName
- mkPkgconfigName :: String -> PkgconfigName
- unPkgconfigName :: PkgconfigName -> String
- data PI qpn = PI qpn I
- type PN = PackageName
- type QPV = Qualified PV
- instI :: I -> Bool
- makeIndependent :: PN -> QPN
- primaryPP :: PackagePath -> Bool
- setupPP :: PackagePath -> Bool
- showI :: I -> String
- showPI :: PI QPN -> String
- unPN :: PN -> String
Documentation
Location. Info about whether a package is installed or not, and where
exactly it is located. For installed packages, uniquely identifies the
package instance via its PId
.
TODO: More information is needed about the repo.
type PackageId = PackageIdentifier #
Type alias so we can use the shorter name PackageId.
data PackageIdentifier #
The name and version of a package.
Constructors
PackageIdentifier | |
Fields
|
Instances
data PackageName #
A package name.
Use mkPackageName
and unPackageName
to convert from/to a
String
.
This type is opaque since Cabal-2.0
Since: Cabal-syntax-2.0.0.2
Instances
Parsec PackageName | |||||
Defined in Distribution.Types.PackageName Methods parsec :: CabalParsing m => m PackageName # | |||||
Pretty PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
Structured PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
Data PackageName | |||||
Defined in Distribution.Types.PackageName Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PackageName -> c PackageName # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PackageName # toConstr :: PackageName -> Constr # dataTypeOf :: PackageName -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PackageName) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PackageName) # gmapT :: (forall b. Data b => b -> b) -> PackageName -> PackageName # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PackageName -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PackageName -> r # gmapQ :: (forall d. Data d => d -> u) -> PackageName -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> PackageName -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> PackageName -> m PackageName # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageName -> m PackageName # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageName -> m PackageName # | |||||
IsString PackageName | Since: Cabal-syntax-2.0.0.2 | ||||
Defined in Distribution.Types.PackageName Methods fromString :: String -> PackageName # | |||||
Generic PackageName | |||||
Defined in Distribution.Types.PackageName Associated Types
| |||||
Read PackageName | |||||
Defined in Distribution.Types.PackageName Methods readsPrec :: Int -> ReadS PackageName # readList :: ReadS [PackageName] # readPrec :: ReadPrec PackageName # readListPrec :: ReadPrec [PackageName] # | |||||
Show PackageName | |||||
Defined in Distribution.Types.PackageName Methods showsPrec :: Int -> PackageName -> ShowS # show :: PackageName -> String # showList :: [PackageName] -> ShowS # | |||||
Binary PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
NFData PackageName | |||||
Defined in Distribution.Types.PackageName Methods rnf :: PackageName -> () # | |||||
Eq PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
Ord PackageName | |||||
Defined in Distribution.Types.PackageName Methods compare :: PackageName -> PackageName -> Ordering # (<) :: PackageName -> PackageName -> Bool # (<=) :: PackageName -> PackageName -> Bool # (>) :: PackageName -> PackageName -> Bool # (>=) :: PackageName -> PackageName -> Bool # max :: PackageName -> PackageName -> PackageName # min :: PackageName -> PackageName -> PackageName # | |||||
type Rep PackageName | |||||
Defined in Distribution.Types.PackageName type Rep PackageName = D1 ('MetaData "PackageName" "Distribution.Types.PackageName" "Cabal-syntax-3.10.3.0-dc3a" 'True) (C1 ('MetaCons "PackageName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShortText))) |
mkPackageName :: String -> PackageName #
Construct a PackageName
from a String
mkPackageName
is the inverse to unPackageName
Note: No validations are performed to ensure that the resulting
PackageName
is valid
Since: Cabal-syntax-2.0.0.2
unPackageName :: PackageName -> String #
Convert PackageName
to String
data PkgconfigName #
A pkg-config library name
This is parsed as any valid argument to the pkg-config utility.
Since: Cabal-syntax-2.0.0.2
Instances
Parsec PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods parsec :: CabalParsing m => m PkgconfigName # | |||||
Pretty PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods pretty :: PkgconfigName -> Doc # prettyVersioned :: CabalSpecVersion -> PkgconfigName -> Doc # | |||||
Structured PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName | |||||
Data PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PkgconfigName -> c PkgconfigName # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PkgconfigName # toConstr :: PkgconfigName -> Constr # dataTypeOf :: PkgconfigName -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PkgconfigName) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PkgconfigName) # gmapT :: (forall b. Data b => b -> b) -> PkgconfigName -> PkgconfigName # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PkgconfigName -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PkgconfigName -> r # gmapQ :: (forall d. Data d => d -> u) -> PkgconfigName -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> PkgconfigName -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> PkgconfigName -> m PkgconfigName # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PkgconfigName -> m PkgconfigName # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PkgconfigName -> m PkgconfigName # | |||||
IsString PkgconfigName | Since: Cabal-syntax-2.0.0.2 | ||||
Defined in Distribution.Types.PkgconfigName Methods fromString :: String -> PkgconfigName # | |||||
Generic PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Associated Types
| |||||
Read PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods readsPrec :: Int -> ReadS PkgconfigName # readList :: ReadS [PkgconfigName] # | |||||
Show PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods showsPrec :: Int -> PkgconfigName -> ShowS # show :: PkgconfigName -> String # showList :: [PkgconfigName] -> ShowS # | |||||
Binary PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName | |||||
NFData PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods rnf :: PkgconfigName -> () # | |||||
Eq PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods (==) :: PkgconfigName -> PkgconfigName -> Bool # (/=) :: PkgconfigName -> PkgconfigName -> Bool # | |||||
Ord PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName Methods compare :: PkgconfigName -> PkgconfigName -> Ordering # (<) :: PkgconfigName -> PkgconfigName -> Bool # (<=) :: PkgconfigName -> PkgconfigName -> Bool # (>) :: PkgconfigName -> PkgconfigName -> Bool # (>=) :: PkgconfigName -> PkgconfigName -> Bool # max :: PkgconfigName -> PkgconfigName -> PkgconfigName # min :: PkgconfigName -> PkgconfigName -> PkgconfigName # | |||||
type Rep PkgconfigName | |||||
Defined in Distribution.Types.PkgconfigName type Rep PkgconfigName = D1 ('MetaData "PkgconfigName" "Distribution.Types.PkgconfigName" "Cabal-syntax-3.10.3.0-dc3a" 'True) (C1 ('MetaCons "PkgconfigName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShortText))) |
mkPkgconfigName :: String -> PkgconfigName #
Construct a PkgconfigName
from a String
mkPkgconfigName
is the inverse to unPkgconfigName
Note: No validations are performed to ensure that the resulting
PkgconfigName
is valid
Since: Cabal-syntax-2.0.0.2
unPkgconfigName :: PkgconfigName -> String #
Convert PkgconfigName
to String
Since: Cabal-syntax-2.0.0.2
Package instance. A package name and an instance.
type PN = PackageName Source #
A package name.
makeIndependent :: PN -> QPN Source #
Qualify a target package with its own name so that its dependencies are not required to be consistent with other targets.
primaryPP :: PackagePath -> Bool Source #
Is the package in the primary group of packages. This is used to
determine (1) if we should try to establish stanza preferences
for this goal, and (2) whether or not a user specified --constraint
should apply to this dependency (grep primaryPP
to see the
use sites). In particular this does not include packages pulled in
as setup deps.