hpack-0.38.0: A modern format for Haskell packages

Safe Haskell | None
Language | Haskell2010

Hpack.Config

Synopsis

- data DecodeOptions = DecodeOptions {
  - decodeOptionsProgramName :: ProgramName
  - decodeOptionsTarget :: FilePath
  - decodeOptionsUserDataDir :: Maybe FilePath
  - decodeOptionsDecode :: FilePath -> IO (Either String ([String], Value))
  - decodeOptionsFormatYamlParseError :: FilePath -> ParseException -> String
  }
- newtype ProgramName = ProgramName {
  - unProgramName :: String
  }
- defaultDecodeOptions :: DecodeOptions
- packageConfig :: FilePath
- data DecodeResult = DecodeResult {
  - decodeResultPackage :: Package
  - decodeResultCabalVersion :: String
  - decodeResultCabalFile :: FilePath
  - decodeResultWarnings :: [String]
  }
- readPackageConfig :: DecodeOptions -> IO (Either String DecodeResult)
- readPackageConfigWithError :: DecodeOptions -> IO (Either HpackError DecodeResult)
- renamePackage :: String -> Package -> Package
- packageDependencies :: Package -> [(String, DependencyInfo)]
- package :: String -> String -> Package
- section :: a -> Section a
- data Package = Package {
  - packageCabalVersion :: CabalVersion
  - packageName :: String
  - packageVersion :: String
  - packageSynopsis :: Maybe String
  - packageDescription :: Maybe String
  - packageHomepage :: Maybe String
  - packageBugReports :: Maybe String
  - packageCategory :: Maybe String
  - packageStability :: Maybe String
  - packageAuthor :: [String]
  - packageMaintainer :: [String]
  - packageCopyright :: [String]
  - packageBuildType :: BuildType
  - packageLicense :: Maybe String
  - packageLicenseFile :: [FilePath]
  - packageTestedWith :: [String]
  - packageFlags :: [Flag]
  - packageExtraSourceFiles :: [Path]
  - packageExtraDocFiles :: [Path]
  - packageDataFiles :: [Path]
  - packageDataDir :: Maybe FilePath
  - packageSourceRepository :: Maybe SourceRepository
  - packageCustomSetup :: Maybe CustomSetup
  - packageLibrary :: Maybe (Section Library)
  - packageInternalLibraries :: Map String (Section Library)
  - packageExecutables :: Map String (Section Executable)
  - packageTests :: Map String (Section Executable)
  - packageBenchmarks :: Map String (Section Executable)
  - packageVerbatim :: [Verbatim]
  }
- data CabalVersion
  - = CabalVersion Version
  - | VerbatimCabalVersion String
- makeCabalVersion :: [Int] -> CabalVersion
- newtype Dependencies = Dependencies {
  - unDependencies :: Map String DependencyInfo
  }
- data DependencyInfo = DependencyInfo {
  - dependencyInfoMixins :: [String]
  - dependencyInfoVersion :: DependencyVersion
  }
- data VersionConstraint
  - = AnyVersion
  - | VersionRange String
- data DependencyVersion = DependencyVersion (Maybe SourceDependency) VersionConstraint
- data SourceDependency
  - = GitRef GitUrl GitRef (Maybe FilePath)
  - | Local FilePath
- type GitRef = String
- type GitUrl = String
- data BuildTool
  - = BuildTool String String
  - | LocalBuildTool String
- newtype SystemBuildTools = SystemBuildTools {
  - unSystemBuildTools :: Map String VersionConstraint
  }
- type GhcOption = String
- data Verbatim
  - = VerbatimLiteral String
  - | VerbatimObject (Map String VerbatimValue)
- data VerbatimValue
  - = VerbatimString String
  - | VerbatimNumber Scientific
  - | VerbatimBool Bool
  - | VerbatimNull
- verbatimValueToString :: VerbatimValue -> String
- data CustomSetup = CustomSetup {
  - customSetupDependencies :: Dependencies
  }
- data Section a = Section {
  - sectionData :: a
  - sectionSourceDirs :: [FilePath]
  - sectionDependencies :: Dependencies
  - sectionPkgConfigDependencies :: [String]
  - sectionDefaultExtensions :: [String]
  - sectionOtherExtensions :: [String]
  - sectionLanguage :: Maybe Language
  - sectionGhcOptions :: [GhcOption]
  - sectionGhcProfOptions :: [GhcProfOption]
  - sectionGhcSharedOptions :: [GhcOption]
  - sectionGhcjsOptions :: [GhcjsOption]
  - sectionCppOptions :: [CppOption]
  - sectionAsmOptions :: [AsmOption]
  - sectionAsmSources :: [Path]
  - sectionCcOptions :: [CcOption]
  - sectionCSources :: [Path]
  - sectionCxxOptions :: [CxxOption]
  - sectionCxxSources :: [Path]
  - sectionJsSources :: [Path]
  - sectionExtraLibDirs :: [FilePath]
  - sectionExtraLibraries :: [FilePath]
  - sectionExtraFrameworksDirs :: [FilePath]
  - sectionFrameworks :: [FilePath]
  - sectionIncludeDirs :: [FilePath]
  - sectionInstallIncludes :: [FilePath]
  - sectionLdOptions :: [LdOption]
  - sectionBuildable :: Maybe Bool
  - sectionConditionals :: [Conditional (Section a)]
  - sectionBuildTools :: Map BuildTool DependencyVersion
  - sectionSystemBuildTools :: SystemBuildTools
  - sectionVerbatim :: [Verbatim]
  }
- data Library = Library {
  - libraryExposed :: Maybe Bool
  - libraryVisibility :: Maybe String
  - libraryExposedModules :: [Module]
  - libraryOtherModules :: [Module]
  - libraryGeneratedModules :: [Module]
  - libraryReexportedModules :: [String]
  - librarySignatures :: [String]
  }
- data Executable = Executable {
  - executableMain :: Maybe FilePath
  - executableOtherModules :: [Module]
  - executableGeneratedModules :: [Module]
  }
- data Conditional a = Conditional {
  - conditionalCondition :: Cond
  - conditionalThen :: a
  - conditionalElse :: Maybe a
  }
- data Cond
  - = CondBool Bool
  - | CondExpression String
- data Flag = Flag {
  - flagName :: String
  - flagDescription :: Maybe String
  - flagManual :: Bool
  - flagDefault :: Bool
  }
- data SourceRepository = SourceRepository {
  - sourceRepositoryUrl :: String
  - sourceRepositorySubdir :: Maybe String
  }
- newtype Language = Language String
- data BuildType
  - = Simple
  - | Configure
  - | Make
  - | Custom
- type GhcProfOption = String
- type GhcjsOption = String
- type CppOption = String
- type AsmOption = String
- type CcOption = String
- type LdOption = String
- newtype Path = Path {
  - unPath :: FilePath
  }
- newtype Module = Module {
  - unModule :: String
  }

# Documentation

NOTE: This module is exposed to allow integration of Hpack into other tools. It is not meant for general use by end users. The following caveats apply:

- The API is undocumented, consult the source instead.
- The exposed types and functions primarily serve Hpack's own needs, not that of a public API. Breaking changes can happen as Hpack evolves.

As an Hpack user you either want to use the `hpack` executable or a build tool that supports Hpack (e.g. `stack` or `cabal2nix`).

data DecodeOptions #

Constructors

DecodeOptions |

Fields

- decodeOptionsProgramName :: ProgramName
- decodeOptionsTarget :: FilePath
- decodeOptionsUserDataDir :: Maybe FilePath
- decodeOptionsDecode :: FilePath -> IO (Either String ([String], Value))
- decodeOptionsFormatYamlParseError :: FilePath -> ParseException -> String

newtype ProgramName #

Constructors

ProgramName |

Fields

- unProgramName :: String

#### Instances

Instances details

IsString ProgramName # |
Instance details Defined in Hpack.Error Methods fromString :: String -> ProgramName #
Show ProgramName # |
Instance details Defined in Hpack.Error Methods showsPrec :: Int -> ProgramName -> ShowS # show :: ProgramName -> String # showList :: [ProgramName] -> ShowS #
Eq ProgramName # |
Instance details Defined in Hpack.Error Methods (==) :: ProgramName -> ProgramName -> Bool # (/=) :: ProgramName -> ProgramName -> Bool #

defaultDecodeOptions :: DecodeOptions #

packageConfig :: FilePath #

data DecodeResult #

Constructors

DecodeResult |

Fields

- decodeResultPackage :: Package
- decodeResultCabalVersion :: String
- decodeResultCabalFile :: FilePath
- decodeResultWarnings :: [String]

#### Instances

Instances details

Show DecodeResult # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> DecodeResult -> ShowS # show :: DecodeResult -> String # showList :: [DecodeResult] -> ShowS #
Eq DecodeResult # |
Instance details Defined in Hpack.Config Methods (==) :: DecodeResult -> DecodeResult -> Bool # (/=) :: DecodeResult -> DecodeResult -> Bool #

readPackageConfig :: DecodeOptions -> IO (Either String DecodeResult) #

readPackageConfigWithError :: DecodeOptions -> IO (Either HpackError DecodeResult) #

renamePackage :: String -> Package -> Package #

packageDependencies :: Package -> [(String, DependencyInfo)] #

package :: String -> String -> Package #

section :: a -> Section a #

data Package #

Constructors

Package |

Fields

- packageCabalVersion :: CabalVersion
- packageName :: String
- packageVersion :: String
- packageSynopsis :: Maybe String
- packageDescription :: Maybe String
- packageHomepage :: Maybe String
- packageBugReports :: Maybe String
- packageCategory :: Maybe String
- packageStability :: Maybe String
- packageAuthor :: [String]
- packageMaintainer :: [String]
- packageCopyright :: [String]
- packageBuildType :: BuildType
- packageLicense :: Maybe String
- packageLicenseFile :: [FilePath]
- packageTestedWith :: [String]
- packageFlags :: [Flag]
- packageExtraSourceFiles :: [Path]
- packageExtraDocFiles :: [Path]
- packageDataFiles :: [Path]
- packageDataDir :: Maybe FilePath
- packageSourceRepository :: Maybe SourceRepository
- packageCustomSetup :: Maybe CustomSetup
- packageLibrary :: Maybe (Section Library)
- packageInternalLibraries :: Map String (Section Library)
- packageExecutables :: Map String (Section Executable)
- packageTests :: Map String (Section Executable)
- packageBenchmarks :: Map String (Section Executable)
- packageVerbatim :: [Verbatim]

#### Instances

Instances details

Show Package # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Package -> ShowS # show :: Package -> String # showList :: [Package] -> ShowS #
Eq Package # |
Instance details Defined in Hpack.Config Methods (==) :: Package -> Package -> Bool # (/=) :: Package -> Package -> Bool #

data CabalVersion #

Constructors

CabalVersion Version |
VerbatimCabalVersion String |

#### Instances

Instances details

Show CabalVersion # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> CabalVersion -> ShowS # show :: CabalVersion -> String # showList :: [CabalVersion] -> ShowS #
Eq CabalVersion # |
Instance details Defined in Hpack.Config Methods (==) :: CabalVersion -> CabalVersion -> Bool # (/=) :: CabalVersion -> CabalVersion -> Bool #
Ord CabalVersion # |
Instance details Defined in Hpack.Config Methods compare :: CabalVersion -> CabalVersion -> Ordering # (<) :: CabalVersion -> CabalVersion -> Bool # (<=) :: CabalVersion -> CabalVersion -> Bool # (>) :: CabalVersion -> CabalVersion -> Bool # (>=) :: CabalVersion -> CabalVersion -> Bool # max :: CabalVersion -> CabalVersion -> CabalVersion # min :: CabalVersion -> CabalVersion -> CabalVersion #

makeCabalVersion :: [Int] -> CabalVersion #

newtype Dependencies #

Constructors

Dependencies |

Fields

- unDependencies :: Map String DependencyInfo

#### Instances

Instances details

Monoid Dependencies # |
Instance details Defined in Hpack.Syntax.Dependencies Methods mempty :: Dependencies # mappend :: Dependencies -> Dependencies -> Dependencies # mconcat :: [Dependencies] -> Dependencies #
Semigroup Dependencies # |
Instance details Defined in Hpack.Syntax.Dependencies Methods (<>) :: Dependencies -> Dependencies -> Dependencies # sconcat :: NonEmpty Dependencies -> Dependencies # stimes :: Integral b => b -> Dependencies -> Dependencies #
IsList Dependencies # |

Instance details

Defined in Hpack.Syntax.Dependencies

Associated Types

type Item Dependencies |
Instance details Defined in Hpack.Syntax.Dependencies type Item Dependencies = (String, DependencyInfo)

Methods

fromList :: [Item Dependencies] -> Dependencies #

fromListN :: Int -> [Item Dependencies] -> Dependencies #

toList :: Dependencies -> [Item Dependencies] #

Show Dependencies # |
Instance details Defined in Hpack.Syntax.Dependencies Methods showsPrec :: Int -> Dependencies -> ShowS # show :: Dependencies -> String # showList :: [Dependencies] -> ShowS #
Eq Dependencies # |
Instance details Defined in Hpack.Syntax.Dependencies Methods (==) :: Dependencies -> Dependencies -> Bool # (/=) :: Dependencies -> Dependencies -> Bool #
FromValue Dependencies # |
Instance details Defined in Hpack.Syntax.Dependencies Methods fromValue :: Value -> Parser Dependencies #
type Item Dependencies # |
Instance details Defined in Hpack.Syntax.Dependencies type Item Dependencies = (String, DependencyInfo)

data DependencyInfo #

Constructors

DependencyInfo |

Fields

- dependencyInfoMixins :: [String]
- dependencyInfoVersion :: DependencyVersion

#### Instances

Instances details

Show DependencyInfo # |
Instance details Defined in Hpack.Syntax.Dependencies Methods showsPrec :: Int -> DependencyInfo -> ShowS # show :: DependencyInfo -> String # showList :: [DependencyInfo] -> ShowS #
Eq DependencyInfo # |
Instance details Defined in Hpack.Syntax.Dependencies Methods (==) :: DependencyInfo -> DependencyInfo -> Bool # (/=) :: DependencyInfo -> DependencyInfo -> Bool #
Ord DependencyInfo # |

Instance details

Defined in Hpack.Syntax.Dependencies

Methods

compare :: DependencyInfo -> DependencyInfo -> Ordering #

(<) :: DependencyInfo -> DependencyInfo -> Bool #

(<=) :: DependencyInfo -> DependencyInfo -> Bool #

(>) :: DependencyInfo -> DependencyInfo -> Bool #

(>=) :: DependencyInfo -> DependencyInfo -> Bool #

max :: DependencyInfo -> DependencyInfo -> DependencyInfo #

min :: DependencyInfo -> DependencyInfo -> DependencyInfo #

data VersionConstraint #

Constructors

AnyVersion |
VersionRange String |

#### Instances

Instances details

Show VersionConstraint # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods showsPrec :: Int -> VersionConstraint -> ShowS # show :: VersionConstraint -> String # showList :: [VersionConstraint] -> ShowS #
Eq VersionConstraint # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods (==) :: VersionConstraint -> VersionConstraint -> Bool # (/=) :: VersionConstraint -> VersionConstraint -> Bool #
Ord VersionConstraint # |

Instance details

Defined in Hpack.Syntax.DependencyVersion

Methods

compare :: VersionConstraint -> VersionConstraint -> Ordering #

(<) :: VersionConstraint -> VersionConstraint -> Bool #

(<=) :: VersionConstraint -> VersionConstraint -> Bool #

(>) :: VersionConstraint -> VersionConstraint -> Bool #

(>=) :: VersionConstraint -> VersionConstraint -> Bool #

max :: VersionConstraint -> VersionConstraint -> VersionConstraint #

min :: VersionConstraint -> VersionConstraint -> VersionConstraint #

FromValue VersionConstraint # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods fromValue :: Value -> Parser VersionConstraint #

data DependencyVersion #

Constructors

DependencyVersion (Maybe SourceDependency) VersionConstraint |

#### Instances

Instances details

Show DependencyVersion # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods showsPrec :: Int -> DependencyVersion -> ShowS # show :: DependencyVersion -> String # showList :: [DependencyVersion] -> ShowS #
Eq DependencyVersion # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods (==) :: DependencyVersion -> DependencyVersion -> Bool # (/=) :: DependencyVersion -> DependencyVersion -> Bool #
Ord DependencyVersion # |

Instance details

Defined in Hpack.Syntax.DependencyVersion

Methods

compare :: DependencyVersion -> DependencyVersion -> Ordering #

(<) :: DependencyVersion -> DependencyVersion -> Bool #

(<=) :: DependencyVersion -> DependencyVersion -> Bool #

(>) :: DependencyVersion -> DependencyVersion -> Bool #

(>=) :: DependencyVersion -> DependencyVersion -> Bool #

max :: DependencyVersion -> DependencyVersion -> DependencyVersion #

min :: DependencyVersion -> DependencyVersion -> DependencyVersion #

data SourceDependency #

Constructors

GitRef GitUrl GitRef (Maybe FilePath) |
Local FilePath |

#### Instances

Instances details

Show SourceDependency # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods showsPrec :: Int -> SourceDependency -> ShowS # show :: SourceDependency -> String # showList :: [SourceDependency] -> ShowS #
Eq SourceDependency # |
Instance details Defined in Hpack.Syntax.DependencyVersion Methods (==) :: SourceDependency -> SourceDependency -> Bool # (/=) :: SourceDependency -> SourceDependency -> Bool #
Ord SourceDependency # |

Instance details

Defined in Hpack.Syntax.DependencyVersion

Methods

compare :: SourceDependency -> SourceDependency -> Ordering #

(<) :: SourceDependency -> SourceDependency -> Bool #

(<=) :: SourceDependency -> SourceDependency -> Bool #

(>) :: SourceDependency -> SourceDependency -> Bool #

(>=) :: SourceDependency -> SourceDependency -> Bool #

max :: SourceDependency -> SourceDependency -> SourceDependency #

min :: SourceDependency -> SourceDependency -> SourceDependency #

type GitRef = String #

type GitUrl = String #

data BuildTool #

Constructors

BuildTool String String |
LocalBuildTool String |

#### Instances

Instances details

Show BuildTool # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> BuildTool -> ShowS # show :: BuildTool -> String # showList :: [BuildTool] -> ShowS #
Eq BuildTool # |
Instance details Defined in Hpack.Config Methods (==) :: BuildTool -> BuildTool -> Bool # (/=) :: BuildTool -> BuildTool -> Bool #
Ord BuildTool # |
Instance details Defined in Hpack.Config Methods compare :: BuildTool -> BuildTool -> Ordering # (<) :: BuildTool -> BuildTool -> Bool # (<=) :: BuildTool -> BuildTool -> Bool # (>) :: BuildTool -> BuildTool -> Bool # (>=) :: BuildTool -> BuildTool -> Bool # max :: BuildTool -> BuildTool -> BuildTool # min :: BuildTool -> BuildTool -> BuildTool #

newtype SystemBuildTools #

Constructors

SystemBuildTools |

Fields

- unSystemBuildTools :: Map String VersionConstraint

#### Instances

Instances details

Monoid SystemBuildTools # |
Instance details Defined in Hpack.Syntax.BuildTools Methods mempty :: SystemBuildTools # mappend :: SystemBuildTools -> SystemBuildTools -> SystemBuildTools # mconcat :: [SystemBuildTools] -> SystemBuildTools #
Semigroup SystemBuildTools # |
Instance details Defined in Hpack.Syntax.BuildTools Methods (<>) :: SystemBuildTools -> SystemBuildTools -> SystemBuildTools # sconcat :: NonEmpty SystemBuildTools -> SystemBuildTools # stimes :: Integral b => b -> SystemBuildTools -> SystemBuildTools #
Show SystemBuildTools # |
Instance details Defined in Hpack.Syntax.BuildTools Methods showsPrec :: Int -> SystemBuildTools -> ShowS # show :: SystemBuildTools -> String # showList :: [SystemBuildTools] -> ShowS #
Eq SystemBuildTools # |
Instance details Defined in Hpack.Syntax.BuildTools Methods (==) :: SystemBuildTools -> SystemBuildTools -> Bool # (/=) :: SystemBuildTools -> SystemBuildTools -> Bool #
FromValue SystemBuildTools # |
Instance details Defined in Hpack.Syntax.BuildTools Methods fromValue :: Value -> Parser SystemBuildTools #

type GhcOption = String #

data Verbatim #

Constructors

VerbatimLiteral String |
VerbatimObject (Map String VerbatimValue) |

#### Instances

Instances details

Show Verbatim # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Verbatim -> ShowS # show :: Verbatim -> String # showList :: [Verbatim] -> ShowS #
Eq Verbatim # |
Instance details Defined in Hpack.Config Methods (==) :: Verbatim -> Verbatim -> Bool # (/=) :: Verbatim -> Verbatim -> Bool #
FromValue Verbatim # |
Instance details Defined in Hpack.Config Methods fromValue :: Value -> Parser Verbatim #

data VerbatimValue #

Constructors

VerbatimString String |
VerbatimNumber Scientific |
VerbatimBool Bool |
VerbatimNull |

#### Instances

Instances details

Show VerbatimValue # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> VerbatimValue -> ShowS # show :: VerbatimValue -> String # showList :: [VerbatimValue] -> ShowS #
Eq VerbatimValue # |
Instance details Defined in Hpack.Config Methods (==) :: VerbatimValue -> VerbatimValue -> Bool # (/=) :: VerbatimValue -> VerbatimValue -> Bool #
FromValue VerbatimValue # |
Instance details Defined in Hpack.Config Methods fromValue :: Value -> Parser VerbatimValue #

verbatimValueToString :: VerbatimValue -> String #

data CustomSetup #

Constructors

CustomSetup |

Fields

- customSetupDependencies :: Dependencies

#### Instances

Instances details

Show CustomSetup # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> CustomSetup -> ShowS # show :: CustomSetup -> String # showList :: [CustomSetup] -> ShowS #
Eq CustomSetup # |
Instance details Defined in Hpack.Config Methods (==) :: CustomSetup -> CustomSetup -> Bool # (/=) :: CustomSetup -> CustomSetup -> Bool #

data Section a #

Constructors

Section |

Fields

- sectionData :: a
- sectionSourceDirs :: [FilePath]
- sectionDependencies :: Dependencies
- sectionPkgConfigDependencies :: [String]
- sectionDefaultExtensions :: [String]
- sectionOtherExtensions :: [String]
- sectionLanguage :: Maybe Language
- sectionGhcOptions :: [GhcOption]
- sectionGhcProfOptions :: [GhcProfOption]
- sectionGhcSharedOptions :: [GhcOption]
- sectionGhcjsOptions :: [GhcjsOption]
- sectionCppOptions :: [CppOption]
- sectionAsmOptions :: [AsmOption]
- sectionAsmSources :: [Path]
- sectionCcOptions :: [CcOption]
- sectionCSources :: [Path]
- sectionCxxOptions :: [CxxOption]
- sectionCxxSources :: [Path]
- sectionJsSources :: [Path]
- sectionExtraLibDirs :: [FilePath]
- sectionExtraLibraries :: [FilePath]
- sectionExtraFrameworksDirs :: [FilePath]
- sectionFrameworks :: [FilePath]
- sectionIncludeDirs :: [FilePath]
- sectionInstallIncludes :: [FilePath]
- sectionLdOptions :: [LdOption]
- sectionBuildable :: Maybe Bool
- sectionConditionals :: [Conditional (Section a)]
- sectionBuildTools :: Map BuildTool DependencyVersion
- sectionSystemBuildTools :: SystemBuildTools
- sectionVerbatim :: [Verbatim]

#### Instances

Instances details

Functor Section # |
Instance details Defined in Hpack.Config Methods fmap :: (a -> b) -> Section a -> Section b # (<$) :: a -> Section b -> Section a #
Foldable Section # |

Instance details

Defined in Hpack.Config

Methods

fold :: Monoid m => Section m -> m #

foldMap :: Monoid m => (a -> m) -> Section a -> m #

foldMap' :: Monoid m => (a -> m) -> Section a -> m #

foldr :: (a -> b -> b) -> b -> Section a -> b #

foldr' :: (a -> b -> b) -> b -> Section a -> b #

foldl :: (b -> a -> b) -> b -> Section a -> b #

foldl' :: (b -> a -> b) -> b -> Section a -> b #

foldr1 :: (a -> a -> a) -> Section a -> a #

foldl1 :: (a -> a -> a) -> Section a -> a #

toList :: Section a -> [a] #

null :: Section a -> Bool #

length :: Section a -> Int #

elem :: Eq a => a -> Section a -> Bool #

maximum :: Ord a => Section a -> a #

minimum :: Ord a => Section a -> a #

sum :: Num a => Section a -> a #

product :: Num a => Section a -> a #

Traversable Section # |
Instance details Defined in Hpack.Config Methods traverse :: Applicative f => (a -> f b) -> Section a -> f (Section b) # sequenceA :: Applicative f => Section (f a) -> f (Section a) # mapM :: Monad m => (a -> m b) -> Section a -> m (Section b) # sequence :: Monad m => Section (m a) -> m (Section a) #
Show a => Show (Section a) # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Section a -> ShowS # show :: Section a -> String # showList :: [Section a] -> ShowS #
Eq a => Eq (Section a) # |
Instance details Defined in Hpack.Config Methods (==) :: Section a -> Section a -> Bool # (/=) :: Section a -> Section a -> Bool #

data Library #

Constructors

Library |

Fields

- libraryExposed :: Maybe Bool
- libraryVisibility :: Maybe String
- libraryExposedModules :: [Module]
- libraryOtherModules :: [Module]
- libraryGeneratedModules :: [Module]
- libraryReexportedModules :: [String]
- librarySignatures :: [String]

#### Instances

Instances details

Show Library # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Library -> ShowS # show :: Library -> String # showList :: [Library] -> ShowS #
Eq Library # |
Instance details Defined in Hpack.Config Methods (==) :: Library -> Library -> Bool # (/=) :: Library -> Library -> Bool #

data Executable #

Constructors

Executable |

Fields

- executableMain :: Maybe FilePath
- executableOtherModules :: [Module]
- executableGeneratedModules :: [Module]

#### Instances

Instances details

Show Executable # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Executable -> ShowS # show :: Executable -> String # showList :: [Executable] -> ShowS #
Eq Executable # |
Instance details Defined in Hpack.Config Methods (==) :: Executable -> Executable -> Bool # (/=) :: Executable -> Executable -> Bool #

data Conditional a #

Constructors

Conditional |

Fields

- conditionalCondition :: Cond
- conditionalThen :: a
- conditionalElse :: Maybe a

#### Instances

Instances details

Functor Conditional # |
Instance details Defined in Hpack.Config Methods fmap :: (a -> b) -> Conditional a -> Conditional b # (<$) :: a -> Conditional b -> Conditional a #
Foldable Conditional # |

Instance details

Defined in Hpack.Config

Methods

fold :: Monoid m => Conditional m -> m #

foldMap :: Monoid m => (a -> m) -> Conditional a -> m #

foldMap' :: Monoid m => (a -> m) -> Conditional a -> m #

foldr :: (a -> b -> b) -> b -> Conditional a -> b #

foldr' :: (a -> b -> b) -> b -> Conditional a -> b #

foldl :: (b -> a -> b) -> b -> Conditional a -> b #

foldl' :: (b -> a -> b) -> b -> Conditional a -> b #

foldr1 :: (a -> a -> a) -> Conditional a -> a #

foldl1 :: (a -> a -> a) -> Conditional a -> a #

toList :: Conditional a -> [a] #

null :: Conditional a -> Bool #

length :: Conditional a -> Int #

elem :: Eq a => a -> Conditional a -> Bool #

maximum :: Ord a => Conditional a -> a #

minimum :: Ord a => Conditional a -> a #

sum :: Num a => Conditional a -> a #

product :: Num a => Conditional a -> a #

Traversable Conditional # |
Instance details Defined in Hpack.Config Methods traverse :: Applicative f => (a -> f b) -> Conditional a -> f (Conditional b) # sequenceA :: Applicative f => Conditional (f a) -> f (Conditional a) # mapM :: Monad m => (a -> m b) -> Conditional a -> m (Conditional b) # sequence :: Monad m => Conditional (m a) -> m (Conditional a) #
Show a => Show (Conditional a) # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Conditional a -> ShowS # show :: Conditional a -> String # showList :: [Conditional a] -> ShowS #
Eq a => Eq (Conditional a) # |
Instance details Defined in Hpack.Config Methods (==) :: Conditional a -> Conditional a -> Bool # (/=) :: Conditional a -> Conditional a -> Bool #

data Cond #

Constructors

CondBool Bool |
CondExpression String |

#### Instances

Instances details

Show Cond # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Cond -> ShowS # show :: Cond -> String # showList :: [Cond] -> ShowS #
Eq Cond # |
Instance details Defined in Hpack.Config Methods (==) :: Cond -> Cond -> Bool # (/=) :: Cond -> Cond -> Bool #
FromValue Cond # |
Instance details Defined in Hpack.Config Methods fromValue :: Value -> Parser Cond #

data Flag #

Constructors

Flag |

Fields

- flagName :: String
- flagDescription :: Maybe String
- flagManual :: Bool
- flagDefault :: Bool

#### Instances

Instances details

Show Flag # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Flag -> ShowS # show :: Flag -> String # showList :: [Flag] -> ShowS #
Eq Flag # |
Instance details Defined in Hpack.Config Methods (==) :: Flag -> Flag -> Bool # (/=) :: Flag -> Flag -> Bool #

data SourceRepository #

Constructors

SourceRepository |

Fields

- sourceRepositoryUrl :: String
- sourceRepositorySubdir :: Maybe String

#### Instances

Instances details

Show SourceRepository # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> SourceRepository -> ShowS # show :: SourceRepository -> String # showList :: [SourceRepository] -> ShowS #
Eq SourceRepository # |
Instance details Defined in Hpack.Config Methods (==) :: SourceRepository -> SourceRepository -> Bool # (/=) :: SourceRepository -> SourceRepository -> Bool #

newtype Language #

Constructors

Language String |

#### Instances

Instances details

IsString Language # |
Instance details Defined in Hpack.Config Methods fromString :: String -> Language #
Show Language # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Language -> ShowS # show :: Language -> String # showList :: [Language] -> ShowS #
Eq Language # |
Instance details Defined in Hpack.Config Methods (==) :: Language -> Language -> Bool # (/=) :: Language -> Language -> Bool #
FromValue Language # |
Instance details Defined in Hpack.Config Methods fromValue :: Value -> Parser Language #

data BuildType #

Constructors

Simple |
Configure |
Make |
Custom |

#### Instances

Instances details

Bounded BuildType # |
Instance details Defined in Hpack.Config Methods minBound :: BuildType # maxBound :: BuildType #
Enum BuildType # |
Instance details Defined in Hpack.Config Methods succ :: BuildType -> BuildType # pred :: BuildType -> BuildType # toEnum :: Int -> BuildType # fromEnum :: BuildType -> Int # enumFrom :: BuildType -> [BuildType] # enumFromThen :: BuildType -> BuildType -> [BuildType] # enumFromTo :: BuildType -> BuildType -> [BuildType] # enumFromThenTo :: BuildType -> BuildType -> BuildType -> [BuildType] #
Show BuildType # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> BuildType -> ShowS # show :: BuildType -> String # showList :: [BuildType] -> ShowS #
Eq BuildType # |
Instance details Defined in Hpack.Config Methods (==) :: BuildType -> BuildType -> Bool # (/=) :: BuildType -> BuildType -> Bool #
FromValue BuildType # |
Instance details Defined in Hpack.Config Methods fromValue :: Value -> Parser BuildType #

type GhcProfOption = String #

type GhcjsOption = String #

type CppOption = String #

type AsmOption = String #

type CcOption = String #

type LdOption = String #

newtype Path #

Constructors

Path |

Fields

- unPath :: FilePath

#### Instances

Instances details

IsString Path # |
Instance details Defined in Hpack.Config Methods fromString :: String -> Path #
Show Path # |
Instance details Defined in Hpack.Config Methods showsPrec :: Int -> Path -> ShowS # show :: Path -> String # showList :: [Path] -> ShowS #
Eq Path # |
Instance details Defined in Hpack.Config Methods (==) :: Path -> Path -> Bool # (/=) :: Path -> Path -> Bool #
Ord Path # |
Instance details Defined in Hpack.Config Methods compare :: Path -> Path -> Ordering # (<) :: Path -> Path -> Bool # (<=) :: Path -> Path -> Bool # (>) :: Path -> Path -> Bool # (>=) :: Path -> Path -> Bool # max :: Path -> Path -> Path # min :: Path -> Path -> Path #

newtype Module #

Constructors

Module |

Fields

- unModule :: String

#### Instances

Instances details

IsString Module # |
Instance details Defined in Hpack.Module Methods fromString :: String -> Module #
Show Module # |
Instance details Defined in Hpack.Module Methods showsPrec :: Int -> Module -> ShowS # show :: Module -> String # showList :: [Module] -> ShowS #
Eq Module # |
Instance details Defined in Hpack.Module Methods (==) :: Module -> Module -> Bool # (/=) :: Module -> Module -> Bool #
Ord Module # |
Instance details Defined in Hpack.Module Methods compare :: Module -> Module -> Ordering # (<) :: Module -> Module -> Bool # (<=) :: Module -> Module -> Bool # (>) :: Module -> Module -> Bool # (>=) :: Module -> Module -> Bool # max :: Module -> Module -> Module # min :: Module -> Module -> Module #
FromValue Module # |
Instance details Defined in Hpack.Module Methods fromValue :: Value -> Parser Module #