{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}

-- | 'ProjectConfig' Field descriptions
module Distribution.Client.ProjectConfig.FieldGrammar
  ( projectConfigFieldGrammar
  , packageConfigFieldGrammar
  ) where

import qualified Data.ByteString.Char8 as BS
import qualified Data.Set as Set
import Distribution.CabalSpecVersion (CabalSpecVersion (..))
import Distribution.Client.CmdInstall.ClientInstallFlags (clientInstallFlagsGrammar)
import qualified Distribution.Client.ProjectConfig.Lens as L
import Distribution.Client.ProjectConfig.Types (PackageConfig (..), ProjectConfig (..), ProjectConfigBuildOnly (..), ProjectConfigProvenance (..), ProjectConfigShared (..))
import Distribution.Client.Utils.Parsec
import Distribution.Compat.Prelude
import Distribution.FieldGrammar
import Distribution.Simple.Flag
import Distribution.Simple.InstallDirs
import Distribution.Solver.Types.ConstraintSource (ConstraintSource (..))
import Distribution.Solver.Types.ProjectConfigPath
import Distribution.Types.PackageVersionConstraint (PackageVersionConstraint (..))

projectConfigFieldGrammar :: ProjectConfigPath -> [String] -> ParsecFieldGrammar' ProjectConfig
projectConfigFieldGrammar :: ProjectConfigPath -> [String] -> ParsecFieldGrammar' ProjectConfig
projectConfigFieldGrammar ProjectConfigPath
source [String]
knownPrograms =
  [String]
-> [String]
-> [SourceRepoList]
-> [PackageVersionConstraint]
-> ProjectConfigBuildOnly
-> ProjectConfigShared
-> Set ProjectConfigProvenance
-> PackageConfig
-> PackageConfig
-> MapMappend PackageName PackageConfig
-> ProjectConfig
ProjectConfig
    ([String]
 -> [String]
 -> [SourceRepoList]
 -> [PackageVersionConstraint]
 -> ProjectConfigBuildOnly
 -> ProjectConfigShared
 -> Set ProjectConfigProvenance
 -> PackageConfig
 -> PackageConfig
 -> MapMappend PackageName PackageConfig
 -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig [String]
-> ParsecFieldGrammar
     ProjectConfig
     ([String]
      -> [SourceRepoList]
      -> [PackageVersionConstraint]
      -> ProjectConfigBuildOnly
      -> ProjectConfigShared
      -> Set ProjectConfigProvenance
      -> PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> FieldName
-> ([String] -> List FSep Token String)
-> ALens' ProjectConfig [String]
-> ParsecFieldGrammar ProjectConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"packages" (FSep -> (String -> Token) -> [String] -> List FSep Token String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep String -> Token
Token) ALens' ProjectConfig [String]
Lens' ProjectConfig [String]
L.projectPackages
    ParsecFieldGrammar
  ProjectConfig
  ([String]
   -> [SourceRepoList]
   -> [PackageVersionConstraint]
   -> ProjectConfigBuildOnly
   -> ProjectConfigShared
   -> Set ProjectConfigProvenance
   -> PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig [String]
-> ParsecFieldGrammar
     ProjectConfig
     ([SourceRepoList]
      -> [PackageVersionConstraint]
      -> ProjectConfigBuildOnly
      -> ProjectConfigShared
      -> Set ProjectConfigProvenance
      -> PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([String] -> List FSep Token String)
-> ALens' ProjectConfig [String]
-> ParsecFieldGrammar ProjectConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"optional-packages" (FSep -> (String -> Token) -> [String] -> List FSep Token String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep String -> Token
Token) ALens' ProjectConfig [String]
Lens' ProjectConfig [String]
L.projectPackagesOptional
    ParsecFieldGrammar
  ProjectConfig
  ([SourceRepoList]
   -> [PackageVersionConstraint]
   -> ProjectConfigBuildOnly
   -> ProjectConfigShared
   -> Set ProjectConfigProvenance
   -> PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig [SourceRepoList]
-> ParsecFieldGrammar
     ProjectConfig
     ([PackageVersionConstraint]
      -> ProjectConfigBuildOnly
      -> ProjectConfigShared
      -> Set ProjectConfigProvenance
      -> PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> [SourceRepoList]
-> ParsecFieldGrammar ProjectConfig [SourceRepoList]
forall a. a -> ParsecFieldGrammar ProjectConfig a
forall (f :: * -> *) a. Applicative f => a -> f a
pure [SourceRepoList]
forall a. Monoid a => a
mempty -- source-repository-package stanza
    ParsecFieldGrammar
  ProjectConfig
  ([PackageVersionConstraint]
   -> ProjectConfigBuildOnly
   -> ProjectConfigShared
   -> Set ProjectConfigProvenance
   -> PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig [PackageVersionConstraint]
-> ParsecFieldGrammar
     ProjectConfig
     (ProjectConfigBuildOnly
      -> ProjectConfigShared
      -> Set ProjectConfigProvenance
      -> PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([PackageVersionConstraint]
    -> List
         CommaVCat
         (Identity PackageVersionConstraint)
         PackageVersionConstraint)
-> ALens' ProjectConfig [PackageVersionConstraint]
-> ParsecFieldGrammar ProjectConfig [PackageVersionConstraint]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-packages" [PackageVersionConstraint]
-> List
     CommaVCat
     (Identity PackageVersionConstraint)
     PackageVersionConstraint
formatPackageVersionConstraints ALens' ProjectConfig [PackageVersionConstraint]
Lens' ProjectConfig [PackageVersionConstraint]
L.projectPackagesNamed
    ParsecFieldGrammar
  ProjectConfig
  (ProjectConfigBuildOnly
   -> ProjectConfigShared
   -> Set ProjectConfigProvenance
   -> PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig ProjectConfigBuildOnly
-> ParsecFieldGrammar
     ProjectConfig
     (ProjectConfigShared
      -> Set ProjectConfigProvenance
      -> PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> ALens' ProjectConfig ProjectConfigBuildOnly
-> ParsecFieldGrammar ProjectConfigBuildOnly ProjectConfigBuildOnly
-> ParsecFieldGrammar ProjectConfig ProjectConfigBuildOnly
forall a b d.
ALens' a b -> ParsecFieldGrammar b d -> ParsecFieldGrammar a d
forall (c :: * -> Constraint) (g :: * -> * -> *) a b d.
FieldGrammar c g =>
ALens' a b -> g b d -> g a d
blurFieldGrammar ALens' ProjectConfig ProjectConfigBuildOnly
Lens' ProjectConfig ProjectConfigBuildOnly
L.projectConfigBuildOnly ParsecFieldGrammar ProjectConfigBuildOnly ProjectConfigBuildOnly
projectConfigBuildOnlyFieldGrammar
    ParsecFieldGrammar
  ProjectConfig
  (ProjectConfigShared
   -> Set ProjectConfigProvenance
   -> PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig ProjectConfigShared
-> ParsecFieldGrammar
     ProjectConfig
     (Set ProjectConfigProvenance
      -> PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> ALens' ProjectConfig ProjectConfigShared
-> ParsecFieldGrammar ProjectConfigShared ProjectConfigShared
-> ParsecFieldGrammar ProjectConfig ProjectConfigShared
forall a b d.
ALens' a b -> ParsecFieldGrammar b d -> ParsecFieldGrammar a d
forall (c :: * -> Constraint) (g :: * -> * -> *) a b d.
FieldGrammar c g =>
ALens' a b -> g b d -> g a d
blurFieldGrammar ALens' ProjectConfig ProjectConfigShared
Lens' ProjectConfig ProjectConfigShared
L.projectConfigShared (ProjectConfigPath
-> ParsecFieldGrammar ProjectConfigShared ProjectConfigShared
projectConfigSharedFieldGrammar ProjectConfigPath
source)
    ParsecFieldGrammar
  ProjectConfig
  (Set ProjectConfigProvenance
   -> PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig (Set ProjectConfigProvenance)
-> ParsecFieldGrammar
     ProjectConfig
     (PackageConfig
      -> PackageConfig
      -> MapMappend PackageName PackageConfig
      -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Set ProjectConfigProvenance
-> ParsecFieldGrammar ProjectConfig (Set ProjectConfigProvenance)
forall a. a -> ParsecFieldGrammar ProjectConfig a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Set ProjectConfigProvenance
provenance
    ParsecFieldGrammar
  ProjectConfig
  (PackageConfig
   -> PackageConfig
   -> MapMappend PackageName PackageConfig
   -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig PackageConfig
-> ParsecFieldGrammar
     ProjectConfig
     (PackageConfig
      -> MapMappend PackageName PackageConfig -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> PackageConfig -> ParsecFieldGrammar ProjectConfig PackageConfig
forall a. a -> ParsecFieldGrammar ProjectConfig a
forall (f :: * -> *) a. Applicative f => a -> f a
pure PackageConfig
forall a. Monoid a => a
mempty
    -- \^ PackageConfig to be applied to all packages, specified inside 'package *' stanza
    ParsecFieldGrammar
  ProjectConfig
  (PackageConfig
   -> MapMappend PackageName PackageConfig -> ProjectConfig)
-> ParsecFieldGrammar ProjectConfig PackageConfig
-> ParsecFieldGrammar
     ProjectConfig
     (MapMappend PackageName PackageConfig -> ProjectConfig)
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> ALens' ProjectConfig PackageConfig
-> ParsecFieldGrammar PackageConfig PackageConfig
-> ParsecFieldGrammar ProjectConfig PackageConfig
forall a b d.
ALens' a b -> ParsecFieldGrammar b d -> ParsecFieldGrammar a d
forall (c :: * -> Constraint) (g :: * -> * -> *) a b d.
FieldGrammar c g =>
ALens' a b -> g b d -> g a d
blurFieldGrammar ALens' ProjectConfig PackageConfig
Lens' ProjectConfig PackageConfig
L.projectConfigLocalPackages ([String] -> ParsecFieldGrammar PackageConfig PackageConfig
packageConfigFieldGrammar [String]
knownPrograms)
    -- \^ PackageConfig to be applied to locally built packages, specified not inside a stanza
    ParsecFieldGrammar
  ProjectConfig
  (MapMappend PackageName PackageConfig -> ProjectConfig)
-> ParsecFieldGrammar
     ProjectConfig (MapMappend PackageName PackageConfig)
-> ParsecFieldGrammar' ProjectConfig
forall a b.
ParsecFieldGrammar ProjectConfig (a -> b)
-> ParsecFieldGrammar ProjectConfig a
-> ParsecFieldGrammar ProjectConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> MapMappend PackageName PackageConfig
-> ParsecFieldGrammar
     ProjectConfig (MapMappend PackageName PackageConfig)
forall a. a -> ParsecFieldGrammar ProjectConfig a
forall (f :: * -> *) a. Applicative f => a -> f a
pure MapMappend PackageName PackageConfig
forall a. Monoid a => a
mempty
  where
    -- \^ PackageConfig applied to explicitly named packages
    provenance :: Set ProjectConfigProvenance
provenance = ProjectConfigProvenance -> Set ProjectConfigProvenance
forall a. a -> Set a
Set.singleton (ProjectConfigPath -> ProjectConfigProvenance
Explicit ProjectConfigPath
source)

formatPackageVersionConstraints :: [PackageVersionConstraint] -> List CommaVCat (Identity PackageVersionConstraint) PackageVersionConstraint
formatPackageVersionConstraints :: [PackageVersionConstraint]
-> List
     CommaVCat
     (Identity PackageVersionConstraint)
     PackageVersionConstraint
formatPackageVersionConstraints = CommaVCat
-> [PackageVersionConstraint]
-> List
     CommaVCat
     (Identity PackageVersionConstraint)
     PackageVersionConstraint
forall sep a. sep -> [a] -> List sep (Identity a) a
alaList CommaVCat
CommaVCat

projectConfigBuildOnlyFieldGrammar :: ParsecFieldGrammar' ProjectConfigBuildOnly
projectConfigBuildOnlyFieldGrammar :: ParsecFieldGrammar ProjectConfigBuildOnly ProjectConfigBuildOnly
projectConfigBuildOnlyFieldGrammar =
  Flag VerbosityFlags
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> NubList PathTemplate
-> Flag PathTemplate
-> Flag ReportLevel
-> Flag Bool
-> Flag String
-> Flag (Maybe Int)
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag Bool
-> Flag String
-> Flag String
-> ClientInstallFlags
-> ProjectConfigBuildOnly
ProjectConfigBuildOnly
    (Flag VerbosityFlags
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> NubList PathTemplate
 -> Flag PathTemplate
 -> Flag ReportLevel
 -> Flag Bool
 -> Flag String
 -> Flag (Maybe Int)
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag String
 -> Flag Bool
 -> Flag String
 -> Flag String
 -> ClientInstallFlags
 -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag VerbosityFlags)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> NubList PathTemplate
      -> Flag PathTemplate
      -> Flag ReportLevel
      -> Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> FieldName
-> ALens' ProjectConfigBuildOnly (Flag VerbosityFlags)
-> Flag VerbosityFlags
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag VerbosityFlags)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"verbose" ALens' ProjectConfigBuildOnly (Flag VerbosityFlags)
Lens' ProjectConfigBuildOnly (Flag VerbosityFlags)
L.projectConfigVerbosity Flag VerbosityFlags
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> NubList PathTemplate
   -> Flag PathTemplate
   -> Flag ReportLevel
   -> Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag Bool
      -> NubList PathTemplate
      -> Flag PathTemplate
      -> Flag ReportLevel
      -> Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Flag Bool -> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall a. a -> ParsecFieldGrammar ProjectConfigBuildOnly a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Flag Bool
forall a. Monoid a => a
mempty -- cli flag: projectConfigDryRun
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag Bool
   -> NubList PathTemplate
   -> Flag PathTemplate
   -> Flag ReportLevel
   -> Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> NubList PathTemplate
      -> Flag PathTemplate
      -> Flag ReportLevel
      -> Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Flag Bool -> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall a. a -> ParsecFieldGrammar ProjectConfigBuildOnly a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Flag Bool
forall a. Monoid a => a
mempty -- cli flag: projectConfigOnlyDeps
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> NubList PathTemplate
   -> Flag PathTemplate
   -> Flag ReportLevel
   -> Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (NubList PathTemplate
      -> Flag PathTemplate
      -> Flag ReportLevel
      -> Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Flag Bool -> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall a. a -> ParsecFieldGrammar ProjectConfigBuildOnly a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Flag Bool
forall a. Monoid a => a
mempty -- cli flag: projectConfigOnlyDownload
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (NubList PathTemplate
   -> Flag PathTemplate
   -> Flag ReportLevel
   -> Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (NubList PathTemplate)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag PathTemplate
      -> Flag ReportLevel
      -> Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (NubList PathTemplate
    -> NubList' VCat (Identity PathTemplate) PathTemplate)
-> ALens' ProjectConfigBuildOnly (NubList PathTemplate)
-> ParsecFieldGrammar ProjectConfigBuildOnly (NubList PathTemplate)
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"build-summary" (VCat
-> NubList PathTemplate
-> NubList' VCat (Identity PathTemplate) PathTemplate
forall sep a. sep -> NubList a -> NubList' sep (Identity a) a
alaNubList VCat
VCat) ALens' ProjectConfigBuildOnly (NubList PathTemplate)
Lens' ProjectConfigBuildOnly (NubList PathTemplate)
L.projectConfigSummaryFile
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag PathTemplate
   -> Flag ReportLevel
   -> Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag PathTemplate)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag ReportLevel
      -> Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"build-log" ALens' ProjectConfigBuildOnly (Flag PathTemplate)
Lens' ProjectConfigBuildOnly (Flag PathTemplate)
L.projectConfigLogFile Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag ReportLevel
   -> Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag ReportLevel)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag ReportLevel)
-> Flag ReportLevel
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag ReportLevel)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"remote-build-reporting" ALens' ProjectConfigBuildOnly (Flag ReportLevel)
Lens' ProjectConfigBuildOnly (Flag ReportLevel)
L.projectConfigBuildReports Flag ReportLevel
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag String
      -> Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"report-planning-failure" ALens' ProjectConfigBuildOnly (Flag Bool)
Lens' ProjectConfigBuildOnly (Flag Bool)
L.projectConfigReportPlanningFailure Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag String
   -> Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag (Maybe Int)
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigBuildOnly (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"symlink-bindir" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigBuildOnly (Flag String)
Lens' ProjectConfigBuildOnly (Flag String)
L.projectConfigSymlinkBinDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag (Maybe Int)
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag (Maybe Int))
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag (Maybe Int) -> Flag' NumJobs (Maybe Int))
-> ALens' ProjectConfigBuildOnly (Flag (Maybe Int))
-> Flag (Maybe Int)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag (Maybe Int))
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"jobs" ((Maybe Int -> NumJobs)
-> Flag (Maybe Int) -> Flag' NumJobs (Maybe Int)
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag Maybe Int -> NumJobs
NumJobs) ALens' ProjectConfigBuildOnly (Flag (Maybe Int))
Lens' ProjectConfigBuildOnly (Flag (Maybe Int))
L.projectConfigNumJobs Flag (Maybe Int)
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"semaphore" ALens' ProjectConfigBuildOnly (Flag Bool)
Lens' ProjectConfigBuildOnly (Flag Bool)
L.projectConfigUseSemaphore Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"keep-going" ALens' ProjectConfigBuildOnly (Flag Bool)
Lens' ProjectConfigBuildOnly (Flag Bool)
L.projectConfigKeepGoing Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"offline" ALens' ProjectConfigBuildOnly (Flag Bool)
Lens' ProjectConfigBuildOnly (Flag Bool)
L.projectConfigOfflineMode Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag String
      -> Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-keep-temp-files" ALens' ProjectConfigBuildOnly (Flag Bool)
Lens' ProjectConfigBuildOnly (Flag Bool)
L.projectConfigKeepTempFiles Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag String
   -> Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag Bool
      -> Flag String
      -> Flag String
      -> ClientInstallFlags
      -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' Token String)
-> ALens' ProjectConfigBuildOnly (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"http-transport" ((String -> Token) -> Flag String -> Flag' Token String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> Token
Token) ALens' ProjectConfigBuildOnly (Flag String)
Lens' ProjectConfigBuildOnly (Flag String)
L.projectConfigHttpTransport Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag Bool
   -> Flag String
   -> Flag String
   -> ClientInstallFlags
   -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag String
      -> Flag String -> ClientInstallFlags -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigBuildOnly (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"ignore-expiry" ALens' ProjectConfigBuildOnly (Flag Bool)
Lens' ProjectConfigBuildOnly (Flag Bool)
L.projectConfigIgnoreExpiry Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag String
   -> Flag String -> ClientInstallFlags -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (Flag String -> ClientInstallFlags -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigBuildOnly (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"remote-repo-cache" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigBuildOnly (Flag String)
Lens' ProjectConfigBuildOnly (Flag String)
L.projectConfigCacheDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (Flag String -> ClientInstallFlags -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
-> ParsecFieldGrammar
     ProjectConfigBuildOnly
     (ClientInstallFlags -> ProjectConfigBuildOnly)
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigBuildOnly (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigBuildOnly (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"logs-dir" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigBuildOnly (Flag String)
Lens' ProjectConfigBuildOnly (Flag String)
L.projectConfigLogsDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigBuildOnly
  (ClientInstallFlags -> ProjectConfigBuildOnly)
-> ParsecFieldGrammar ProjectConfigBuildOnly ClientInstallFlags
-> ParsecFieldGrammar ProjectConfigBuildOnly ProjectConfigBuildOnly
forall a b.
ParsecFieldGrammar ProjectConfigBuildOnly (a -> b)
-> ParsecFieldGrammar ProjectConfigBuildOnly a
-> ParsecFieldGrammar ProjectConfigBuildOnly b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> ALens' ProjectConfigBuildOnly ClientInstallFlags
-> ParsecFieldGrammar ClientInstallFlags ClientInstallFlags
-> ParsecFieldGrammar ProjectConfigBuildOnly ClientInstallFlags
forall a b d.
ALens' a b -> ParsecFieldGrammar b d -> ParsecFieldGrammar a d
forall (c :: * -> Constraint) (g :: * -> * -> *) a b d.
FieldGrammar c g =>
ALens' a b -> g b d -> g a d
blurFieldGrammar ALens' ProjectConfigBuildOnly ClientInstallFlags
Lens' ProjectConfigBuildOnly ClientInstallFlags
L.projectConfigClientInstallFlags ParsecFieldGrammar ClientInstallFlags ClientInstallFlags
forall (c :: * -> Constraint) (g :: * -> * -> *).
(FieldGrammar c g, c (Identity (Flag Bool)),
 c (Flag' FilePathNT String), c (Identity (Flag OverwritePolicy)),
 c (Identity (Flag InstallMethod))) =>
g ClientInstallFlags ClientInstallFlags
clientInstallFlagsGrammar

projectConfigSharedFieldGrammar :: ProjectConfigPath -> ParsecFieldGrammar' ProjectConfigShared
projectConfigSharedFieldGrammar :: ProjectConfigPath
-> ParsecFieldGrammar ProjectConfigShared ProjectConfigShared
projectConfigSharedFieldGrammar ProjectConfigPath
source =
  Flag String
-> Flag String
-> Flag String
-> Flag String
-> Flag ProjectFileParser
-> Flag Bool
-> Flag CompilerFlavor
-> Flag String
-> Flag String
-> Flag PathTemplate
-> InstallDirs (Flag PathTemplate)
-> [Maybe PackageDBCWD]
-> NubList RemoteRepo
-> NubList LocalRepo
-> Flag ActiveRepos
-> Flag TotalIndexState
-> Flag String
-> [(UserConstraint, ConstraintSource)]
-> [PackageVersionConstraint]
-> Flag Version
-> Flag PreSolver
-> Maybe AllowOlder
-> Maybe AllowNewer
-> Flag WriteGhcEnvironmentFilesPolicy
-> Flag Int
-> Flag ReorderGoals
-> Flag CountConflicts
-> Flag FineGrainedConflicts
-> Flag MinimizeConflictSet
-> Flag StrongFlags
-> Flag AllowBootLibInstalls
-> Flag OnlyConstrained
-> Flag Bool
-> Flag IndependentGoals
-> Flag PreferOldest
-> NubList String
-> Flag Bool
-> ProjectConfigShared
ProjectConfigShared
    (Flag String
 -> Flag String
 -> Flag String
 -> Flag String
 -> Flag ProjectFileParser
 -> Flag Bool
 -> Flag CompilerFlavor
 -> Flag String
 -> Flag String
 -> Flag PathTemplate
 -> InstallDirs (Flag PathTemplate)
 -> [Maybe PackageDBCWD]
 -> NubList RemoteRepo
 -> NubList LocalRepo
 -> Flag ActiveRepos
 -> Flag TotalIndexState
 -> Flag String
 -> [(UserConstraint, ConstraintSource)]
 -> [PackageVersionConstraint]
 -> Flag Version
 -> Flag PreSolver
 -> Maybe AllowOlder
 -> Maybe AllowNewer
 -> Flag WriteGhcEnvironmentFilesPolicy
 -> Flag Int
 -> Flag ReorderGoals
 -> Flag CountConflicts
 -> Flag FineGrainedConflicts
 -> Flag MinimizeConflictSet
 -> Flag StrongFlags
 -> Flag AllowBootLibInstalls
 -> Flag OnlyConstrained
 -> Flag Bool
 -> Flag IndependentGoals
 -> Flag PreferOldest
 -> NubList String
 -> Flag Bool
 -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag String
      -> Flag String
      -> Flag String
      -> Flag ProjectFileParser
      -> Flag Bool
      -> Flag CompilerFlavor
      -> Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigShared (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"builddir" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (Flag String)
Lens' ProjectConfigShared (Flag String)
L.projectConfigDistDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag String
   -> Flag String
   -> Flag String
   -> Flag ProjectFileParser
   -> Flag Bool
   -> Flag CompilerFlavor
   -> Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag String
      -> Flag String
      -> Flag ProjectFileParser
      -> Flag Bool
      -> Flag CompilerFlavor
      -> Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Flag String -> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall a. a -> ParsecFieldGrammar ProjectConfigShared a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Flag String
forall a. Monoid a => a
mempty -- cli flag: projectConfigConfigFile
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag String
   -> Flag String
   -> Flag ProjectFileParser
   -> Flag Bool
   -> Flag CompilerFlavor
   -> Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag String
      -> Flag ProjectFileParser
      -> Flag Bool
      -> Flag CompilerFlavor
      -> Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigShared (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"project-dir" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (Flag String)
Lens' ProjectConfigShared (Flag String)
L.projectConfigProjectDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag String
   -> Flag ProjectFileParser
   -> Flag Bool
   -> Flag CompilerFlavor
   -> Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag ProjectFileParser
      -> Flag Bool
      -> Flag CompilerFlavor
      -> Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigShared (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"project-file" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (Flag String)
Lens' ProjectConfigShared (Flag String)
L.projectConfigProjectFile Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag ProjectFileParser
   -> Flag Bool
   -> Flag CompilerFlavor
   -> Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag ProjectFileParser)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag Bool
      -> Flag CompilerFlavor
      -> Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Flag ProjectFileParser
-> ParsecFieldGrammar ProjectConfigShared (Flag ProjectFileParser)
forall a. a -> ParsecFieldGrammar ProjectConfigShared a
forall (f :: * -> *) a. Applicative f => a -> f a
pure Flag ProjectFileParser
forall a. Monoid a => a
mempty -- You can't set the parser type in the project file.
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag Bool
   -> Flag CompilerFlavor
   -> Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag CompilerFlavor
      -> Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigShared (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"ignore-project" ALens' ProjectConfigShared (Flag Bool)
Lens' ProjectConfigShared (Flag Bool)
L.projectConfigIgnoreProject Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag CompilerFlavor
   -> Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag CompilerFlavor)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag String
      -> Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag CompilerFlavor)
-> Flag CompilerFlavor
-> ParsecFieldGrammar ProjectConfigShared (Flag CompilerFlavor)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"compiler" ALens' ProjectConfigShared (Flag CompilerFlavor)
Lens' ProjectConfigShared (Flag CompilerFlavor)
L.projectConfigHcFlavor Flag CompilerFlavor
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag String
   -> Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag String
      -> Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigShared (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"with-compiler" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (Flag String)
Lens' ProjectConfigShared (Flag String)
L.projectConfigHcPath Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag String
   -> Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag PathTemplate
      -> InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigShared (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"with-hc-pkg" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (Flag String)
Lens' ProjectConfigShared (Flag String)
L.projectConfigHcPkg Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag PathTemplate
   -> InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag PathTemplate)
-> ParsecFieldGrammar
     ProjectConfigShared
     (InstallDirs (Flag PathTemplate)
      -> [Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar ProjectConfigShared (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"doc-index-file" ALens' ProjectConfigShared (Flag PathTemplate)
Lens' ProjectConfigShared (Flag PathTemplate)
L.projectConfigHaddockIndex Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (InstallDirs (Flag PathTemplate)
   -> [Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared (InstallDirs (Flag PathTemplate))
-> ParsecFieldGrammar
     ProjectConfigShared
     ([Maybe PackageDBCWD]
      -> NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> ALens' ProjectConfigShared (InstallDirs (Flag PathTemplate))
-> ParsecFieldGrammar
     (InstallDirs (Flag PathTemplate)) (InstallDirs (Flag PathTemplate))
-> ParsecFieldGrammar
     ProjectConfigShared (InstallDirs (Flag PathTemplate))
forall a b d.
ALens' a b -> ParsecFieldGrammar b d -> ParsecFieldGrammar a d
forall (c :: * -> Constraint) (g :: * -> * -> *) a b d.
FieldGrammar c g =>
ALens' a b -> g b d -> g a d
blurFieldGrammar ALens' ProjectConfigShared (InstallDirs (Flag PathTemplate))
Lens' ProjectConfigShared (InstallDirs (Flag PathTemplate))
L.projectConfigInstallDirs ParsecFieldGrammar
  (InstallDirs (Flag PathTemplate)) (InstallDirs (Flag PathTemplate))
installDirsGrammar
    ParsecFieldGrammar
  ProjectConfigShared
  ([Maybe PackageDBCWD]
   -> NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared [Maybe PackageDBCWD]
-> ParsecFieldGrammar
     ProjectConfigShared
     (NubList RemoteRepo
      -> NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([Maybe PackageDBCWD]
    -> List CommaFSep PackageDBNT (Maybe PackageDBCWD))
-> ALens' ProjectConfigShared [Maybe PackageDBCWD]
-> ParsecFieldGrammar ProjectConfigShared [Maybe PackageDBCWD]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"package-dbs" (CommaFSep
-> (Maybe PackageDBCWD -> PackageDBNT)
-> [Maybe PackageDBCWD]
-> List CommaFSep PackageDBNT (Maybe PackageDBCWD)
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' CommaFSep
CommaFSep Maybe PackageDBCWD -> PackageDBNT
PackageDBNT) ALens' ProjectConfigShared [Maybe PackageDBCWD]
Lens' ProjectConfigShared [Maybe PackageDBCWD]
L.projectConfigPackageDBs
    ParsecFieldGrammar
  ProjectConfigShared
  (NubList RemoteRepo
   -> NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (NubList RemoteRepo)
-> ParsecFieldGrammar
     ProjectConfigShared
     (NubList LocalRepo
      -> Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> NubList RemoteRepo
-> ParsecFieldGrammar ProjectConfigShared (NubList RemoteRepo)
forall a. a -> ParsecFieldGrammar ProjectConfigShared a
forall (f :: * -> *) a. Applicative f => a -> f a
pure NubList RemoteRepo
forall a. Monoid a => a
mempty -- repository stanza for projectConfigRemoteRepos
    ParsecFieldGrammar
  ProjectConfigShared
  (NubList LocalRepo
   -> Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (NubList LocalRepo)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag ActiveRepos
      -> Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> NubList LocalRepo
-> ParsecFieldGrammar ProjectConfigShared (NubList LocalRepo)
forall a. a -> ParsecFieldGrammar ProjectConfigShared a
forall (f :: * -> *) a. Applicative f => a -> f a
pure NubList LocalRepo
forall a. Monoid a => a
mempty -- repository stanza for projectConfigLocalNoIndexRepos
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag ActiveRepos
   -> Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag ActiveRepos)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag TotalIndexState
      -> Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag ActiveRepos)
-> ParsecFieldGrammar ProjectConfigShared (Flag ActiveRepos)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Monoid a) =>
FieldName -> ALens' s a -> g s a
monoidalField FieldName
"active-repositories" ALens' ProjectConfigShared (Flag ActiveRepos)
Lens' ProjectConfigShared (Flag ActiveRepos)
L.projectConfigActiveRepos
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag TotalIndexState
   -> Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag TotalIndexState)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag String
      -> [(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag TotalIndexState)
-> ParsecFieldGrammar ProjectConfigShared (Flag TotalIndexState)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Monoid a) =>
FieldName -> ALens' s a -> g s a
monoidalField FieldName
"index-state" ALens' ProjectConfigShared (Flag TotalIndexState)
Lens' ProjectConfigShared (Flag TotalIndexState)
L.projectConfigIndexState
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag String
   -> [(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
-> ParsecFieldGrammar
     ProjectConfigShared
     ([(UserConstraint, ConstraintSource)]
      -> [PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' ProjectConfigShared (Flag String)
-> Flag String
-> ParsecFieldGrammar ProjectConfigShared (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"store-dir" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (Flag String)
Lens' ProjectConfigShared (Flag String)
L.projectConfigStoreDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  ([(UserConstraint, ConstraintSource)]
   -> [PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
-> ParsecFieldGrammar
     ProjectConfigShared
     ([PackageVersionConstraint]
      -> Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([(UserConstraint, ConstraintSource)]
    -> List FSep ProjectConstraints (UserConstraint, ConstraintSource))
-> ALens' ProjectConfigShared [(UserConstraint, ConstraintSource)]
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"constraints" (FSep
-> ((UserConstraint, ConstraintSource) -> ProjectConstraints)
-> [(UserConstraint, ConstraintSource)]
-> List FSep ProjectConstraints (UserConstraint, ConstraintSource)
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep (UserConstraint, ConstraintSource) -> ProjectConstraints
ProjectConstraints) ALens' ProjectConfigShared [(UserConstraint, ConstraintSource)]
Lens' ProjectConfigShared [(UserConstraint, ConstraintSource)]
L.projectConfigConstraints
      ParsecFieldGrammar
  ProjectConfigShared [(UserConstraint, ConstraintSource)]
-> (ParsecFieldGrammar
      ProjectConfigShared [(UserConstraint, ConstraintSource)]
    -> ParsecFieldGrammar
         ProjectConfigShared [(UserConstraint, ConstraintSource)])
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
forall a b. a -> (a -> b) -> b
^^^ (([(UserConstraint, ConstraintSource)]
 -> [(UserConstraint, ConstraintSource)])
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
forall a b.
(a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap (([(UserConstraint, ConstraintSource)]
  -> [(UserConstraint, ConstraintSource)])
 -> ParsecFieldGrammar
      ProjectConfigShared [(UserConstraint, ConstraintSource)]
 -> ParsecFieldGrammar
      ProjectConfigShared [(UserConstraint, ConstraintSource)])
-> (((UserConstraint, ConstraintSource)
     -> (UserConstraint, ConstraintSource))
    -> [(UserConstraint, ConstraintSource)]
    -> [(UserConstraint, ConstraintSource)])
-> ((UserConstraint, ConstraintSource)
    -> (UserConstraint, ConstraintSource))
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
-> ParsecFieldGrammar
     ProjectConfigShared [(UserConstraint, ConstraintSource)]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ((UserConstraint, ConstraintSource)
 -> (UserConstraint, ConstraintSource))
-> [(UserConstraint, ConstraintSource)]
-> [(UserConstraint, ConstraintSource)]
forall a b. (a -> b) -> [a] -> [b]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap) (\(UserConstraint
userConstraint, ConstraintSource
_) -> (UserConstraint
userConstraint, ProjectConfigPath -> ConstraintSource
ConstraintSourceProjectConfig ProjectConfigPath
source))
    ParsecFieldGrammar
  ProjectConfigShared
  ([PackageVersionConstraint]
   -> Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared [PackageVersionConstraint]
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag Version
      -> Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([PackageVersionConstraint]
    -> List
         CommaVCat
         (Identity PackageVersionConstraint)
         PackageVersionConstraint)
-> ALens' ProjectConfigShared [PackageVersionConstraint]
-> ParsecFieldGrammar
     ProjectConfigShared [PackageVersionConstraint]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"preferences" [PackageVersionConstraint]
-> List
     CommaVCat
     (Identity PackageVersionConstraint)
     PackageVersionConstraint
formatPackageVersionConstraints ALens' ProjectConfigShared [PackageVersionConstraint]
Lens' ProjectConfigShared [PackageVersionConstraint]
L.projectConfigPreferences
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag Version
   -> Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag Version)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag PreSolver
      -> Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag Version)
-> Flag Version
-> ParsecFieldGrammar ProjectConfigShared (Flag Version)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"cabal-lib-version" ALens' ProjectConfigShared (Flag Version)
Lens' ProjectConfigShared (Flag Version)
L.projectConfigCabalVersion Flag Version
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag PreSolver
   -> Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag PreSolver)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Maybe AllowOlder
      -> Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag PreSolver)
-> Flag PreSolver
-> ParsecFieldGrammar ProjectConfigShared (Flag PreSolver)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"solver" ALens' ProjectConfigShared (Flag PreSolver)
Lens' ProjectConfigShared (Flag PreSolver)
L.projectConfigSolver Flag PreSolver
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Maybe AllowOlder
   -> Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Maybe AllowOlder)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Maybe AllowNewer
      -> Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Maybe AllowOlder -> AllowOlderNT)
-> ALens' ProjectConfigShared (Maybe AllowOlder)
-> ParsecFieldGrammar ProjectConfigShared (Maybe AllowOlder)
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"allow-older" Maybe AllowOlder -> AllowOlderNT
AllowOlderNT ALens' ProjectConfigShared (Maybe AllowOlder)
Lens' ProjectConfigShared (Maybe AllowOlder)
L.projectConfigAllowOlder
    ParsecFieldGrammar
  ProjectConfigShared
  (Maybe AllowNewer
   -> Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Maybe AllowNewer)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag WriteGhcEnvironmentFilesPolicy
      -> Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Maybe AllowNewer -> AllowNewerNT)
-> ALens' ProjectConfigShared (Maybe AllowNewer)
-> ParsecFieldGrammar ProjectConfigShared (Maybe AllowNewer)
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"allow-newer" Maybe AllowNewer -> AllowNewerNT
AllowNewerNT ALens' ProjectConfigShared (Maybe AllowNewer)
Lens' ProjectConfigShared (Maybe AllowNewer)
L.projectConfigAllowNewer
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag WriteGhcEnvironmentFilesPolicy
   -> Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared (Flag WriteGhcEnvironmentFilesPolicy)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag Int
      -> Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag WriteGhcEnvironmentFilesPolicy)
-> Flag WriteGhcEnvironmentFilesPolicy
-> ParsecFieldGrammar
     ProjectConfigShared (Flag WriteGhcEnvironmentFilesPolicy)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"write-ghc-environment-files" ALens' ProjectConfigShared (Flag WriteGhcEnvironmentFilesPolicy)
Lens' ProjectConfigShared (Flag WriteGhcEnvironmentFilesPolicy)
L.projectConfigWriteGhcEnvironmentFilesPolicy Flag WriteGhcEnvironmentFilesPolicy
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag Int
   -> Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag Int)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag ReorderGoals
      -> Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag Int -> Flag' MaxBackjumps Int)
-> ALens' ProjectConfigShared (Flag Int)
-> Flag Int
-> ParsecFieldGrammar ProjectConfigShared (Flag Int)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"max-backjumps" ((Int -> MaxBackjumps) -> Flag Int -> Flag' MaxBackjumps Int
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag Int -> MaxBackjumps
MaxBackjumps) ALens' ProjectConfigShared (Flag Int)
Lens' ProjectConfigShared (Flag Int)
L.projectConfigMaxBackjumps Flag Int
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag ReorderGoals
   -> Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag ReorderGoals)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag CountConflicts
      -> Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag ReorderGoals)
-> Flag ReorderGoals
-> ParsecFieldGrammar ProjectConfigShared (Flag ReorderGoals)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"reorder-goals" ALens' ProjectConfigShared (Flag ReorderGoals)
Lens' ProjectConfigShared (Flag ReorderGoals)
L.projectConfigReorderGoals Flag ReorderGoals
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag CountConflicts
   -> Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag CountConflicts)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag FineGrainedConflicts
      -> Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag CountConflicts)
-> Flag CountConflicts
-> ParsecFieldGrammar ProjectConfigShared (Flag CountConflicts)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"count-conflicts" ALens' ProjectConfigShared (Flag CountConflicts)
Lens' ProjectConfigShared (Flag CountConflicts)
L.projectConfigCountConflicts Flag CountConflicts
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag FineGrainedConflicts
   -> Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared (Flag FineGrainedConflicts)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag MinimizeConflictSet
      -> Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag FineGrainedConflicts)
-> Flag FineGrainedConflicts
-> ParsecFieldGrammar
     ProjectConfigShared (Flag FineGrainedConflicts)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"fine-grained-conflicts" ALens' ProjectConfigShared (Flag FineGrainedConflicts)
Lens' ProjectConfigShared (Flag FineGrainedConflicts)
L.projectConfigFineGrainedConflicts Flag FineGrainedConflicts
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag MinimizeConflictSet
   -> Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared (Flag MinimizeConflictSet)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag StrongFlags
      -> Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag MinimizeConflictSet)
-> Flag MinimizeConflictSet
-> ParsecFieldGrammar
     ProjectConfigShared (Flag MinimizeConflictSet)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"minimize-conflict-set" ALens' ProjectConfigShared (Flag MinimizeConflictSet)
Lens' ProjectConfigShared (Flag MinimizeConflictSet)
L.projectConfigMinimizeConflictSet Flag MinimizeConflictSet
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag StrongFlags
   -> Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag StrongFlags)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag AllowBootLibInstalls
      -> Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag StrongFlags)
-> Flag StrongFlags
-> ParsecFieldGrammar ProjectConfigShared (Flag StrongFlags)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"strong-flags" ALens' ProjectConfigShared (Flag StrongFlags)
Lens' ProjectConfigShared (Flag StrongFlags)
L.projectConfigStrongFlags Flag StrongFlags
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag AllowBootLibInstalls
   -> Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar
     ProjectConfigShared (Flag AllowBootLibInstalls)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag OnlyConstrained
      -> Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag AllowBootLibInstalls)
-> Flag AllowBootLibInstalls
-> ParsecFieldGrammar
     ProjectConfigShared (Flag AllowBootLibInstalls)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"allow-boot-library-installs" ALens' ProjectConfigShared (Flag AllowBootLibInstalls)
Lens' ProjectConfigShared (Flag AllowBootLibInstalls)
L.projectConfigAllowBootLibInstalls Flag AllowBootLibInstalls
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag OnlyConstrained
   -> Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag OnlyConstrained)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag Bool
      -> Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag OnlyConstrained)
-> Flag OnlyConstrained
-> ParsecFieldGrammar ProjectConfigShared (Flag OnlyConstrained)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"reject-unconstrained-dependencies" ALens' ProjectConfigShared (Flag OnlyConstrained)
Lens' ProjectConfigShared (Flag OnlyConstrained)
L.projectConfigOnlyConstrained Flag OnlyConstrained
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag Bool
   -> Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag Bool)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag IndependentGoals
      -> Flag PreferOldest
      -> NubList String
      -> Flag Bool
      -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigShared (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"per-component" ALens' ProjectConfigShared (Flag Bool)
Lens' ProjectConfigShared (Flag Bool)
L.projectConfigPerComponent Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag IndependentGoals
   -> Flag PreferOldest
   -> NubList String
   -> Flag Bool
   -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag IndependentGoals)
-> ParsecFieldGrammar
     ProjectConfigShared
     (Flag PreferOldest
      -> NubList String -> Flag Bool -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag IndependentGoals)
-> Flag IndependentGoals
-> ParsecFieldGrammar ProjectConfigShared (Flag IndependentGoals)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"independent-goals" ALens' ProjectConfigShared (Flag IndependentGoals)
Lens' ProjectConfigShared (Flag IndependentGoals)
L.projectConfigIndependentGoals Flag IndependentGoals
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (Flag PreferOldest
   -> NubList String -> Flag Bool -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag PreferOldest)
-> ParsecFieldGrammar
     ProjectConfigShared
     (NubList String -> Flag Bool -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag PreferOldest)
-> Flag PreferOldest
-> ParsecFieldGrammar ProjectConfigShared (Flag PreferOldest)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"prefer-oldest" ALens' ProjectConfigShared (Flag PreferOldest)
Lens' ProjectConfigShared (Flag PreferOldest)
L.projectConfigPreferOldest Flag PreferOldest
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  ProjectConfigShared
  (NubList String -> Flag Bool -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (NubList String)
-> ParsecFieldGrammar
     ProjectConfigShared (Flag Bool -> ProjectConfigShared)
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (NubList String -> NubList' FSep FilePathNT String)
-> ALens' ProjectConfigShared (NubList String)
-> ParsecFieldGrammar ProjectConfigShared (NubList String)
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-prog-path-shared-only" (FSep
-> (String -> FilePathNT)
-> NubList String
-> NubList' FSep FilePathNT String
forall sep a b. sep -> (a -> b) -> NubList a -> NubList' sep b a
alaNubList' FSep
FSep String -> FilePathNT
FilePathNT) ALens' ProjectConfigShared (NubList String)
Lens' ProjectConfigShared (NubList String)
L.projectConfigProgPathExtra
    ParsecFieldGrammar
  ProjectConfigShared (Flag Bool -> ProjectConfigShared)
-> ParsecFieldGrammar ProjectConfigShared (Flag Bool)
-> ParsecFieldGrammar ProjectConfigShared ProjectConfigShared
forall a b.
ParsecFieldGrammar ProjectConfigShared (a -> b)
-> ParsecFieldGrammar ProjectConfigShared a
-> ParsecFieldGrammar ProjectConfigShared b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' ProjectConfigShared (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar ProjectConfigShared (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"multi-repl" ALens' ProjectConfigShared (Flag Bool)
Lens' ProjectConfigShared (Flag Bool)
L.projectConfigMultiRepl Flag Bool
forall a. Monoid a => a
mempty

packageConfigFieldGrammar :: [String] -> ParsecFieldGrammar' PackageConfig
packageConfigFieldGrammar :: [String] -> ParsecFieldGrammar PackageConfig PackageConfig
packageConfigFieldGrammar [String]
knownPrograms =
  Flag Bool
-> MapLast String String
-> MapMappend String [String]
-> NubList String
-> FlagAssignment
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag ProfDetailLevel
-> Flag ProfDetailLevel
-> [String]
-> Flag OptimisationLevel
-> Flag PathTemplate
-> Flag PathTemplate
-> [String]
-> [String]
-> [String]
-> [String]
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag DebugInfoLevel
-> Flag DumpBuildInfo
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag PathTemplate
-> Flag PathTemplate
-> Flag String
-> Flag String
-> Flag String
-> Flag Bool
-> Flag HaddockTarget
-> Flag PathTemplate
-> Flag PathTemplate
-> Flag TestShowDetails
-> Flag Bool
-> Flag String
-> Flag Bool
-> [PathTemplate]
-> [PathTemplate]
-> PackageConfig
mkPackageConfig
    (Flag Bool
 -> MapLast String String
 -> MapMappend String [String]
 -> NubList String
 -> FlagAssignment
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag ProfDetailLevel
 -> Flag ProfDetailLevel
 -> [String]
 -> Flag OptimisationLevel
 -> Flag PathTemplate
 -> Flag PathTemplate
 -> [String]
 -> [String]
 -> [String]
 -> [String]
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag DebugInfoLevel
 -> Flag DumpBuildInfo
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag String
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag Bool
 -> Flag String
 -> Flag Bool
 -> Flag Bool
 -> Flag String
 -> Flag PathTemplate
 -> Flag PathTemplate
 -> Flag String
 -> Flag String
 -> Flag String
 -> Flag Bool
 -> Flag HaddockTarget
 -> Flag PathTemplate
 -> Flag PathTemplate
 -> Flag TestShowDetails
 -> Flag Bool
 -> Flag String
 -> Flag Bool
 -> [PathTemplate]
 -> [PathTemplate]
 -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (MapLast String String
      -> MapMappend String [String]
      -> NubList String
      -> FlagAssignment
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-all" ALens' PackageConfig (Flag Bool)
forall {f :: * -> *} {t} {b} {a}.
(Functor f, Monoid t) =>
(t -> f b) -> a -> f a
noopLens Flag Bool
forall a. Monoid a => a
mempty
      ParsecFieldGrammar PackageConfig (Flag Bool)
-> (ParsecFieldGrammar PackageConfig (Flag Bool)
    -> ParsecFieldGrammar PackageConfig (Flag Bool))
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall a b. a -> (a -> b) -> b
^^^ ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall s a. ParsecFieldGrammar s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) s a.
FieldGrammar c g =>
g s a -> g s a
hiddenField
    ParsecFieldGrammar
  PackageConfig
  (MapLast String String
   -> MapMappend String [String]
   -> NubList String
   -> FlagAssignment
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (MapLast String String)
-> ParsecFieldGrammar
     PackageConfig
     (MapMappend String [String]
      -> NubList String
      -> FlagAssignment
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> MapLast String String
-> ParsecFieldGrammar PackageConfig (MapLast String String)
forall a. a -> ParsecFieldGrammar PackageConfig a
forall (f :: * -> *) a. Applicative f => a -> f a
pure MapLast String String
forall a. Monoid a => a
mempty -- program-options stanza
    ParsecFieldGrammar
  PackageConfig
  (MapMappend String [String]
   -> NubList String
   -> FlagAssignment
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (MapMappend String [String])
-> ParsecFieldGrammar
     PackageConfig
     (NubList String
      -> FlagAssignment
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> MapMappend String [String]
-> ParsecFieldGrammar PackageConfig (MapMappend String [String])
forall a. a -> ParsecFieldGrammar PackageConfig a
forall (f :: * -> *) a. Applicative f => a -> f a
pure MapMappend String [String]
forall a. Monoid a => a
mempty -- program-locations stanza
    ParsecFieldGrammar
  PackageConfig
  (NubList String
   -> FlagAssignment
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (NubList String)
-> ParsecFieldGrammar
     PackageConfig
     (FlagAssignment
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (NubList String -> NubList' FSep FilePathNT String)
-> ALens' PackageConfig (NubList String)
-> ParsecFieldGrammar PackageConfig (NubList String)
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-prog-path" (FSep
-> (String -> FilePathNT)
-> NubList String
-> NubList' FSep FilePathNT String
forall sep a b. sep -> (a -> b) -> NubList a -> NubList' sep b a
alaNubList' FSep
FSep String -> FilePathNT
FilePathNT) ALens' PackageConfig (NubList String)
Lens' PackageConfig (NubList String)
L.packageConfigProgramPathExtra
    ParsecFieldGrammar
  PackageConfig
  (FlagAssignment
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig FlagAssignment
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig FlagAssignment
-> ParsecFieldGrammar PackageConfig FlagAssignment
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Monoid a) =>
FieldName -> ALens' s a -> g s a
monoidalField FieldName
"flags" ALens' PackageConfig FlagAssignment
Lens' PackageConfig FlagAssignment
L.packageConfigFlagAssignment
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-vanilla" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigVanillaLib Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"shared" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigSharedLib Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"static" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigStaticLib Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-bytecode" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigBytecodeLib Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"executable-dynamic" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigDynExe Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"executable-static" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigFullyStaticExe Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"profiling" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigProf Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-profiling" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigProfLib Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"profiling-shared" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigProfShared Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag ProfDetailLevel
      -> Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"executable-profiling" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigProfExe Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag ProfDetailLevel
   -> Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag ProfDetailLevel)
-> ParsecFieldGrammar
     PackageConfig
     (Flag ProfDetailLevel
      -> [String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag ProfDetailLevel)
-> Flag ProfDetailLevel
-> ParsecFieldGrammar PackageConfig (Flag ProfDetailLevel)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"profiling-detail" ALens' PackageConfig (Flag ProfDetailLevel)
Lens' PackageConfig (Flag ProfDetailLevel)
L.packageConfigProfDetail Flag ProfDetailLevel
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag ProfDetailLevel
   -> [String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag ProfDetailLevel)
-> ParsecFieldGrammar
     PackageConfig
     ([String]
      -> Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag ProfDetailLevel)
-> Flag ProfDetailLevel
-> ParsecFieldGrammar PackageConfig (Flag ProfDetailLevel)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-profiling-detail" ALens' PackageConfig (Flag ProfDetailLevel)
Lens' PackageConfig (Flag ProfDetailLevel)
L.packageConfigProfLibDetail Flag ProfDetailLevel
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  ([String]
   -> Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [String]
-> ParsecFieldGrammar
     PackageConfig
     (Flag OptimisationLevel
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([String] -> List NoCommaFSep Token String)
-> ALens' PackageConfig [String]
-> ParsecFieldGrammar PackageConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"configure-options" (NoCommaFSep
-> (String -> Token) -> [String] -> List NoCommaFSep Token String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' NoCommaFSep
NoCommaFSep String -> Token
Token) ALens' PackageConfig [String]
Lens' PackageConfig [String]
L.packageConfigConfigureArgs
    ParsecFieldGrammar
  PackageConfig
  (Flag OptimisationLevel
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag OptimisationLevel)
-> ParsecFieldGrammar
     PackageConfig
     (Flag PathTemplate
      -> Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag OptimisationLevel)
-> Flag OptimisationLevel
-> ParsecFieldGrammar PackageConfig (Flag OptimisationLevel)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"optimization" ALens' PackageConfig (Flag OptimisationLevel)
Lens' PackageConfig (Flag OptimisationLevel)
L.packageConfigOptimization Flag OptimisationLevel
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag PathTemplate
   -> Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
-> ParsecFieldGrammar
     PackageConfig
     (Flag PathTemplate
      -> [String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"program-prefix" ALens' PackageConfig (Flag PathTemplate)
Lens' PackageConfig (Flag PathTemplate)
L.packageConfigProgPrefix Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag PathTemplate
   -> [String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
-> ParsecFieldGrammar
     PackageConfig
     ([String]
      -> [String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"program-suffix" ALens' PackageConfig (Flag PathTemplate)
Lens' PackageConfig (Flag PathTemplate)
L.packageConfigProgSuffix Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  ([String]
   -> [String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [String]
-> ParsecFieldGrammar
     PackageConfig
     ([String]
      -> [String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([String] -> List FSep FilePathNT String)
-> ALens' PackageConfig [String]
-> ParsecFieldGrammar PackageConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-lib-dirs" (FSep
-> (String -> FilePathNT)
-> [String]
-> List FSep FilePathNT String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep String -> FilePathNT
FilePathNT) ALens' PackageConfig [String]
Lens' PackageConfig [String]
L.packageConfigExtraLibDirs
    ParsecFieldGrammar
  PackageConfig
  ([String]
   -> [String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [String]
-> ParsecFieldGrammar
     PackageConfig
     ([String]
      -> [String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([String] -> List FSep FilePathNT String)
-> ALens' PackageConfig [String]
-> ParsecFieldGrammar PackageConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-lib-dirs-static" (FSep
-> (String -> FilePathNT)
-> [String]
-> List FSep FilePathNT String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep String -> FilePathNT
FilePathNT) ALens' PackageConfig [String]
Lens' PackageConfig [String]
L.packageConfigExtraLibDirsStatic
    ParsecFieldGrammar
  PackageConfig
  ([String]
   -> [String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [String]
-> ParsecFieldGrammar
     PackageConfig
     ([String]
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([String] -> List FSep FilePathNT String)
-> ALens' PackageConfig [String]
-> ParsecFieldGrammar PackageConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-framework-dirs" (FSep
-> (String -> FilePathNT)
-> [String]
-> List FSep FilePathNT String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep String -> FilePathNT
FilePathNT) ALens' PackageConfig [String]
Lens' PackageConfig [String]
L.packageConfigExtraFrameworkDirs
    ParsecFieldGrammar
  PackageConfig
  ([String]
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [String]
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([String] -> List FSep FilePathNT String)
-> ALens' PackageConfig [String]
-> ParsecFieldGrammar PackageConfig [String]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"extra-include-dirs" (FSep
-> (String -> FilePathNT)
-> [String]
-> List FSep FilePathNT String
forall sep a b. sep -> (a -> b) -> [a] -> List sep b a
alaList' FSep
FSep String -> FilePathNT
FilePathNT) ALens' PackageConfig [String]
Lens' PackageConfig [String]
L.packageConfigExtraIncludeDirs
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-for-ghci" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigGHCiLib Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"split-sections" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigSplitSections Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"split-objs" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigSplitObjs Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"executable-stripping" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigStripExes Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-stripping" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigStripLibs Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"tests" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigTests Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"benchmarks" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigBenchmarks Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> ParsecFieldGrammar PackageConfig (Flag Bool)
packageConfigCoverageGrammar
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag DebugInfoLevel
      -> Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"relocatable" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigRelocatable Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag DebugInfoLevel
   -> Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag DebugInfoLevel)
-> ParsecFieldGrammar
     PackageConfig
     (Flag DumpBuildInfo
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag DebugInfoLevel)
-> Flag DebugInfoLevel
-> ParsecFieldGrammar PackageConfig (Flag DebugInfoLevel)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"debug-info" ALens' PackageConfig (Flag DebugInfoLevel)
Lens' PackageConfig (Flag DebugInfoLevel)
L.packageConfigDebugInfo Flag DebugInfoLevel
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag DumpBuildInfo
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag DumpBuildInfo)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag DumpBuildInfo)
-> Flag DumpBuildInfo
-> ParsecFieldGrammar PackageConfig (Flag DumpBuildInfo)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"build-info" ALens' PackageConfig (Flag DumpBuildInfo)
Lens' PackageConfig (Flag DumpBuildInfo)
L.packageConfigDumpBuildInfo Flag DumpBuildInfo
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"run-tests" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigRunTests Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"documentation" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigDocumentation Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-hoogle" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockHoogle Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-html" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockHtml Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' Token String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"haddock-html-location" ((String -> Token) -> Flag String -> Flag' Token String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> Token
Token) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigHaddockHtmlLocation Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-foreign-libraries" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockForeignLibs Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-executables" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockExecutables Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-tests" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockTestSuites Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-benchmarks" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockBenchmarks Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-internal" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockInternal Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"haddock-css" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigHaddockCss Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-hyperlink-source" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockLinkedSource Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-quickjump" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockQuickJump Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag PathTemplate
      -> Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"haddock-hscolour-css" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigHaddockHscolourCss Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag PathTemplate
   -> Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
-> ParsecFieldGrammar
     PackageConfig
     (Flag PathTemplate
      -> Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-contents-location" ALens' PackageConfig (Flag PathTemplate)
Lens' PackageConfig (Flag PathTemplate)
L.packageConfigHaddockContents Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag PathTemplate
   -> Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-index-location" ALens' PackageConfig (Flag PathTemplate)
Lens' PackageConfig (Flag PathTemplate)
L.packageConfigHaddockIndex Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' Token String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"haddock-base-url" ((String -> Token) -> Flag String -> Flag' Token String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> Token
Token) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigHaddockBaseUrl Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' Token String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"haddock-resources-dir" ((String -> Token) -> Flag String -> Flag' Token String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> Token
Token) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigHaddockResourcesDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"haddock-output-dir" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigHaddockOutputDir Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag HaddockTarget
      -> Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-use-unicode" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigHaddockUseUnicode Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag HaddockTarget
   -> Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag HaddockTarget)
-> ParsecFieldGrammar
     PackageConfig
     (Flag PathTemplate
      -> Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag HaddockTarget)
-> Flag HaddockTarget
-> ParsecFieldGrammar PackageConfig (Flag HaddockTarget)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"haddock-for-hackage" ALens' PackageConfig (Flag HaddockTarget)
Lens' PackageConfig (Flag HaddockTarget)
L.packageConfigHaddockForHackage Flag HaddockTarget
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag PathTemplate
   -> Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
-> ParsecFieldGrammar
     PackageConfig
     (Flag PathTemplate
      -> Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"test-log" ALens' PackageConfig (Flag PathTemplate)
Lens' PackageConfig (Flag PathTemplate)
L.packageConfigTestHumanLog Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag PathTemplate
   -> Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
-> ParsecFieldGrammar
     PackageConfig
     (Flag TestShowDetails
      -> Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag PathTemplate)
-> Flag PathTemplate
-> ParsecFieldGrammar PackageConfig (Flag PathTemplate)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"test-machine-log" ALens' PackageConfig (Flag PathTemplate)
Lens' PackageConfig (Flag PathTemplate)
L.packageConfigTestMachineLog Flag PathTemplate
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag TestShowDetails
   -> Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag TestShowDetails)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool
      -> Flag String
      -> Flag Bool
      -> [PathTemplate]
      -> [PathTemplate]
      -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag TestShowDetails)
-> Flag TestShowDetails
-> ParsecFieldGrammar PackageConfig (Flag TestShowDetails)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"test-show-details" ALens' PackageConfig (Flag TestShowDetails)
Lens' PackageConfig (Flag TestShowDetails)
L.packageConfigTestShowDetails Flag TestShowDetails
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool
   -> Flag String
   -> Flag Bool
   -> [PathTemplate]
   -> [PathTemplate]
   -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig
     (Flag String
      -> Flag Bool -> [PathTemplate] -> [PathTemplate] -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"test-keep-tix-files" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigTestKeepTix Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag String
   -> Flag Bool -> [PathTemplate] -> [PathTemplate] -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag String)
-> ParsecFieldGrammar
     PackageConfig
     (Flag Bool -> [PathTemplate] -> [PathTemplate] -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> (Flag String -> Flag' FilePathNT String)
-> ALens' PackageConfig (Flag String)
-> Flag String
-> ParsecFieldGrammar PackageConfig (Flag String)
forall b a s.
(Parsec b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =>
FieldName -> (a -> b) -> ALens' s a -> a -> g s a
optionalFieldDefAla FieldName
"test-wrapper" ((String -> FilePathNT) -> Flag String -> Flag' FilePathNT String
forall a b. (a -> b) -> Flag a -> Flag' b a
alaFlag String -> FilePathNT
FilePathNT) ALens' PackageConfig (Flag String)
Lens' PackageConfig (Flag String)
L.packageConfigTestWrapper Flag String
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig
  (Flag Bool -> [PathTemplate] -> [PathTemplate] -> PackageConfig)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar
     PackageConfig ([PathTemplate] -> [PathTemplate] -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"test-fail-when-no-test-suites" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigTestFailWhenNoTestSuites Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar
  PackageConfig ([PathTemplate] -> [PathTemplate] -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [PathTemplate]
-> ParsecFieldGrammar
     PackageConfig ([PathTemplate] -> PackageConfig)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([PathTemplate]
    -> List NoCommaFSep (Identity PathTemplate) PathTemplate)
-> ALens' PackageConfig [PathTemplate]
-> ParsecFieldGrammar PackageConfig [PathTemplate]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"test-options" (NoCommaFSep
-> [PathTemplate]
-> List NoCommaFSep (Identity PathTemplate) PathTemplate
forall sep a. sep -> [a] -> List sep (Identity a) a
alaList NoCommaFSep
NoCommaFSep) ALens' PackageConfig [PathTemplate]
Lens' PackageConfig [PathTemplate]
L.packageConfigTestTestOptions
    ParsecFieldGrammar PackageConfig ([PathTemplate] -> PackageConfig)
-> ParsecFieldGrammar PackageConfig [PathTemplate]
-> ParsecFieldGrammar PackageConfig PackageConfig
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ([PathTemplate]
    -> List NoCommaFSep (Identity PathTemplate) PathTemplate)
-> ALens' PackageConfig [PathTemplate]
-> ParsecFieldGrammar PackageConfig [PathTemplate]
forall b a s.
(Parsec b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =>
FieldName -> (a -> b) -> ALens' s a -> g s a
monoidalFieldAla FieldName
"benchmark-options" (NoCommaFSep
-> [PathTemplate]
-> List NoCommaFSep (Identity PathTemplate) PathTemplate
forall sep a. sep -> [a] -> List sep (Identity a) a
alaList NoCommaFSep
NoCommaFSep) ALens' PackageConfig [PathTemplate]
Lens' PackageConfig [PathTemplate]
L.packageConfigBenchmarkOptions
    -- A PackageConfig may contain -options and -location fields inside a package * (projectConfigAllPackages) or package <name> stanza (packageConfigSpecificPackage).
    -- When declared at top level (packageConfigLocalPackages), the PackageConfig must contain a program-options stanza/program-locations for these fields.
    ParsecFieldGrammar PackageConfig PackageConfig
-> ParsecFieldGrammar PackageConfig ()
-> ParsecFieldGrammar PackageConfig PackageConfig
forall a b.
ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
-> ParsecFieldGrammar PackageConfig a
forall (f :: * -> *) a b. Applicative f => f a -> f b -> f a
<* (String -> ParsecFieldGrammar PackageConfig ())
-> [String] -> ParsecFieldGrammar PackageConfig ()
forall (t :: * -> *) (f :: * -> *) a b.
(Foldable t, Applicative f) =>
(a -> f b) -> t a -> f ()
traverse_ (FieldName -> ParsecFieldGrammar PackageConfig ()
forall s. FieldName -> ParsecFieldGrammar s ()
forall (c :: * -> Constraint) (g :: * -> * -> *) s.
FieldGrammar c g =>
FieldName -> g s ()
knownField (FieldName -> ParsecFieldGrammar PackageConfig ())
-> (String -> FieldName)
-> String
-> ParsecFieldGrammar PackageConfig ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> FieldName
BS.pack (String -> FieldName) -> (String -> String) -> String -> FieldName
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (String -> String -> String
forall a. Semigroup a => a -> a -> a
<> String
"-options")) [String]
knownPrograms
    ParsecFieldGrammar PackageConfig PackageConfig
-> ParsecFieldGrammar PackageConfig ()
-> ParsecFieldGrammar PackageConfig PackageConfig
forall a b.
ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
-> ParsecFieldGrammar PackageConfig a
forall (f :: * -> *) a b. Applicative f => f a -> f b -> f a
<* (String -> ParsecFieldGrammar PackageConfig ())
-> [String] -> ParsecFieldGrammar PackageConfig ()
forall (t :: * -> *) (f :: * -> *) a b.
(Foldable t, Applicative f) =>
(a -> f b) -> t a -> f ()
traverse_ (FieldName -> ParsecFieldGrammar PackageConfig ()
forall s. FieldName -> ParsecFieldGrammar s ()
forall (c :: * -> Constraint) (g :: * -> * -> *) s.
FieldGrammar c g =>
FieldName -> g s ()
knownField (FieldName -> ParsecFieldGrammar PackageConfig ())
-> (String -> FieldName)
-> String
-> ParsecFieldGrammar PackageConfig ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. String -> FieldName
BS.pack (String -> FieldName) -> (String -> String) -> String -> FieldName
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (String -> String -> String
forall a. Semigroup a => a -> a -> a
<> String
"-location")) [String]
knownPrograms
  where
    noopLens :: (t -> f b) -> a -> f a
noopLens t -> f b
f a
s = a
s a -> f b -> f a
forall a b. a -> f b -> f a
forall (f :: * -> *) a b. Functor f => a -> f b -> f a
<$ t -> f b
f t
forall a. Monoid a => a
mempty
    mkPackageConfig :: Flag Bool
-> MapLast String String
-> MapMappend String [String]
-> NubList String
-> FlagAssignment
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag ProfDetailLevel
-> Flag ProfDetailLevel
-> [String]
-> Flag OptimisationLevel
-> Flag PathTemplate
-> Flag PathTemplate
-> [String]
-> [String]
-> [String]
-> [String]
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag DebugInfoLevel
-> Flag DumpBuildInfo
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag Bool
-> Flag Bool
-> Flag String
-> Flag PathTemplate
-> Flag PathTemplate
-> Flag String
-> Flag String
-> Flag String
-> Flag Bool
-> Flag HaddockTarget
-> Flag PathTemplate
-> Flag PathTemplate
-> Flag TestShowDetails
-> Flag Bool
-> Flag String
-> Flag Bool
-> [PathTemplate]
-> [PathTemplate]
-> PackageConfig
mkPackageConfig
      Flag Bool
haddockAll
      MapLast String String
packageConfigProgramPaths
      MapMappend String [String]
packageConfigProgramArgs
      NubList String
packageConfigProgramPathExtra
      FlagAssignment
packageConfigFlagAssignment
      Flag Bool
packageConfigVanillaLib
      Flag Bool
packageConfigSharedLib
      Flag Bool
packageConfigStaticLib
      Flag Bool
packageConfigBytecodeLib
      Flag Bool
packageConfigDynExe
      Flag Bool
packageConfigFullyStaticExe
      Flag Bool
packageConfigProf
      Flag Bool
packageConfigProfLib
      Flag Bool
packageConfigProfShared
      Flag Bool
packageConfigProfExe
      Flag ProfDetailLevel
packageConfigProfDetail
      Flag ProfDetailLevel
packageConfigProfLibDetail
      [String]
packageConfigConfigureArgs
      Flag OptimisationLevel
packageConfigOptimization
      Flag PathTemplate
packageConfigProgPrefix
      Flag PathTemplate
packageConfigProgSuffix
      [String]
packageConfigExtraLibDirs
      [String]
packageConfigExtraLibDirsStatic
      [String]
packageConfigExtraFrameworkDirs
      [String]
packageConfigExtraIncludeDirs
      Flag Bool
packageConfigGHCiLib
      Flag Bool
packageConfigSplitSections
      Flag Bool
packageConfigSplitObjs
      Flag Bool
packageConfigStripExes
      Flag Bool
packageConfigStripLibs
      Flag Bool
packageConfigTests
      Flag Bool
packageConfigBenchmarks
      Flag Bool
packageConfigCoverage
      Flag Bool
packageConfigRelocatable
      Flag DebugInfoLevel
packageConfigDebugInfo
      Flag DumpBuildInfo
packageConfigDumpBuildInfo
      Flag Bool
packageConfigRunTests
      Flag Bool
packageConfigDocumentation
      Flag Bool
packageConfigHaddockHoogle
      Flag Bool
packageConfigHaddockHtml
      Flag String
packageConfigHaddockHtmlLocation
      Flag Bool
packageConfigHaddockForeignLibs'
      Flag Bool
packageConfigHaddockExecutables'
      Flag Bool
packageConfigHaddockTestSuites'
      Flag Bool
packageConfigHaddockBenchmarks'
      Flag Bool
packageConfigHaddockInternal
      Flag String
packageConfigHaddockCss
      Flag Bool
packageConfigHaddockLinkedSource
      Flag Bool
packageConfigHaddockQuickJump
      Flag String
packageConfigHaddockHscolourCss
      Flag PathTemplate
packageConfigHaddockContents
      Flag PathTemplate
packageConfigHaddockIndex
      Flag String
packageConfigHaddockBaseUrl
      Flag String
packageConfigHaddockResourcesDir
      Flag String
packageConfigHaddockOutputDir
      Flag Bool
packageConfigHaddockUseUnicode
      Flag HaddockTarget
packageConfigHaddockForHackage
      Flag PathTemplate
packageConfigTestHumanLog
      Flag PathTemplate
packageConfigTestMachineLog
      Flag TestShowDetails
packageConfigTestShowDetails
      Flag Bool
packageConfigTestKeepTix
      Flag String
packageConfigTestWrapper
      Flag Bool
packageConfigTestFailWhenNoTestSuites
      [PathTemplate]
packageConfigTestTestOptions
      [PathTemplate]
packageConfigBenchmarkOptions =
        PackageConfig
          { -- The haddock-al` field provides a default value, but explicit declarations can override it
            packageConfigHaddockForeignLibs :: Flag Bool
packageConfigHaddockForeignLibs = Flag Bool
haddockAll Flag Bool -> Flag Bool -> Flag Bool
forall a. Semigroup a => a -> a -> a
<> Flag Bool
packageConfigHaddockForeignLibs'
          , packageConfigHaddockExecutables :: Flag Bool
packageConfigHaddockExecutables = Flag Bool
haddockAll Flag Bool -> Flag Bool -> Flag Bool
forall a. Semigroup a => a -> a -> a
<> Flag Bool
packageConfigHaddockExecutables'
          , packageConfigHaddockTestSuites :: Flag Bool
packageConfigHaddockTestSuites = Flag Bool
haddockAll Flag Bool -> Flag Bool -> Flag Bool
forall a. Semigroup a => a -> a -> a
<> Flag Bool
packageConfigHaddockTestSuites'
          , packageConfigHaddockBenchmarks :: Flag Bool
packageConfigHaddockBenchmarks = Flag Bool
haddockAll Flag Bool -> Flag Bool -> Flag Bool
forall a. Semigroup a => a -> a -> a
<> Flag Bool
packageConfigHaddockBenchmarks'
          , [String]
[PathTemplate]
NubList String
FlagAssignment
Flag Bool
Flag String
Flag PathTemplate
Flag DumpBuildInfo
Flag DebugInfoLevel
Flag OptimisationLevel
Flag ProfDetailLevel
Flag TestShowDetails
Flag HaddockTarget
MapLast String String
MapMappend String [String]
packageConfigProgramPaths :: MapLast String String
packageConfigProgramArgs :: MapMappend String [String]
packageConfigProgramPathExtra :: NubList String
packageConfigFlagAssignment :: FlagAssignment
packageConfigVanillaLib :: Flag Bool
packageConfigSharedLib :: Flag Bool
packageConfigStaticLib :: Flag Bool
packageConfigBytecodeLib :: Flag Bool
packageConfigDynExe :: Flag Bool
packageConfigFullyStaticExe :: Flag Bool
packageConfigProf :: Flag Bool
packageConfigProfLib :: Flag Bool
packageConfigProfShared :: Flag Bool
packageConfigProfExe :: Flag Bool
packageConfigProfDetail :: Flag ProfDetailLevel
packageConfigProfLibDetail :: Flag ProfDetailLevel
packageConfigConfigureArgs :: [String]
packageConfigOptimization :: Flag OptimisationLevel
packageConfigProgPrefix :: Flag PathTemplate
packageConfigProgSuffix :: Flag PathTemplate
packageConfigExtraLibDirs :: [String]
packageConfigExtraLibDirsStatic :: [String]
packageConfigExtraFrameworkDirs :: [String]
packageConfigExtraIncludeDirs :: [String]
packageConfigGHCiLib :: Flag Bool
packageConfigSplitSections :: Flag Bool
packageConfigSplitObjs :: Flag Bool
packageConfigStripExes :: Flag Bool
packageConfigStripLibs :: Flag Bool
packageConfigTests :: Flag Bool
packageConfigBenchmarks :: Flag Bool
packageConfigCoverage :: Flag Bool
packageConfigRelocatable :: Flag Bool
packageConfigDebugInfo :: Flag DebugInfoLevel
packageConfigDumpBuildInfo :: Flag DumpBuildInfo
packageConfigRunTests :: Flag Bool
packageConfigDocumentation :: Flag Bool
packageConfigHaddockHoogle :: Flag Bool
packageConfigHaddockHtml :: Flag Bool
packageConfigHaddockHtmlLocation :: Flag String
packageConfigHaddockInternal :: Flag Bool
packageConfigHaddockCss :: Flag String
packageConfigHaddockLinkedSource :: Flag Bool
packageConfigHaddockQuickJump :: Flag Bool
packageConfigHaddockHscolourCss :: Flag String
packageConfigHaddockContents :: Flag PathTemplate
packageConfigHaddockIndex :: Flag PathTemplate
packageConfigHaddockBaseUrl :: Flag String
packageConfigHaddockResourcesDir :: Flag String
packageConfigHaddockOutputDir :: Flag String
packageConfigHaddockUseUnicode :: Flag Bool
packageConfigHaddockForHackage :: Flag HaddockTarget
packageConfigTestHumanLog :: Flag PathTemplate
packageConfigTestMachineLog :: Flag PathTemplate
packageConfigTestShowDetails :: Flag TestShowDetails
packageConfigTestKeepTix :: Flag Bool
packageConfigTestWrapper :: Flag String
packageConfigTestFailWhenNoTestSuites :: Flag Bool
packageConfigTestTestOptions :: [PathTemplate]
packageConfigBenchmarkOptions :: [PathTemplate]
packageConfigBenchmarkOptions :: [PathTemplate]
packageConfigBenchmarks :: Flag Bool
packageConfigBytecodeLib :: Flag Bool
packageConfigConfigureArgs :: [String]
packageConfigCoverage :: Flag Bool
packageConfigDebugInfo :: Flag DebugInfoLevel
packageConfigDocumentation :: Flag Bool
packageConfigDumpBuildInfo :: Flag DumpBuildInfo
packageConfigDynExe :: Flag Bool
packageConfigExtraFrameworkDirs :: [String]
packageConfigExtraIncludeDirs :: [String]
packageConfigExtraLibDirs :: [String]
packageConfigExtraLibDirsStatic :: [String]
packageConfigFlagAssignment :: FlagAssignment
packageConfigFullyStaticExe :: Flag Bool
packageConfigGHCiLib :: Flag Bool
packageConfigHaddockBaseUrl :: Flag String
packageConfigHaddockContents :: Flag PathTemplate
packageConfigHaddockCss :: Flag String
packageConfigHaddockForHackage :: Flag HaddockTarget
packageConfigHaddockHoogle :: Flag Bool
packageConfigHaddockHscolourCss :: Flag String
packageConfigHaddockHtml :: Flag Bool
packageConfigHaddockHtmlLocation :: Flag String
packageConfigHaddockIndex :: Flag PathTemplate
packageConfigHaddockInternal :: Flag Bool
packageConfigHaddockLinkedSource :: Flag Bool
packageConfigHaddockOutputDir :: Flag String
packageConfigHaddockQuickJump :: Flag Bool
packageConfigHaddockResourcesDir :: Flag String
packageConfigHaddockUseUnicode :: Flag Bool
packageConfigOptimization :: Flag OptimisationLevel
packageConfigProf :: Flag Bool
packageConfigProfDetail :: Flag ProfDetailLevel
packageConfigProfExe :: Flag Bool
packageConfigProfLib :: Flag Bool
packageConfigProfLibDetail :: Flag ProfDetailLevel
packageConfigProfShared :: Flag Bool
packageConfigProgPrefix :: Flag PathTemplate
packageConfigProgSuffix :: Flag PathTemplate
packageConfigProgramArgs :: MapMappend String [String]
packageConfigProgramPathExtra :: NubList String
packageConfigProgramPaths :: MapLast String String
packageConfigRelocatable :: Flag Bool
packageConfigRunTests :: Flag Bool
packageConfigSharedLib :: Flag Bool
packageConfigSplitObjs :: Flag Bool
packageConfigSplitSections :: Flag Bool
packageConfigStaticLib :: Flag Bool
packageConfigStripExes :: Flag Bool
packageConfigStripLibs :: Flag Bool
packageConfigTestFailWhenNoTestSuites :: Flag Bool
packageConfigTestHumanLog :: Flag PathTemplate
packageConfigTestKeepTix :: Flag Bool
packageConfigTestMachineLog :: Flag PathTemplate
packageConfigTestShowDetails :: Flag TestShowDetails
packageConfigTestTestOptions :: [PathTemplate]
packageConfigTestWrapper :: Flag String
packageConfigTests :: Flag Bool
packageConfigVanillaLib :: Flag Bool
..
          }

packageConfigCoverageGrammar :: ParsecFieldGrammar PackageConfig (Distribution.Simple.Flag.Flag Bool)
packageConfigCoverageGrammar :: ParsecFieldGrammar PackageConfig (Flag Bool)
packageConfigCoverageGrammar =
  Flag Bool -> Flag Bool -> Flag Bool
forall a. Semigroup a => a -> a -> a
(<>)
    (Flag Bool -> Flag Bool -> Flag Bool)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar PackageConfig (Flag Bool -> Flag Bool)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"coverage" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigCoverage Flag Bool
forall a. Monoid a => a
mempty
    ParsecFieldGrammar PackageConfig (Flag Bool -> Flag Bool)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall a b.
ParsecFieldGrammar PackageConfig (a -> b)
-> ParsecFieldGrammar PackageConfig a
-> ParsecFieldGrammar PackageConfig b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> FieldName
-> ALens' PackageConfig (Flag Bool)
-> Flag Bool
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall (c :: * -> Constraint) (g :: * -> * -> *) a s.
(FieldGrammar c g, c (Identity a), Eq a) =>
FieldName -> ALens' s a -> a -> g s a
optionalFieldDef FieldName
"library-coverage" ALens' PackageConfig (Flag Bool)
Lens' PackageConfig (Flag Bool)
L.packageConfigCoverage Flag Bool
forall a. Monoid a => a
mempty
      ParsecFieldGrammar PackageConfig (Flag Bool)
-> (ParsecFieldGrammar PackageConfig (Flag Bool)
    -> ParsecFieldGrammar PackageConfig (Flag Bool))
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall a b. a -> (a -> b) -> b
^^^ CabalSpecVersion
-> String
-> ParsecFieldGrammar PackageConfig (Flag Bool)
-> ParsecFieldGrammar PackageConfig (Flag Bool)
forall s a.
CabalSpecVersion
-> String -> ParsecFieldGrammar s a -> ParsecFieldGrammar s a
forall (c :: * -> Constraint) (g :: * -> * -> *) s a.
FieldGrammar c g =>
CabalSpecVersion -> String -> g s a -> g s a
deprecatedSince CabalSpecVersion
CabalSpecV1_22 String
"Please use 'coverage' field instead."