-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Functionality to help examine Haddock information of a module.
--
-- Pollock is functionality to examine various bits of information about
-- documentation as exposed from a Haskell module. This is designed to be
-- used as part of a GHC plugin.
@package pollock
@version 0.1.0.0
module Pollock
-- | Read a module from a TcGblEnv to determine information about
-- the Haddock as seen with ModuleInfo.
processModule :: MonadIO m => TcGblEnv -> m ModuleInfo
data ModuleHeader
ModuleHeader :: !Maybe String -> !Maybe String -> !Maybe String -> !Maybe String -> !Maybe String -> !Maybe String -> ModuleHeader
-- | The description field of the Haddock module header.
[description] :: ModuleHeader -> !Maybe String
-- | The copyright field of the Haddock module header.
[copyright] :: ModuleHeader -> !Maybe String
-- | The license field of the Haddock module header.
[license] :: ModuleHeader -> !Maybe String
-- | The maintainer field of the Haddock module header.
[maintainer] :: ModuleHeader -> !Maybe String
-- | The stability field of the Haddock module header.
[stability] :: ModuleHeader -> !Maybe String
-- | The portability field of the Haddock module header.
[portability] :: ModuleHeader -> !Maybe String
data ModuleInfo
ModuleInfo :: !ModuleHeader -> !Int -> !Int -> !Int -> !Int -> !Int -> !Int -> !Int -> ModuleInfo
-- | The haddock module header
[moduleHeader] :: ModuleInfo -> !ModuleHeader
-- | How many exported items that could have documentation attached.
[haddockableExports] :: ModuleInfo -> !Int
-- | How many exported items that do have haddock attached.
[haddockedExports] :: ModuleInfo -> !Int
-- | How many exported items have a since annotation.
[numWithSince] :: ModuleInfo -> !Int
-- | How many exported items have a code block included in the
-- documentation.
[numWithCodeBlock] :: ModuleInfo -> !Int
-- | How many exported items have an example included in the documentation.
[numWithExample] :: ModuleInfo -> !Int
-- | How many exported items have a property included in the documentation.
[numWithProperty] :: ModuleInfo -> !Int
-- | How many exported items have a warning attached to them.
[numWithWarning] :: ModuleInfo -> !Int
-- | A helper suitable for use to set as driverPlugin that ensures
-- the Haddock option is set to allow other funcationality provided here
-- to work.
ensureHaddockIsOn :: [a] -> HscEnv -> IO HscEnv