module Text.Hamlet ( -- * Basic quasiquoters hamlet , xhamlet -- * Load from external file , hamletFile , xhamletFile -- * Customized settings , hamletWithSettings , hamletFileWithSettings , HamletSettings (..) , defaultHamletSettings -- * Datatypes , Html , Hamlet -- * Construction/rendering , renderHamlet , renderHtml , preEscapedString , string , unsafeByteString , cdata ) where import Text.Hamlet.Parse import Text.Hamlet.Quasi import Text.Blaze import qualified Data.ByteString.Lazy as L import Data.Monoid (mappend) -- | An function generating an 'Html' given a URL-rendering function. type Hamlet url = (url -> String) -> Html () -- | Converts a 'Hamlet' to lazy bytestring. renderHamlet :: (url -> String) -> Hamlet url -> L.ByteString renderHamlet render h = renderHtml $ h render -- | Wrap an 'Html' for embedding in an XML file. cdata :: Html () -> Html () cdata h = preEscapedString ""