-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | provide access to the Hackage database via Data.Map
--
@package hackage-db
@version 1.9.1
-- | Find the location of the local Hackage database that is maintained by
-- running cabal update.
module Distribution.Hackage.DB.Path
-- | Determine the default path of the Hackage database, which typically
-- resides at
-- "$HOME/.cabal/packages/hackage.haskell.org/00-index.tar".
-- Running the command "cabal update" will keep that file
-- up-to-date.
hackagePath :: IO FilePath
-- | This module provides simple access to the Hackage database by means of
-- Map.
module Distribution.Hackage.DB.Unparsed
-- | A Map representation of the Hackage database. Every package
-- name maps to a non-empty set of version, and for every version there
-- is a Cabal file stored as a (lazy) ByteString.
type Hackage = Map String (Map Version ByteString)
-- | Read the Hackage database from the location determined by
-- hackagePath and return a Map that provides fast access
-- to its contents.
readHackage :: IO Hackage
-- | Read the Hackage database from the given FilePath and return a
-- Hackage map that provides fast access to its contents.
readHackage' :: FilePath -> IO Hackage
-- | Parse the contents of Hackage's 00-index.tar into a
-- Hackage map.
parseHackage :: ByteString -> Hackage
-- | Determine the default path of the Hackage database, which typically
-- resides at
-- "$HOME/.cabal/packages/hackage.haskell.org/00-index.tar".
-- Running the command "cabal update" will keep that file
-- up-to-date.
hackagePath :: IO FilePath
-- | This module provides simple access to the Hackage database by means of
-- Map.
module Distribution.Hackage.DB.Parsed
-- | A Map representation of the Hackage database. For sake of
-- simplicity, we use String rather than PackageName to
-- represent the name of a package.
type Hackage = Map String (Map Version GenericPackageDescription)
-- | Read the Hackage database from the location determined by
-- hackagePath and return a Map that provides fast access
-- to its contents.
readHackage :: IO Hackage
-- | Read the Hackage database from the given FilePath and return a
-- Hackage map that provides fast access to its contents.
readHackage' :: FilePath -> IO Hackage
-- | Parse the contents of Hackage's 00-index.tar into a
-- Hackage map.
parseHackage :: ByteString -> Hackage
-- | Convert an Hackage map into a parsed Hackage map.
parseUnparsedHackage :: Hackage -> Hackage
-- | This module provides simple access to the Hackage database by means of
-- Map.
module Distribution.Hackage.DB
-- | A Map representation of the Hackage database. For sake of
-- simplicity, we use String rather than PackageName to
-- represent the name of a package.
type Hackage = Map String (Map Version GenericPackageDescription)
-- | Read the Hackage database from the location determined by
-- hackagePath and return a Map that provides fast access
-- to its contents.
readHackage :: IO Hackage
-- | Read the Hackage database from the given FilePath and return a
-- Hackage map that provides fast access to its contents.
readHackage' :: FilePath -> IO Hackage
-- | Parse the contents of Hackage's 00-index.tar into a
-- Hackage map.
parseHackage :: ByteString -> Hackage
-- | Determine the default path of the Hackage database, which typically
-- resides at
-- "$HOME/.cabal/packages/hackage.haskell.org/00-index.tar".
-- Running the command "cabal update" will keep that file
-- up-to-date.
hackagePath :: IO FilePath