hsp-0.10.0: Haskell Server Pages is a library for writing dynamic server-side web pages.

Copyright(c) Niklas Broberg 2008-2013
LicenseBSD-style (see the file LICENSE.txt)
MaintainerNiklas Broberg, niklas.broberg@gmail.com
Stabilityexperimental
PortabilityHaskell 98
Safe HaskellSafe
LanguageHaskell98

HSP.XML

Contents

Description

Datatypes and type classes comprising the basic model behind the scenes of Haskell Server Pages tags.

Synopsis

The XML datatype

data XML #

The XML datatype representation. Is either an Element or CDATA.

Instances

Show XML # 

Methods

showsPrec :: Int -> XML -> ShowS #

show :: XML -> String #

showList :: [XML] -> ShowS #

(Functor m, Monad m) => XMLGenerator (HSPT XML m) # 
(Functor m, Monad m) => XMLGen (HSPT XML m) # 

Associated Types

type XMLType (HSPT XML m :: * -> *) :: * #

type StringType (HSPT XML m :: * -> *) :: * #

data ChildType (HSPT XML m :: * -> *) :: * #

data AttributeType (HSPT XML m :: * -> *) :: * #

(Functor m, Monad m) => AppendChild (HSPT XML m) XML # 

Methods

appChild :: XML -> GenChild (HSPT XML m) -> GenXML (HSPT XML m) #

appAll :: XML -> GenChildList (HSPT XML m) -> GenXML (HSPT XML m) #

(Functor m, Monad m) => SetAttr (HSPT XML m) XML # 
(Monad m, Functor m) => EmbedAsAttr (HSPT XML m) Attribute # 
(Functor m, Monad m) => EmbedAsChild (HSPT XML m) () # 

Methods

asChild :: () -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsChild (HSPT XML m) Char # 

Methods

asChild :: Char -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsChild (HSPT XML m) Text # 

Methods

asChild :: Text -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsChild (HSPT XML m) Text # 

Methods

asChild :: Text -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsChild (HSPT XML m) String # 

Methods

asChild :: String -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsChild (HSPT XML m) XML # 

Methods

asChild :: XML -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsChild (HSPT XML m) [XML] # 

Methods

asChild :: [XML] -> GenChildList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text ()) # 

Methods

asAttr :: Attr Text () -> GenAttributeList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text ()) # 

Methods

asAttr :: Attr Text () -> GenAttributeList (HSPT XML m) #

(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Int) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Int) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Bool) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Bool) # 
(Monad m, Functor m) => EmbedAsAttr (HSPT XML m) (Attr Text Char) # 
(Monad m, Functor m) => EmbedAsAttr (HSPT XML m) (Attr Text Char) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Text) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Text) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Text) # 
(Functor m, Monad m) => EmbedAsAttr (HSPT XML m) (Attr Text Text) # 
type XMLType (HSPT XML m) # 
type XMLType (HSPT XML m) = XML
type StringType (HSPT XML m) # 
type StringType (HSPT XML m) = Text
data ChildType (HSPT XML m) # 
data AttributeType (HSPT XML m) # 

data XMLMetaData #

The XMLMetaData datatype

Specify the DOCTYPE, content-type, and preferred render for XML data.

See also: setMetaData and withMetaData

Constructors

XMLMetaData 

Fields

type Children = [XML] #

pcdata :: Text -> XML #

Embeds a string as a CDATA XML value.

cdata :: Text -> XML #

Embeds a string as a CDATA XML value.

The Attribute type

data AttrValue #

Represents an attribue value.

Constructors

Value Bool Text 
NoValue 

attrVal :: Text -> AttrValue #

Create an attribue value from a string.

pAttrVal :: Text -> AttrValue #

Create an attribue value from a string.

Functions

renderXML :: XML -> Text #

Pretty-prints XML values.

isElement :: XML -> Bool #

Test whether an XML value is an Element or CDATA

isCDATA :: XML -> Bool #

Test whether an XML value is an Element or CDATA