cabal-install-3.8.1.0: The command-line interface for Cabal and Hackage.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Distribution.Client.Types.PackageSpecifier

Synopsis

Documentation

data PackageSpecifier pkg Source #

A fully or partially resolved reference to a package.

Constructors

NamedPackage PackageName [PackageProperty]

A partially specified reference to a package (either source or installed). It is specified by package name and optionally some required properties. Use a dependency resolver to pick a specific package satisfying these properties.

SpecificSourcePackage pkg

A fully specified source package.

Instances

Instances details
Functor PackageSpecifier Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

Methods

fmap :: (a -> b) -> PackageSpecifier a -> PackageSpecifier b

(<$) :: a -> PackageSpecifier b -> PackageSpecifier a

Structured pkg => Structured (PackageSpecifier pkg) Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

Methods

structure :: Proxy (PackageSpecifier pkg) -> Structure

structureHash' :: Tagged (PackageSpecifier pkg) MD5

Generic (PackageSpecifier pkg) Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

Associated Types

type Rep (PackageSpecifier pkg) :: Type -> Type

Methods

from :: PackageSpecifier pkg -> Rep (PackageSpecifier pkg) x

to :: Rep (PackageSpecifier pkg) x -> PackageSpecifier pkg

Show pkg => Show (PackageSpecifier pkg) Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

Methods

showsPrec :: Int -> PackageSpecifier pkg -> ShowS

show :: PackageSpecifier pkg -> String

showList :: [PackageSpecifier pkg] -> ShowS

Binary pkg => Binary (PackageSpecifier pkg) Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

Methods

put :: PackageSpecifier pkg -> Put

get :: Get (PackageSpecifier pkg)

putList :: [PackageSpecifier pkg] -> Put

Eq pkg => Eq (PackageSpecifier pkg) Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

Methods

(==) :: PackageSpecifier pkg -> PackageSpecifier pkg -> Bool

(/=) :: PackageSpecifier pkg -> PackageSpecifier pkg -> Bool

type Rep (PackageSpecifier pkg) Source # 
Instance details

Defined in Distribution.Client.Types.PackageSpecifier

type Rep (PackageSpecifier pkg) = D1 ('MetaData "PackageSpecifier" "Distribution.Client.Types.PackageSpecifier" "cabal-install-3.8.1.0-CiByXgAz4HmCCkgLTHZiBJ" 'False) (C1 ('MetaCons "NamedPackage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PackageName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [PackageProperty])) :+: C1 ('MetaCons "SpecificSourcePackage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 pkg)))

pkgSpecifierTarget :: Package pkg => PackageSpecifier pkg -> PackageName Source #

pkgSpecifierConstraints :: Package pkg => PackageSpecifier pkg -> [LabeledPackageConstraint] Source #