From 675085c2e0b0b851378da08b7d73024766107c87 Mon Sep 17 00:00:00 2001 From: Johannes Gerer Date: Wed, 26 Oct 2016 02:07:02 +0200 Subject: Initial --- src/Text/BlazeT/Renderer/Text.hs | 75 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 src/Text/BlazeT/Renderer/Text.hs (limited to 'src/Text/BlazeT/Renderer/Text.hs') diff --git a/src/Text/BlazeT/Renderer/Text.hs b/src/Text/BlazeT/Renderer/Text.hs new file mode 100644 index 0000000..31181eb --- /dev/null +++ b/src/Text/BlazeT/Renderer/Text.hs @@ -0,0 +1,75 @@ +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 -- cgit v1.2.3