module Text.BlazeT.Renderer.Text ( renderMarkupBuilderT , renderMarkupBuilder , renderMarkupBuilderWithT , renderMarkupT , renderMarkupWithT , renderHtmlBuilderT , renderHtmlBuilderWithT , renderHtmlT , renderHtmlWithT , renderMarkupBuilderWith , renderMarkup , renderMarkupWith , renderHtmlBuilder , renderHtmlBuilderWith , renderHtml , renderHtmlWith ) where import Control.Monad import Data.ByteString (ByteString) import Control.Monad.Identity import Data.Text (Text) import qualified Data.Text.Lazy as L import qualified Data.Text.Lazy.Builder as B import qualified Text.Blaze.Html.Renderer.Text as BH import qualified Text.Blaze.Renderer.Text as BU import Text.BlazeT renderMarkupBuilder :: MarkupM a -> B.Builder renderMarkupBuilder = runIdentity . renderMarkupBuilderT renderMarkupBuilderT :: Monad m => MarkupT m a -> m B.Builder renderMarkupBuilderT = liftM BU.renderMarkupBuilder . execMarkupT renderHtmlBuilder :: MarkupM a -> B.Builder renderHtmlBuilder = renderMarkupBuilder renderHtmlBuilderT :: Monad m => MarkupT m a -> m B.Builder renderHtmlBuilderT = renderMarkupBuilderT renderMarkup :: MarkupM a -> L.Text renderMarkup = runIdentity . renderMarkupT renderMarkupT :: Monad m => MarkupT m a -> m L.Text renderMarkupT = liftM BU.renderMarkup . execMarkupT renderHtml :: MarkupM a -> L.Text renderHtml = renderMarkup renderHtmlT :: Monad m => MarkupT m a -> m L.Text renderHtmlT = renderMarkupT renderMarkupWithT :: Monad m => (ByteString -> Text) -> MarkupT m a -> m L.Text renderMarkupWithT g = liftM (BU.renderMarkupWith g) . execMarkupT renderMarkupWith :: (ByteString -> Text) -> MarkupM a -> L.Text renderMarkupWith g = runIdentity . renderMarkupWithT g renderHtmlWithT :: Monad m => (ByteString -> Text) -> MarkupT m a -> m L.Text renderHtmlWithT g = liftM (BH.renderHtmlWith g) . execMarkupT renderHtmlWith :: (ByteString -> Text) -> MarkupM a -> L.Text renderHtmlWith g = runIdentity . renderHtmlWithT g renderHtmlBuilderWithT :: Monad m => (ByteString -> Text) -> MarkupT m a -> m B.Builder renderHtmlBuilderWithT g = liftM (BH.renderHtmlBuilderWith g) . execMarkupT renderHtmlBuilderWith :: (ByteString -> Text) -> MarkupM a -> B.Builder renderHtmlBuilderWith g = runIdentity . renderHtmlBuilderWithT g renderMarkupBuilderWithT :: Monad m => (ByteString -> Text) -> MarkupT m a -> m B.Builder renderMarkupBuilderWithT g = liftM (BU.renderMarkupBuilderWith g) . execMarkupT renderMarkupBuilderWith :: (ByteString -> Text) -> MarkupM a -> B.Builder renderMarkupBuilderWith g = runIdentity . renderMarkupBuilderWithT g