Documentation.Haddock.Parser

haddock-library-1.10.0: Library exposing some functionality of Haddock.

Copyright | (c) Mateusz Kowalczyk 2013-2014 Simon Hengel 2013
License | BSD-like
Maintainer | haddock@projects.haskell.org
Stability | experimental
Portability | portable
Safe Haskell | Safe-Inferred
Language | Haskell2010

Documentation.Haddock.Parser

Description

Parser used for Haddock comments. For external users of this library, the most commonly used combination of functions is going to be

    toRegular . _doc . parseParas

Synopsis

- parseString :: String -> DocH mod Identifier
- parseParas :: Maybe Package -> String -> MetaDoc mod Identifier
- overIdentifier :: (Namespace -> String -> Maybe a) -> DocH mod Identifier -> DocH mod a
- toRegular :: DocH mod Identifier -> DocH mod String
- data Identifier

# Documentation

parseString :: String -> DocH mod Identifier #

Variant of `parseText` for `String` instead of `Text`

parseParas #

Arguments

:: Maybe Package |
-> String | String to parse
-> MetaDoc mod Identifier |

Main entry point to the parser. Appends the newline character to the input string.

overIdentifier :: (Namespace -> String -> Maybe a) -> DocH mod Identifier -> DocH mod a #

Maps over `DocIdentifier`s over `String` with potentially failing conversion using user-supplied function. If the conversion fails, the identifier is deemed to not be valid and is treated as a regular string.

toRegular :: DocH mod Identifier -> DocH mod String #

Drops the quotes/backticks around all identifiers, as if they were valid but still `String`s.

data Identifier #

Identifier string surrounded with namespace, opening, and closing quotes/backticks.

#### Instances

Instances details

Show Identifier # |
Instance details Defined in Documentation.Haddock.Parser.Identifier Methods showsPrec :: Int -> Identifier -> ShowS # show :: Identifier -> String # showList :: [Identifier] -> ShowS #
Eq Identifier # |
Instance details Defined in Documentation.Haddock.Parser.Identifier Methods (==) :: Identifier -> Identifier -> Bool # (/=) :: Identifier -> Identifier -> Bool #