haddock-library-1.11.0: Library exposing some functionality of Haddock.
Copyright(c) Simon Marlow 2003-2006
David Waern 2006-2009
Mateusz Kowalczyk 2013
LicenseBSD-like
Maintainerhaddock@projects.haskellorg
Stabilityexperimental
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Documentation.Haddock.Types

Description

Exposes documentation data types used for (some) of Haddock.

Synopsis

Documentation

data Meta Source #

With the advent of Version, we may want to start attaching more meta-data to comments. We make a structure for this ahead of time so we don't have to gut half the core each time we want to add such info.

Constructors

Meta 

Instances

Instances details
Show Meta Source # 
Instance details

Defined in Documentation.Haddock.Types

Eq Meta Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: Meta -> Meta -> Bool Source #

(/=) :: Meta -> Meta -> Bool Source #

data MetaDoc mod id Source #

Constructors

MetaDoc 

Fields

Instances

Instances details
Bifoldable MetaDoc Source #

NOTE: Only defined for base >= 4.10.0

Instance details

Defined in Documentation.Haddock.Types

Methods

bifold :: Monoid m => MetaDoc m m -> m Source #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> MetaDoc a b -> m Source #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> MetaDoc a b -> c Source #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> MetaDoc a b -> c Source #

Bifunctor MetaDoc Source #

NOTE: Only defined for base >= 4.8.0

Instance details

Defined in Documentation.Haddock.Types

Methods

bimap :: (a -> b) -> (c -> d) -> MetaDoc a c -> MetaDoc b d Source #

first :: (a -> b) -> MetaDoc a c -> MetaDoc b c Source #

second :: (b -> c) -> MetaDoc a b -> MetaDoc a c Source #

Bitraversable MetaDoc Source #

NOTE: Only defined for base >= 4.10.0

Instance details

Defined in Documentation.Haddock.Types

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> MetaDoc a b -> f (MetaDoc c d) Source #

Foldable (MetaDoc mod) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fold :: Monoid m => MetaDoc mod m -> m Source #

foldMap :: Monoid m => (a -> m) -> MetaDoc mod a -> m Source #

foldMap' :: Monoid m => (a -> m) -> MetaDoc mod a -> m Source #

foldr :: (a -> b -> b) -> b -> MetaDoc mod a -> b Source #

foldr' :: (a -> b -> b) -> b -> MetaDoc mod a -> b Source #

foldl :: (b -> a -> b) -> b -> MetaDoc mod a -> b Source #

foldl' :: (b -> a -> b) -> b -> MetaDoc mod a -> b Source #

foldr1 :: (a -> a -> a) -> MetaDoc mod a -> a Source #

foldl1 :: (a -> a -> a) -> MetaDoc mod a -> a Source #

toList :: MetaDoc mod a -> [a] Source #

null :: MetaDoc mod a -> Bool Source #

length :: MetaDoc mod a -> Int Source #

elem :: Eq a => a -> MetaDoc mod a -> Bool Source #

maximum :: Ord a => MetaDoc mod a -> a Source #

minimum :: Ord a => MetaDoc mod a -> a Source #

sum :: Num a => MetaDoc mod a -> a Source #

product :: Num a => MetaDoc mod a -> a Source #

Traversable (MetaDoc mod) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

traverse :: Applicative f => (a -> f b) -> MetaDoc mod a -> f (MetaDoc mod b) Source #

sequenceA :: Applicative f => MetaDoc mod (f a) -> f (MetaDoc mod a) Source #

mapM :: Monad m => (a -> m b) -> MetaDoc mod a -> m (MetaDoc mod b) Source #

sequence :: Monad m => MetaDoc mod (m a) -> m (MetaDoc mod a) Source #

Functor (MetaDoc mod) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fmap :: (a -> b) -> MetaDoc mod a -> MetaDoc mod b Source #

(<$) :: a -> MetaDoc mod b -> MetaDoc mod a Source #

(Show id, Show mod) => Show (MetaDoc mod id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

showsPrec :: Int -> MetaDoc mod id -> ShowS Source #

show :: MetaDoc mod id -> String Source #

showList :: [MetaDoc mod id] -> ShowS Source #

(Eq id, Eq mod) => Eq (MetaDoc mod id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: MetaDoc mod id -> MetaDoc mod id -> Bool Source #

(/=) :: MetaDoc mod id -> MetaDoc mod id -> Bool Source #

overDoc :: (DocH a b -> DocH c d) -> MetaDoc a b -> MetaDoc c d Source #

overDocF :: Functor f => (DocH a b -> f (DocH c d)) -> MetaDoc a b -> f (MetaDoc c d) Source #

type Version = [Int] Source #

data Hyperlink id Source #

Constructors

Hyperlink 

Instances

data ModLink id Source #

Constructors

ModLink 

Instances

data Picture Source #

Constructors

Picture 

Instances

Instances details
Show Picture Source # 
Instance details

Defined in Documentation.Haddock.Types

Eq Picture Source # 
Instance details

Defined in Documentation.Haddock.Types

data Header id Source #

Constructors

Header 

Fields

Instances

Instances details
Foldable Header Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fold :: Monoid m => Header m -> m Source #

foldMap :: Monoid m => (a -> m) -> Header a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Header a -> m Source #

foldr :: (a -> b -> b) -> b -> Header a -> b Source #

foldr' :: (a -> b -> b) -> b -> Header a -> b Source #

foldl :: (b -> a -> b) -> b -> Header a -> b Source #

foldl' :: (b -> a -> b) -> b -> Header a -> b Source #

foldr1 :: (a -> a -> a) -> Header a -> a Source #

foldl1 :: (a -> a -> a) -> Header a -> a Source #

toList :: Header a -> [a] Source #

null :: Header a -> Bool Source #

length :: Header a -> Int Source #

elem :: Eq a => a -> Header a -> Bool Source #

maximum :: Ord a => Header a -> a Source #

minimum :: Ord a => Header a -> a Source #

sum :: Num a => Header a -> a Source #

product :: Num a => Header a -> a Source #

Traversable Header Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

traverse :: Applicative f => (a -> f b) -> Header a -> f (Header b) Source #

sequenceA :: Applicative f => Header (f a) -> f (Header a) Source #

mapM :: Monad m => (a -> m b) -> Header a -> m (Header b) Source #

sequence :: Monad m => Header (m a) -> m (Header a) Source #

Functor Header Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fmap :: (a -> b) -> Header a -> Header b Source #

(<$) :: a -> Header b -> Header a Source #

Show id => Show (Header id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Eq id => Eq (Header id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: Header id -> Header id -> Bool Source #

(/=) :: Header id -> Header id -> Bool Source #

data Example Source #

Constructors

Example 

Instances

Instances details
Show Example Source # 
Instance details

Defined in Documentation.Haddock.Types

Eq Example Source # 
Instance details

Defined in Documentation.Haddock.Types

data TableCell id Source #

Instances

Instances details
Foldable TableCell Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fold :: Monoid m => TableCell m -> m Source #

foldMap :: Monoid m => (a -> m) -> TableCell a -> m Source #

foldMap' :: Monoid m => (a -> m) -> TableCell a -> m Source #

foldr :: (a -> b -> b) -> b -> TableCell a -> b Source #

foldr' :: (a -> b -> b) -> b -> TableCell a -> b Source #

foldl :: (b -> a -> b) -> b -> TableCell a -> b Source #

foldl' :: (b -> a -> b) -> b -> TableCell a -> b Source #

foldr1 :: (a -> a -> a) -> TableCell a -> a Source #

foldl1 :: (a -> a -> a) -> TableCell a -> a Source #

toList :: TableCell a -> [a] Source #

null :: TableCell a -> Bool Source #

length :: TableCell a -> Int Source #

elem :: Eq a => a -> TableCell a -> Bool Source #

maximum :: Ord a => TableCell a -> a Source #

minimum :: Ord a => TableCell a -> a Source #

sum :: Num a => TableCell a -> a Source #

product :: Num a => TableCell a -> a Source #

Traversable TableCell Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

traverse :: Applicative f => (a -> f b) -> TableCell a -> f (TableCell b) Source #

sequenceA :: Applicative f => TableCell (f a) -> f (TableCell a) Source #

mapM :: Monad m => (a -> m b) -> TableCell a -> m (TableCell b) Source #

sequence :: Monad m => TableCell (m a) -> m (TableCell a) Source #

Functor TableCell Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fmap :: (a -> b) -> TableCell a -> TableCell b Source #

(<$) :: a -> TableCell b -> TableCell a Source #

Show id => Show (TableCell id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Eq id => Eq (TableCell id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: TableCell id -> TableCell id -> Bool Source #

(/=) :: TableCell id -> TableCell id -> Bool Source #

newtype TableRow id Source #

Constructors

TableRow 

Fields

Instances

Instances details
Foldable TableRow Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fold :: Monoid m => TableRow m -> m Source #

foldMap :: Monoid m => (a -> m) -> TableRow a -> m Source #

foldMap' :: Monoid m => (a -> m) -> TableRow a -> m Source #

foldr :: (a -> b -> b) -> b -> TableRow a -> b Source #

foldr' :: (a -> b -> b) -> b -> TableRow a -> b Source #

foldl :: (b -> a -> b) -> b -> TableRow a -> b Source #

foldl' :: (b -> a -> b) -> b -> TableRow a -> b Source #

foldr1 :: (a -> a -> a) -> TableRow a -> a Source #

foldl1 :: (a -> a -> a) -> TableRow a -> a Source #

toList :: TableRow a -> [a] Source #

null :: TableRow a -> Bool Source #

length :: TableRow a -> Int Source #

elem :: Eq a => a -> TableRow a -> Bool Source #

maximum :: Ord a => TableRow a -> a Source #

minimum :: Ord a => TableRow a -> a Source #

sum :: Num a => TableRow a -> a Source #

product :: Num a => TableRow a -> a Source #

Traversable TableRow Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

traverse :: Applicative f => (a -> f b) -> TableRow a -> f (TableRow b) Source #

sequenceA :: Applicative f => TableRow (f a) -> f (TableRow a) Source #

mapM :: Monad m => (a -> m b) -> TableRow a -> m (TableRow b) Source #

sequence :: Monad m => TableRow (m a) -> m (TableRow a) Source #

Functor TableRow Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fmap :: (a -> b) -> TableRow a -> TableRow b Source #

(<$) :: a -> TableRow b -> TableRow a Source #

Show id => Show (TableRow id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Eq id => Eq (TableRow id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: TableRow id -> TableRow id -> Bool Source #

(/=) :: TableRow id -> TableRow id -> Bool Source #

data Table id Source #

Constructors

Table 

Instances

Instances details
Foldable Table Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fold :: Monoid m => Table m -> m Source #

foldMap :: Monoid m => (a -> m) -> Table a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Table a -> m Source #

foldr :: (a -> b -> b) -> b -> Table a -> b Source #

foldr' :: (a -> b -> b) -> b -> Table a -> b Source #

foldl :: (b -> a -> b) -> b -> Table a -> b Source #

foldl' :: (b -> a -> b) -> b -> Table a -> b Source #

foldr1 :: (a -> a -> a) -> Table a -> a Source #

foldl1 :: (a -> a -> a) -> Table a -> a Source #

toList :: Table a -> [a] Source #

null :: Table a -> Bool Source #

length :: Table a -> Int Source #

elem :: Eq a => a -> Table a -> Bool Source #

maximum :: Ord a => Table a -> a Source #

minimum :: Ord a => Table a -> a Source #

sum :: Num a => Table a -> a Source #

product :: Num a => Table a -> a Source #

Traversable Table Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

traverse :: Applicative f => (a -> f b) -> Table a -> f (Table b) Source #

sequenceA :: Applicative f => Table (f a) -> f (Table a) Source #

mapM :: Monad m => (a -> m b) -> Table a -> m (Table b) Source #

sequence :: Monad m => Table (m a) -> m (Table a) Source #

Functor Table Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fmap :: (a -> b) -> Table a -> Table b Source #

(<$) :: a -> Table b -> Table a Source #

Show id => Show (Table id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

showsPrec :: Int -> Table id -> ShowS Source #

show :: Table id -> String Source #

showList :: [Table id] -> ShowS Source #

Eq id => Eq (Table id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: Table id -> Table id -> Bool Source #

(/=) :: Table id -> Table id -> Bool Source #

data DocH mod id Source #

Constructors

DocEmpty 
DocAppend (DocH mod id) (DocH mod id) 
DocString String 
DocParagraph (DocH mod id) 
DocIdentifier id 
DocIdentifierUnchecked mod

A qualified identifier that couldn't be resolved.

DocModule (ModLink (DocH mod id))

A link to a module, with an optional label.

DocWarning (DocH mod id)

This constructor has no counterpart in Haddock markup.

DocEmphasis (DocH mod id) 
DocMonospaced (DocH mod id) 
DocBold (DocH mod id) 
DocUnorderedList [DocH mod id] 
DocOrderedList [(Int, DocH mod id)] 
DocDefList [(DocH mod id, DocH mod id)] 
DocCodeBlock (DocH mod id) 
DocHyperlink (Hyperlink (DocH mod id)) 
DocPic Picture 
DocMathInline String 
DocMathDisplay String 
DocAName String

A (HTML) anchor. It must not contain any spaces.

DocProperty String 
DocExamples [Example] 
DocHeader (Header (DocH mod id)) 
DocTable (Table (DocH mod id)) 

Instances

Instances details
Bifoldable DocH Source #

NOTE: Only defined for base >= 4.10.0

Instance details

Defined in Documentation.Haddock.Types

Methods

bifold :: Monoid m => DocH m m -> m Source #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> DocH a b -> m Source #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> DocH a b -> c Source #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> DocH a b -> c Source #

Bifunctor DocH Source #

NOTE: Only defined for base >= 4.8.0

Instance details

Defined in Documentation.Haddock.Types

Methods

bimap :: (a -> b) -> (c -> d) -> DocH a c -> DocH b d Source #

first :: (a -> b) -> DocH a c -> DocH b c Source #

second :: (b -> c) -> DocH a b -> DocH a c Source #

Bitraversable DocH Source #

NOTE: Only defined for base >= 4.10.0

Instance details

Defined in Documentation.Haddock.Types

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> DocH a b -> f (DocH c d) Source #

Foldable (DocH mod) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fold :: Monoid m => DocH mod m -> m Source #

foldMap :: Monoid m => (a -> m) -> DocH mod a -> m Source #

foldMap' :: Monoid m => (a -> m) -> DocH mod a -> m Source #

foldr :: (a -> b -> b) -> b -> DocH mod a -> b Source #

foldr' :: (a -> b -> b) -> b -> DocH mod a -> b Source #

foldl :: (b -> a -> b) -> b -> DocH mod a -> b Source #

foldl' :: (b -> a -> b) -> b -> DocH mod a -> b Source #

foldr1 :: (a -> a -> a) -> DocH mod a -> a Source #

foldl1 :: (a -> a -> a) -> DocH mod a -> a Source #

toList :: DocH mod a -> [a] Source #

null :: DocH mod a -> Bool Source #

length :: DocH mod a -> Int Source #

elem :: Eq a => a -> DocH mod a -> Bool Source #

maximum :: Ord a => DocH mod a -> a Source #

minimum :: Ord a => DocH mod a -> a Source #

sum :: Num a => DocH mod a -> a Source #

product :: Num a => DocH mod a -> a Source #

Traversable (DocH mod) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

traverse :: Applicative f => (a -> f b) -> DocH mod a -> f (DocH mod b) Source #

sequenceA :: Applicative f => DocH mod (f a) -> f (DocH mod a) Source #

mapM :: Monad m => (a -> m b) -> DocH mod a -> m (DocH mod b) Source #

sequence :: Monad m => DocH mod (m a) -> m (DocH mod a) Source #

Functor (DocH mod) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

fmap :: (a -> b) -> DocH mod a -> DocH mod b Source #

(<$) :: a -> DocH mod b -> DocH mod a Source #

(Show id, Show mod) => Show (DocH mod id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

showsPrec :: Int -> DocH mod id -> ShowS Source #

show :: DocH mod id -> String Source #

showList :: [DocH mod id] -> ShowS Source #

(Eq id, Eq mod) => Eq (DocH mod id) Source # 
Instance details

Defined in Documentation.Haddock.Types

Methods

(==) :: DocH mod id -> DocH mod id -> Bool Source #

(/=) :: DocH mod id -> DocH mod id -> Bool Source #

renderNs :: Namespace -> String Source #

Render the a namespace into the same format it was initially parsed.

data DocMarkupH mod id a Source #

DocMarkupH is a set of instructions for marking up documentation. In fact, it's really just a mapping from Doc to some other type [a], where [a] is usually the type of the output (HTML, say). Use markup to apply a DocMarkupH to a DocH.

Since: 1.4.5

Constructors

Markup 

Fields