-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Code Coverage Library for Haskell -- -- This package provides the code coverage library for Haskell. -- -- See http://www.haskell.org/haskellwiki/Haskell_program_coverage -- for more information. @package hpc @version 0.6.1.0 -- | Minor utilities for the HPC tools. module Trace.Hpc.Util -- | HpcPos is an Hpc local rendition of a Span. data HpcPos -- | fromHpcPos explodes the HpcPos into -- line:column-line:column fromHpcPos :: HpcPos -> (Int, Int, Int, Int) -- | toHpcPos implodes to HpcPos, from -- line:column-line:column toHpcPos :: (Int, Int, Int, Int) -> HpcPos -- | Predicate determining whether the first argument is inside the second -- argument. insideHpcPos :: HpcPos -> HpcPos -> Bool class HpcHash a toHash :: HpcHash a => a -> Hash data Hash catchIO :: IO a -> (IOException -> IO a) -> IO a -- | Read a file strictly, as opposed to how readFile does it using -- lazy IO, but also disregard system locale and assume that the file is -- encoded in UTF-8. Haskell source files are expected to be encoded in -- UTF-8 by GHC. readFileUtf8 :: FilePath -> IO String -- | Write file in UTF-8 encoding. Parent directory will be created if -- missing. writeFileUtf8 :: FilePath -> String -> IO () instance GHC.Classes.Ord Trace.Hpc.Util.HpcPos instance GHC.Classes.Eq Trace.Hpc.Util.HpcPos instance GHC.Classes.Eq Trace.Hpc.Util.Hash instance Trace.Hpc.Util.HpcHash GHC.Types.Int instance Trace.Hpc.Util.HpcHash GHC.Integer.Type.Integer instance Trace.Hpc.Util.HpcHash GHC.Types.Char instance Trace.Hpc.Util.HpcHash GHC.Types.Bool instance Trace.Hpc.Util.HpcHash a => Trace.Hpc.Util.HpcHash [a] instance (Trace.Hpc.Util.HpcHash a, Trace.Hpc.Util.HpcHash b) => Trace.Hpc.Util.HpcHash (a, b) instance Trace.Hpc.Util.HpcHash Trace.Hpc.Util.HpcPos instance GHC.Read.Read Trace.Hpc.Util.Hash instance GHC.Show.Show Trace.Hpc.Util.Hash instance GHC.Num.Num Trace.Hpc.Util.Hash instance GHC.Show.Show Trace.Hpc.Util.HpcPos instance GHC.Read.Read Trace.Hpc.Util.HpcPos -- | Datatypes and file-access routines for the tick data file -- (.tix) used by Hpc. module Trace.Hpc.Tix -- | Tix is the storage format for our dynamic information about -- what boxes are ticked. data Tix Tix :: [TixModule] -> Tix data TixModule TixModule :: String -> Hash -> Int -> [Integer] -> TixModule tixModuleName :: TixModule -> String tixModuleHash :: TixModule -> Hash tixModuleTixs :: TixModule -> [Integer] -- | Read a .tix File. readTix :: String -> IO (Maybe Tix) -- | Write a .tix File. writeTix :: String -> Tix -> IO () -- | getTixFullName takes a binary or .tix-file name, and -- normalizes it into a .tix-file name. getTixFileName :: String -> String instance GHC.Classes.Eq Trace.Hpc.Tix.TixModule instance GHC.Show.Show Trace.Hpc.Tix.TixModule instance GHC.Read.Read Trace.Hpc.Tix.TixModule instance GHC.Classes.Eq Trace.Hpc.Tix.Tix instance GHC.Show.Show Trace.Hpc.Tix.Tix instance GHC.Read.Read Trace.Hpc.Tix.Tix module Trace.Hpc.Reflect clearTix :: IO () examineTix :: IO Tix updateTix :: Tix -> IO () -- | Datatypes and file-access routines for the per-module (.mix) -- indexes used by Hpc. module Trace.Hpc.Mix -- | Mix is the information about a modules static properties, like -- location of Tix's in a file. -- -- Tab stops are the size of a tab in the provided line:column -- values. -- --