|
definition: |
compareModulesFromPackageAndDir :: Config -> Repository -> GC.GlobalCache
-> String -> String -> Version -> Maybe [String]
-> ErrorLogger [(String, Differences)]
compareModulesFromPackageAndDir cfg repo gc dirA nameB verB onlyMods = do
baseTmp <- liftIOEL getBaseTemp
pkgB <- GC.tryFindPackage gc nameB verB
pkgA <- loadPackageSpec dirA
GC.copyPackage cfg pkgB baseTmp
liftIOEL $ copyDirectory dirA (baseTmp </> packageId pkgA)
compareModulesInDirs cfg repo gc (baseTmp </> packageId pkgA)
(baseTmp </> packageId pkgB) onlyMods
|
|
demand: |
no demanded arguments |
|
deterministic: |
deterministic operation |
|
documentation: |
Compares a package version from a directory to a package version from the global package cache. @param cfg - the CPM configuration @param repo - the central package index @param gc - the global package cache @param dirA - the directory containing package version A @param nameB - the name of package version B @param verB - the version of package version B @param onlyMods - a list of modules to compare |
|
failfree: |
<FAILING> |
|
indeterministic: |
referentially transparent operation |
|
infix: |
no fixity defined |
|
iotype: |
{(_,_,_,_,_,_,_) |-> _}
|
|
name: |
compareModulesFromPackageAndDir |
|
precedence: |
no precedence defined |
|
result-values: |
_ |
|
signature: |
CPM.Config.Config -> CPM.Repository.Repository -> CPM.PackageCache.Global.GlobalCache -> String -> String -> (Prelude.Int, Prelude.Int, Prelude.Int, Prelude.Maybe String) -> Prelude.Maybe [String] -> CPM.ErrorLogger.ErrorLogger [(String, (Prelude.Maybe (Difference String), [Difference AbstractCurry.Types.CFuncDecl], [Difference AbstractCurry.Types.CTypeDecl], [Difference AbstractCurry.Types.COpDecl]))] |
|
solution-complete: |
operation might suspend on free variables |
|
terminating: |
possibly non-terminating |
|
totally-defined: |
possibly non-reducible on same data term |