tagchup-0.3.1: alternative package for processing of tag soupsSource codeContentsIndex
Text.HTML.Tagchup.Tag
Synopsis
data T name string
= Open (Name name) [T name string]
| Close (Name name)
| Text string
| Comment String
| Special (Name name) String
| Processing (Name name) (T name string)
| Warning String
newtype Name ident = Name ident
mapName :: (Name name0 -> Name name1) -> (Name name0 -> Name name1) -> T name0 string -> T name1 string
open :: Name name -> [T name string] -> T name string
isOpen :: T name string -> Bool
maybeOpen :: T name string -> Maybe (Name name, [T name string])
close :: Name name -> T name string
isClose :: T name string -> Bool
maybeClose :: T name string -> Maybe (Name name)
text :: string -> T name string
isText :: T name string -> Bool
maybeText :: T name string -> Maybe string
innerText :: Monoid string => [T name string] -> string
comment :: String -> T name string
isComment :: T name string -> Bool
maybeComment :: T name string -> Maybe String
special :: Name name -> String -> T name string
isSpecial :: T name string -> Bool
maybeSpecial :: T name string -> Maybe (Name name, String)
cdata :: Tag name => Name name
isCData :: Tag name => T name string -> Bool
maybeCData :: Tag name => T name string -> Maybe String
processing :: Name name -> T name string -> T name string
isProcessing :: T name string -> Bool
maybeProcessing :: T name string -> Maybe (Name name, T name string)
warning :: String -> T name string
isWarning :: T name string -> Bool
maybeWarning :: T name string -> Maybe String
formatOpen :: (Tag name, Attribute name, C string) => Bool -> Name name -> [T name string] -> ShowS
formatClose :: Tag name => Name name -> ShowS
textFromCData :: Tag name => T name String -> T name String
concatTexts :: Monoid string => [T name string] -> [T name string]
mapText :: Tag name => (String -> String) -> T name String -> T name String
mapTextA :: (Tag name, Applicative f) => (String -> f String) -> T name String -> f (T name String)
Documentation
data T name string Source

An HTML element, a document is [T]. There is no requirement for Open and Close to match.

The type parameter string lets you choose between [Char] for interpreted HTML entity references and [HTMLChar.T] for uninterpreted HTML entities. You will most oftenly want plain Char, since HTMLChar.T is only necessary if you want to know, whether a non-ASCII character was encoded as HTML entity or as non-ASCII Unicode character.

Constructors
Open (Name name) [T name string]An open tag with Ts in their original order.
Close (Name name)A closing tag
Text stringA text node, guaranteed not to be the empty string
Comment StringA comment
Special (Name name) StringA tag like <!DOCTYPE ...>
Processing (Name name) (T name string)A tag like <?xml ...>
Warning StringMark a syntax error in the input file
show/hide Instances
Functor (T name)
Foldable (T name)
Traversable (T name)
(Eq name, Eq string) => Eq (T name string)
(Ord name, Ord string) => Ord (T name string)
(Show name, Show string, Attribute name) => Show (T name string)
(Tag name, Attribute name, C string) => C (T name string)
newtype Name ident Source
Constructors
Name ident
show/hide Instances
Eq ident => Eq (Name ident)
Ord ident => Ord (Name ident)
Show ident => Show (Name ident)
Tag ident => C (Name ident)
mapName :: (Name name0 -> Name name1) -> (Name name0 -> Name name1) -> T name0 string -> T name1 stringSource
open :: Name name -> [T name string] -> T name stringSource
isOpen :: T name string -> BoolSource
Test if a T is a Open
maybeOpen :: T name string -> Maybe (Name name, [T name string])Source
close :: Name name -> T name stringSource
isClose :: T name string -> BoolSource
Test if a T is a Close
maybeClose :: T name string -> Maybe (Name name)Source
text :: string -> T name stringSource
isText :: T name string -> BoolSource
Test if a T is a Text
maybeText :: T name string -> Maybe stringSource
Extract the string from within Text, otherwise Nothing
innerText :: Monoid string => [T name string] -> stringSource
Extract all text content from tags (similar to Verbatim found in HaXml)
comment :: String -> T name stringSource
isComment :: T name string -> BoolSource
maybeComment :: T name string -> Maybe StringSource
special :: Name name -> String -> T name stringSource
isSpecial :: T name string -> BoolSource
maybeSpecial :: T name string -> Maybe (Name name, String)Source
cdata :: Tag name => Name nameSource
isCData :: Tag name => T name string -> BoolSource
maybeCData :: Tag name => T name string -> Maybe StringSource
processing :: Name name -> T name string -> T name stringSource
isProcessing :: T name string -> BoolSource
maybeProcessing :: T name string -> Maybe (Name name, T name string)Source
warning :: String -> T name stringSource
isWarning :: T name string -> BoolSource
maybeWarning :: T name string -> Maybe StringSource
formatOpen :: (Tag name, Attribute name, C string) => Bool -> Name name -> [T name string] -> ShowSSource
formatClose :: Tag name => Name name -> ShowSSource
textFromCData :: Tag name => T name String -> T name StringSource
Replace CDATA sections by plain text.
concatTexts :: Monoid string => [T name string] -> [T name string]Source
Merge adjacent Text sections.
mapText :: Tag name => (String -> String) -> T name String -> T name StringSource
Modify content of a Text or a CDATA part.
mapTextA :: (Tag name, Applicative f) => (String -> f String) -> T name String -> f (T name String)Source
Produced by Haddock version 2.6.0