wraxml 0.4.3.1 → 0.4.4
raw patch · 3 files changed
+34/−14 lines, 3 filesdep ~HaXmldep ~containersdep ~polyparse
Dependency ranges changed: HaXml, containers, polyparse, tagsoup, transformers
Files
- src/Text/XML/WraXML/String.hs +1/−1
- src/Text/XML/WraXML/Tree/HaXml.hs +26/−6
- wraxml.cabal +7/−7
src/Text/XML/WraXML/String.hs view
@@ -87,7 +87,7 @@ utf8ToUnicodeString = toUnicodeString . replaceUTF8ByUnicode -readHex :: (Num a) => String -> a+readHex :: (Eq a, Num a) => String -> a readHex str = case Numeric.readHex str of [(n,"")] -> n
src/Text/XML/WraXML/Tree/HaXml.hs view
@@ -1,4 +1,12 @@-module Text.XML.WraXML.Tree.HaXml where+module Text.XML.WraXML.Tree.HaXml (+ fromXmlTree,+ multiFromXmlTree,+ toXmlTree, toXmlTree',+ lift,+ onContent,+ liftFilterToDocument,+ processWith,+ ) where import qualified Text.XML.HaXml as HaXml import Text.XML.HaXml.Posn(Posn, posInNewCxt)@@ -20,7 +28,7 @@ import qualified Text.XML.Basic.Name as Name import qualified Text.XML.Basic.ProcessingInstruction as PI -import Data.Tuple.HT (mapSnd, )+import Data.Tuple.HT (mapPair, ) {- * conversion from our XML tree to HaXml tree -}@@ -33,6 +41,14 @@ [y] -> y _ -> error "top branch can't be a string" +haxmlName :: (Name.C name) => name -> HaXml.QName+haxmlName = HaXml.N . Name.toString++fromAttribute ::+ (Name.Attribute name) => Attr.T name XmlString.T -> HaXml.Attribute+fromAttribute =+ mapPair (HaXml.N, HaXmlString.fromXmlString) . Attr.toPair+ multiFromXmlTree :: (Name.Tag name, Name.Attribute name) => XmlTree.T i name XmlString.T -> [HaXml.Content i]@@ -42,8 +58,8 @@ (\x subs i -> case x of Tag (Elem.Cons name attrs) ->- [HaXml.CElem (HaXml.Elem (Name.toString name)- (map (mapSnd HaXmlString.fromXmlString . Attr.toPair) attrs)+ [HaXml.CElem (HaXml.Elem (haxmlName name)+ (map fromAttribute attrs) (concat subs)) i]) (\x i -> case x of@@ -75,12 +91,16 @@ toXmlTree = XmlTree.mergeStrings . toXmlTree' +toAttribute :: HaXml.Attribute -> (String, XmlString.T)+toAttribute =+ mapPair (HaXml.qname, HaXmlString.toXmlString)+ toXmlTree' x = case x of HaXml.CElem (HaXml.Elem name attrs subTrees) i -> XmlTreeL.tagIndexAttr i- name- (map (mapSnd HaXmlString.toXmlString) attrs)+ (HaXml.qname name)+ (map toAttribute attrs) (map toXmlTree' subTrees) HaXml.CString whitespace str i -> XmlTree.wrap2 i $
wraxml.cabal view
@@ -1,5 +1,5 @@ Name: wraxml-Version: 0.4.3.1+Version: 0.4.4 License: GPL License-File: LICENSE Author: Henning Thielemann <haskell@henning-thielemann.de>@@ -51,7 +51,7 @@ Source-Repository this Type: darcs Location: http://code.haskell.org/~thielema/wraxml/- Tag: 0.4.3.1+ Tag: 0.4.4 Flag buildExamples description: Build example executables@@ -59,18 +59,18 @@ Library Build-Depends:- polyparse >=1.2 && <1.4,- tagsoup >=0.8 && <0.11,+ polyparse >=1.2 && <1.9,+ tagsoup >=0.8 && <0.13, tagchup >=0.4 && <0.5, xml-basic >=0.1 && <0.2,- HaXml >=1.19.4 && <1.20,+ HaXml >=1.23 && <1.24, hxt >=8.5.0 && <8.6, hxt-filter >=8.1.1 && <9,- transformers >=0.2 && <0.3,+ transformers >=0.2 && <0.4, utility-ht >=0.0.4 && <0.1, explicit-exception >=0.1.3 && <0.2, data-accessor >=0.2 && <0.3,- containers >=0.1 && <0.5,+ containers >=0.1 && <0.6, base >=3 && <5 GHC-Options: -Wall Hs-source-dirs: src