haskell-docs-4.1.3: A program to find and display the docs of a name from a given module.

Safe HaskellNone
LanguageHaskell98

Haskell.Docs.Haddock

Contents

Description

Haddock compatibilty layer and query functions.

Synopsis

Searching for ident docs

searchIdent :: Maybe PackageConfig -> Identifier -> Ghc (Either DocsException [IdentDoc]) Source

Search a name in the given module.

searchPackageModuleIdent :: Maybe PackageConfig -> PackageName -> ModuleName -> Identifier -> Ghc (Either DocsException [IdentDoc]) Source

Search a name in the given module from the given package.

searchInPackages :: [PackageConfig] -> Maybe ModuleName -> Identifier -> Ghc (Either a [IdentDoc]) Source

Search for the identifier in a module in any of the given packages.

searchWithPackage :: PackageConfig -> Maybe ModuleName -> Identifier -> Ghc (Either DocsException [IdentDoc]) Source

Search for the given identifier in the given package.

searchWithInterface :: PackageConfig -> Identifier -> InstalledInterface -> Ghc (Either DocsException [IdentDoc]) Source

Search for the given identifier in the interface.

Get documentation of parts of things

interfaceNameMap :: InstalledInterface -> Map String (Doc String) Source

Get a mapping from names to doc string of that name from a Haddock interface.

interfaceArgMap :: InstalledInterface -> Map String (Map Int (Doc Name)) Source

Get a mapping from names to doc string of that name from a Haddock interface.

lookupArgsDocs :: InstalledInterface -> Identifier -> Ghc (Maybe [(Int, Doc String)]) Source

Find arguments documentation for the identifier.

Querying for packages and interfaces

getPackagesByModule :: ModuleName -> Ghc [PackageConfig] Source

Search for a module's package, returning suggestions if not found. Filters out the given value.

getHaddockInterfacesByPackage :: PackageConfig -> Ghc [Either DocsException InterfaceFile] Source

Get the Haddock interfaces of the given package.

Internal functions

descendSearch :: PackageConfig -> Identifier -> Name -> Ghc (Either DocsException [IdentDoc]) Source

The module symbol doesn't actually exist in the module we intended, so we descend into the module that it does exist in and restart our search process.