| Cabal-1.10.1.0: A framework for packaging Haskell software | Contents | Index |
|
Distribution.PackageDescription.Parse | Portability | portable | Maintainer | cabal-devel@haskell.org |
|
|
|
|
|
Description |
This defined parsers and partial pretty printers for the .cabal format.
Some of the complexity in this module is due to the fact that we have to be
backwards compatible with old .cabal files, so there's code to translate
into the newer structure.
|
|
Synopsis |
|
|
|
|
Package descriptions
|
|
readPackageDescription :: Verbosity -> FilePath -> IO GenericPackageDescription |
Parse the given package file.
|
|
writePackageDescription :: FilePath -> PackageDescription -> IO () |
|
parsePackageDescription :: String -> ParseResult GenericPackageDescription |
Parses the given file into a GenericPackageDescription.
In Cabal 1.2 the syntax for package descriptions was changed to a format
with sections and possibly indented property descriptions.
|
|
showPackageDescription :: PackageDescription -> String |
|
Parsing
|
|
data ParseResult a |
Constructors | | Instances | |
|
|
data FieldDescr a |
Field descriptor. The parameter a parameterizes over where the field's
value is stored in.
| Constructors | FieldDescr | | fieldName :: String | | fieldGet :: a -> Doc | | fieldSet :: LineNo -> String -> a -> ParseResult a | fieldSet n str x Parses the field value from the given input
string str and stores the result in x if the parse was
successful. Otherwise, reports an error on line number n.
|
|
|
|
|
type LineNo = Int |
|
Supplementary build information
|
|
readHookedBuildInfo :: Verbosity -> FilePath -> IO HookedBuildInfo |
|
parseHookedBuildInfo :: String -> ParseResult HookedBuildInfo |
|
writeHookedBuildInfo :: FilePath -> HookedBuildInfo -> IO () |
|
showHookedBuildInfo :: HookedBuildInfo -> String |
|
Produced by Haddock version 2.6.1 |