|
|
|
|
Synopsis |
|
|
|
Documentation |
|
|
Constructors | OptHide | This module should not appear in the docs
| OptPrune | | OptIgnoreExports | Pretend everything is exported
| OptNotHome | Not the best place to get docs for things
exported by this module.
|
| Instances | |
|
|
|
Constructors | ExportDecl | An exported declaration
| expItemName :: Name | The original name
| expItemDecl :: LHsDecl name | A declaration
| expItemMbDoc :: Maybe (HsDoc name) | Maybe a doc comment
| expItemInstances :: [InstHead name] | Instances relevant to this declaration
|
| ExportNoDecl | An exported entity for which we have no
documentation (perhaps because it resides in
another package)
| expItemName :: Name | The original name
| expItemLinkTarget :: name | Where to link to
| expItemSubs :: [name] | Subordinate names
|
| ExportGroup | A section heading
| expItemSectionLevel :: Int | Section level (1, 2, 3, ... )
| expItemSectionId :: String | Section id (for hyperlinks)
| expItemSectionText :: HsDoc name | Section heading text
|
| ExportDoc (HsDoc name) | Some documentation
| ExportModule Module | A cross-reference to another module
|
|
|
|
type InstHead name = ([HsPred name], name, [HsType name]) | Source |
|
|
|
|
|
|
type LinkEnv = Map Name Module | Source |
|
|
|
This structure holds the module information we get from GHC's
type checking phase
| Constructors | GhcModule | | ghcModule :: Module | | ghcFilename :: FilePath | | ghcMbDocOpts :: Maybe String | | ghcHaddockModInfo :: HaddockModInfo Name | | ghcMbDoc :: Maybe (HsDoc Name) | | ghcGroup :: HsGroup Name | | ghcMbExports :: Maybe [LIE Name] | | ghcExportedNames :: [Name] | | ghcNamesInScope :: [Name] | | ghcInstances :: [Instance] | |
|
|
|
|
|
This is the data structure used to render a Haddock page for a module - it
is the interface of the module. The core of Haddock lies in creating this
structure (see Haddock.Interface). The structure also holds intermediate
data needed during its creation.
| Constructors | Interface | | ifaceMod :: Module | The documented module
| ifaceOrigFilename :: FilePath | The original filename for this module
| ifaceInfo :: HaddockModInfo Name | Textual information about the module
| ifaceDoc :: Maybe (HsDoc Name) | The documentation header for this module
| ifaceRnDoc :: Maybe (HsDoc DocName) | The renamed documentation header for this module
| ifaceOptions :: [DocOption] | The Haddock options for this module (prune, ignore-exports, etc)
| ifaceExportedDeclMap :: Map Name (LHsDecl Name) | | ifaceDocMap :: Map Name (HsDoc Name) | | ifaceRnDocMap :: Map Name (HsDoc DocName) | | ifaceExportItems :: [ExportItem Name] | | ifaceRnExportItems :: [ExportItem DocName] | | ifaceEnv :: Map OccName Name | Environment mapping exported names to *original* names
| ifaceLocals :: [Name] | All the names that are defined in this module
| ifaceExports :: [Name] | All the names that are exported by this module
| ifaceVisibleExports :: [Name] | All the visible names exported by this module
For a name to be visible, it has to:
- be exported normally, and not via a full module re-exportation.
- have a declaration in this module or any of it's imports, with the
exception that it can't be from another package.
Basically, a visible name is a name that will show up in the documentation
for this module.
| ifaceSubMap :: Map Name [Name] | | ifaceInstances :: [Instance] | The instances exported by this module
|
|
|
|
|
data InstalledInterface | Source |
|
A smaller version of Interface that we can get from the Haddock
interface files.
| Constructors | InstalledInterface | | instMod :: Module | | instInfo :: HaddockModInfo Name | | instDocMap :: Map Name (HsDoc DocName) | | instExports :: [Name] | | instVisibleExports :: [Name] | |
|
| Instances | |
|
|
|
Convert an Interface to an InstalledInterface
|
|
|
Constructors | Markup | | markupEmpty :: a | | markupString :: String -> a | | markupParagraph :: a -> a | | markupAppend :: a -> a -> a | | markupIdentifier :: [id] -> a | | markupModule :: String -> a | | markupEmphasis :: a -> a | | markupMonospaced :: a -> a | | markupUnorderedList :: [a] -> a | | markupOrderedList :: [a] -> a | | markupDefList :: [(a, a)] -> a | | markupCodeBlock :: a -> a | | markupURL :: String -> a | | markupAName :: String -> a | |
|
|
|
|
|
|
|
Constructors | | Instances | |
|
|
|
|
Produced by Haddock version 2.1.0 |