Safe Haskell | None |
---|---|
Language | Haskell2010 |
Deal with downloading, cloning, or whatever else is necessary for
getting a PackageLocation
into something Stack can work with.
- resolveSinglePackageLocation :: HasConfig env => Path Abs Dir -> PackageLocation FilePath -> RIO env (Path Abs Dir)
- resolveMultiPackageLocation :: HasConfig env => Path Abs Dir -> PackageLocation Subdirs -> RIO env [(Path Abs Dir, PackageLocation FilePath)]
- parseSingleCabalFile :: forall env. HasConfig env => Path Abs Dir -> Bool -> PackageLocation FilePath -> RIO env LocalPackageView
- parseSingleCabalFileIndex :: forall env. HasConfig env => (PackageIdentifierRevision -> IO ByteString) -> Path Abs Dir -> PackageLocationIndex FilePath -> RIO env GenericPackageDescription
- parseMultiCabalFiles :: forall env. HasConfig env => Path Abs Dir -> Bool -> PackageLocation Subdirs -> RIO env [LocalPackageView]
- parseMultiCabalFilesIndex :: forall env. HasConfig env => (PackageIdentifierRevision -> IO ByteString) -> Path Abs Dir -> PackageLocationIndex Subdirs -> RIO env [(GenericPackageDescription, PackageLocationIndex FilePath)]
Documentation
resolveSinglePackageLocation Source #
Same as resolveMultiPackageLocation
, but works on a
SinglePackageLocation
.
resolveMultiPackageLocation Source #
:: HasConfig env | |
=> Path Abs Dir | project root |
-> PackageLocation Subdirs | |
-> RIO env [(Path Abs Dir, PackageLocation FilePath)] |
Resolve a PackageLocation into a path, downloading and cloning as necessary.
Returns the updated PackageLocation value with just a single subdir (if relevant).
:: HasConfig env | |
=> Path Abs Dir | project root, used for checking out necessary files |
-> Bool | print warnings? |
-> PackageLocation FilePath | |
-> RIO env LocalPackageView |
parseSingleCabalFileIndex Source #
:: HasConfig env | |
=> (PackageIdentifierRevision -> IO ByteString) | lookup in index |
-> Path Abs Dir | project root, used for checking out necessary files |
-> PackageLocationIndex FilePath | |
-> RIO env GenericPackageDescription |
Parse the cabal files present in the given 'PackageLocationIndex FilePath'.
:: HasConfig env | |
=> Path Abs Dir | project root, used for checking out necessary files |
-> Bool | print warnings? |
-> PackageLocation Subdirs | |
-> RIO env [LocalPackageView] |
Load and parse cabal files into GenericPackageDescription
s
parseMultiCabalFilesIndex Source #
:: HasConfig env | |
=> (PackageIdentifierRevision -> IO ByteString) | |
-> Path Abs Dir | project root, used for checking out necessary files |
-> PackageLocationIndex Subdirs | |
-> RIO env [(GenericPackageDescription, PackageLocationIndex FilePath)] |
parseMultiCabalFiles
but supports PLIndex