packages feed

web-routes-hsp 0.19 → 0.20

raw patch · 2 files changed

+23/−2 lines, 2 filesdep +textdep ~hsx

Dependencies added: text

Dependency ranges changed: hsx

Files

Web/Routes/XMLGenT.hs view
@@ -4,6 +4,8 @@  import HSP import Control.Applicative ((<$>))+import qualified Data.Text as T+import qualified Data.Text.Lazy as TL import qualified HSX.XMLGenerator as HSX import Web.Routes.RouteT (RouteT, ShowURL(showURL), URL) @@ -21,6 +23,7 @@                               childer                              )     xmlToChild = UChild+    pcdataToChild = HSX.xmlToChild . pcdata                                                             flattenCDATA :: [XML] -> [XML] flattenCDATA cxml = @@ -36,6 +39,12 @@                            (CDATA e1 s1, CDATA e2 s2) | e1 == e2 -> flP (CDATA e1 (s1++s2) : xs) bs                            _ -> flP (y:xs) (x:bs) +instance (Monad m, Functor m) => IsAttrValue (RouteT url m) T.Text where+    toAttrValue = toAttrValue . T.unpack++instance (Monad m, Functor m) => IsAttrValue (RouteT url m) TL.Text where+    toAttrValue = toAttrValue . TL.unpack+ instance (Functor m, Monad m) => HSX.EmbedAsAttr (RouteT url m) Attribute where     asAttr = return . (:[]) . UAttr  @@ -52,11 +61,23 @@ instance (Functor m, Monad m) => HSX.EmbedAsAttr (RouteT url m) (Attr String Int) where     asAttr (n := i)  = asAttr $ MkAttr (toName n, pAttrVal (show i)) +instance (Monad m, Functor m, IsName n) => (EmbedAsAttr (RouteT url m) (Attr n TL.Text)) where+    asAttr (n := a) = asAttr $ MkAttr (toName n, pAttrVal $ TL.unpack a)++instance (Monad m, Functor m, IsName n) => (EmbedAsAttr (RouteT url m) (Attr n T.Text)) where+    asAttr (n := a) = asAttr $ MkAttr (toName n, pAttrVal $ T.unpack a)+ instance (Functor m, Monad m) => EmbedAsChild (RouteT url m) Char where     asChild = XMLGenT . return . (:[]) . UChild . pcdata . (:[])  instance (Functor m, Monad m) => EmbedAsChild (RouteT url m) String where     asChild = XMLGenT . return . (:[]) . UChild . pcdata++instance (Monad m, Functor m) => (EmbedAsChild (RouteT url m) TL.Text) where+    asChild = asChild . TL.unpack++instance (Monad m, Functor m) => (EmbedAsChild (RouteT url m) T.Text) where+    asChild = asChild . T.unpack  instance (Functor m, Monad m) => EmbedAsChild (RouteT url m) XML where     asChild = XMLGenT . return . (:[]) . UChild
web-routes-hsp.cabal view
@@ -1,5 +1,5 @@ Name:             web-routes-hsp-Version:          0.19+Version:          0.20 License:          BSD3 Author:           jeremy@seereason.com Maintainer:       partners@seereason.com@@ -10,7 +10,7 @@ Build-type:       Simple  Library-        Build-Depends:    base >= 4 && < 5, hsx, hsp, web-routes >= 0.19+        Build-Depends:    base >= 4 && < 5, hsx >= 0.7.0, hsp, web-routes >= 0.19, text         Exposed-Modules:  Web.Routes.XMLGenT  source-repository head