Safe Haskell | None |
---|---|
Language | Haskell2010 |
Local repository
- type LocalRepo = Path Absolute
- data LocalFile a
- withRepository :: LocalRepo -> Cache -> RepoLayout -> IndexLayout -> (LogMessage -> IO ()) -> (Repository LocalFile -> IO a) -> IO a
Documentation
type LocalRepo = Path Absolute #
Location of the repository
Note that we regard the local repository as immutable; we cache files just like we do for remote repositories.
:: LocalRepo | Location of local repository |
-> Cache | Location of local cache |
-> RepoLayout | Repository layout |
-> IndexLayout | Index layout |
-> (LogMessage -> IO ()) | Logger |
-> (Repository LocalFile -> IO a) | Callback |
-> IO a |
Initialize the repository (and cleanup resources afterwards)
Like a remote repository, a local repository takes a RepoLayout as argument; but where the remote repository interprets this RepoLayout relative to a URL, the local repository interprets it relative to a local directory.
It uses the same cache as the remote repository.