Distribution.Types.PackageDescription.Lens

Cabal-3.4.1.0: A framework for packaging Haskell software

Safe Haskell | Safe-Inferred
Language | Haskell2010

Distribution.Types.PackageDescription.Lens

Synopsis

- data PackageDescription
- allLibraries :: Traversal' PackageDescription Library
- author :: Lens' PackageDescription ShortText
- benchmarks :: Lens' PackageDescription [Benchmark]
- bugReports :: Lens' PackageDescription ShortText
- buildTypeRaw :: Lens' PackageDescription (Maybe BuildType)
- category :: Lens' PackageDescription ShortText
- componentBuildInfo :: ComponentName -> Traversal' PackageDescription BuildInfo
- componentModules :: Monoid r => ComponentName -> Getting r PackageDescription [ModuleName]
- copyright :: Lens' PackageDescription ShortText
- customFieldsPD :: Lens' PackageDescription [(String, String)]
- dataDir :: Lens' PackageDescription FilePath
- dataFiles :: Lens' PackageDescription [FilePath]
- description :: Lens' PackageDescription ShortText
- executables :: Lens' PackageDescription [Executable]
- extraDocFiles :: Lens' PackageDescription [String]
- extraSrcFiles :: Lens' PackageDescription [String]
- extraTmpFiles :: Lens' PackageDescription [String]
- foreignLibs :: Lens' PackageDescription [ForeignLib]
- homepage :: Lens' PackageDescription ShortText
- library :: Lens' PackageDescription (Maybe Library)
- licenseFiles :: Lens' PackageDescription [FilePath]
- licenseRaw :: Lens' PackageDescription (Either License License)
- maintainer :: Lens' PackageDescription ShortText
- package :: Lens' PackageDescription PackageIdentifier
- pkgUrl :: Lens' PackageDescription ShortText
- setupBuildInfo :: Lens' PackageDescription (Maybe SetupBuildInfo)
- sourceRepos :: Lens' PackageDescription [SourceRepo]
- specVersion :: Lens' PackageDescription CabalSpecVersion
- stability :: Lens' PackageDescription ShortText
- subLibraries :: Lens' PackageDescription [Library]
- synopsis :: Lens' PackageDescription ShortText
- testSuites :: Lens' PackageDescription [TestSuite]
- testedWith :: Lens' PackageDescription [(CompilerFlavor, VersionRange)]

# Documentation

data PackageDescription Source #

This data type is the internal representation of the file `pkg.cabal`. It contains two kinds of information about the package: information which is needed for all packages, such as the package name and version, and information which is needed for the simple build system only, such as the compiler options and library name.

#### Instances

Instances details

Package PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods packageId :: PackageDescription -> PackageIdentifier Source #
HasBuildInfos PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods traverseBuildInfos :: Traversal' PackageDescription BuildInfo Source #
Structured PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods structure :: Proxy PackageDescription -> Structure Source # structureHash' :: Tagged PackageDescription MD5
Data PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PackageDescription -> c PackageDescription Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PackageDescription Source # toConstr :: PackageDescription -> Constr Source # dataTypeOf :: PackageDescription -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PackageDescription) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PackageDescription) Source # gmapT :: (forall b. Data b => b -> b) -> PackageDescription -> PackageDescription Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PackageDescription -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PackageDescription -> r Source # gmapQ :: (forall d. Data d => d -> u) -> PackageDescription -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> PackageDescription -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> PackageDescription -> m PackageDescription Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageDescription -> m PackageDescription Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageDescription -> m PackageDescription Source #
Generic PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Associated Types type Rep PackageDescription :: Type -> Type Source # Methods from :: PackageDescription -> Rep PackageDescription x Source # to :: Rep PackageDescription x -> PackageDescription Source #
Read PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods readsPrec :: Int -> ReadS PackageDescription Source # readList :: ReadS [PackageDescription] Source # readPrec :: ReadPrec PackageDescription Source # readListPrec :: ReadPrec [PackageDescription] Source #
Show PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods showsPrec :: Int -> PackageDescription -> ShowS Source # show :: PackageDescription -> String Source # showList :: [PackageDescription] -> ShowS Source #
Binary PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods put :: PackageDescription -> Put Source # get :: Get PackageDescription Source # putList :: [PackageDescription] -> Put Source #
NFData PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods rnf :: PackageDescription -> () Source #
Eq PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription Methods (==) :: PackageDescription -> PackageDescription -> Bool # (/=) :: PackageDescription -> PackageDescription -> Bool #
type Rep PackageDescription Source # |
Instance details Defined in Distribution.Types.PackageDescription type Rep PackageDescription = D1 ('MetaData "PackageDescription" "Distribution.Types.PackageDescription" "Cabal-3.4.1.0" 'False) (C1 ('MetaCons "PackageDescription" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "specVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CabalSpecVersion) :*: (S1 ('MetaSel ('Just "package") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PackageIdentifier) :*: S1 ('MetaSel ('Just "licenseRaw") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Either License License)))) :*: ((S1 ('MetaSel ('Just "licenseFiles") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FilePath]) :*: S1 ('MetaSel ('Just "copyright") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText)) :*: (S1 ('MetaSel ('Just "maintainer") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText) :*: S1 ('MetaSel ('Just "author") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText)))) :*: (((S1 ('MetaSel ('Just "stability") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText) :*: S1 ('MetaSel ('Just "testedWith") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(CompilerFlavor, VersionRange)])) :*: (S1 ('MetaSel ('Just "homepage") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText) :*: S1 ('MetaSel ('Just "pkgUrl") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText))) :*: ((S1 ('MetaSel ('Just "bugReports") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText) :*: S1 ('MetaSel ('Just "sourceRepos") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [SourceRepo])) :*: (S1 ('MetaSel ('Just "synopsis") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText) :*: S1 ('MetaSel ('Just "description") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText))))) :*: (((S1 ('MetaSel ('Just "category") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShortText) :*: (S1 ('MetaSel ('Just "customFieldsPD") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(String, String)]) :*: S1 ('MetaSel ('Just "buildTypeRaw") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe BuildType)))) :*: ((S1 ('MetaSel ('Just "setupBuildInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe SetupBuildInfo)) :*: S1 ('MetaSel ('Just "library") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Library))) :*: (S1 ('MetaSel ('Just "subLibraries") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Library]) :*: S1 ('MetaSel ('Just "executables") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Executable])))) :*: (((S1 ('MetaSel ('Just "foreignLibs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ForeignLib]) :*: S1 ('MetaSel ('Just "testSuites") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [TestSuite])) :*: (S1 ('MetaSel ('Just "benchmarks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Benchmark]) :*: S1 ('MetaSel ('Just "dataFiles") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FilePath]))) :*: ((S1 ('MetaSel ('Just "dataDir") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath) :*: S1 ('MetaSel ('Just "extraSrcFiles") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FilePath])) :*: (S1 ('MetaSel ('Just "extraTmpFiles") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FilePath]) :*: S1 ('MetaSel ('Just "extraDocFiles") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FilePath])))))))

allLibraries :: Traversal' PackageDescription Library Source #

Since: Cabal-3.0.0.0

author :: Lens' PackageDescription ShortText Source #

benchmarks :: Lens' PackageDescription [Benchmark] Source #

bugReports :: Lens' PackageDescription ShortText Source #

buildTypeRaw :: Lens' PackageDescription (Maybe BuildType) Source #

category :: Lens' PackageDescription ShortText Source #

componentBuildInfo :: ComponentName -> Traversal' PackageDescription BuildInfo Source #

Since: Cabal-2.4

componentModules :: Monoid r => ComponentName -> Getting r PackageDescription [ModuleName] Source #

Since: Cabal-2.4

copyright :: Lens' PackageDescription ShortText Source #

customFieldsPD :: Lens' PackageDescription [(String, String)] Source #

dataDir :: Lens' PackageDescription FilePath Source #

dataFiles :: Lens' PackageDescription [FilePath] Source #

description :: Lens' PackageDescription ShortText Source #

executables :: Lens' PackageDescription [Executable] Source #

extraDocFiles :: Lens' PackageDescription [String] Source #

extraSrcFiles :: Lens' PackageDescription [String] Source #

extraTmpFiles :: Lens' PackageDescription [String] Source #

foreignLibs :: Lens' PackageDescription [ForeignLib] Source #

homepage :: Lens' PackageDescription ShortText Source #

library :: Lens' PackageDescription (Maybe Library) Source #

licenseFiles :: Lens' PackageDescription [FilePath] Source #

licenseRaw :: Lens' PackageDescription (Either License License) Source #

maintainer :: Lens' PackageDescription ShortText Source #

package :: Lens' PackageDescription PackageIdentifier Source #

pkgUrl :: Lens' PackageDescription ShortText Source #

setupBuildInfo :: Lens' PackageDescription (Maybe SetupBuildInfo) Source #

sourceRepos :: Lens' PackageDescription [SourceRepo] Source #

specVersion :: Lens' PackageDescription CabalSpecVersion Source #

stability :: Lens' PackageDescription ShortText Source #

subLibraries :: Lens' PackageDescription [Library] Source #

synopsis :: Lens' PackageDescription ShortText Source #

testSuites :: Lens' PackageDescription [TestSuite] Source #

testedWith :: Lens' PackageDescription [(CompilerFlavor, VersionRange)] Source #