hxt 9.3.1.16 → 9.3.1.18
raw patch · 6 files changed
+24/−18 lines, 6 files
Files
- hxt.cabal +10/−4
- src/Control/Arrow/ArrowList.hs +6/−4
- src/Control/Arrow/ArrowNF.hs +1/−1
- src/Text/XML/HXT/Arrow/Pickle.hs +1/−1
- src/Text/XML/HXT/Arrow/Pickle/Xml.hs +2/−4
- src/Text/XML/HXT/Arrow/XmlArrow.hs +4/−4
hxt.cabal view
@@ -1,6 +1,6 @@ -- arch-tag: Haskell XML Toolbox main description file Name: hxt-Version: 9.3.1.16+Version: 9.3.1.18 Synopsis: A collection of tools for processing XML with Haskell. Description: The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach for processing XML with Haskell.@@ -66,7 +66,7 @@ Stability: Stable Category: XML Homepage: https://github.com/UweSchmidt/hxt-Copyright: Copyright (c) 2005-20161 Uwe Schmidt+Copyright: Copyright (c) 2005-2019 Uwe Schmidt Build-type: Simple Cabal-version: >=1.8 @@ -123,6 +123,10 @@ with ghc >= 7.10 default is True default: False +flag profile+ description: turn profiling on+ default: False+ library exposed-modules: Control.Arrow.ArrowExc,@@ -210,8 +214,10 @@ hs-source-dirs: src - ghc-options: -Wall- ghc-prof-options: -caf-all+ ghc-options: -Wall -fwarn-tabs++ if flag(profile)+ ghc-prof-options: -caf-all extensions: MultiParamTypeClasses DeriveDataTypeable FunctionalDependencies FlexibleInstances CPP
src/Control/Arrow/ArrowList.hs view
@@ -13,11 +13,13 @@ This module defines the interface for list arrows. - A list arrow is a function, that gives a list of results+ A list arrow is a function that gives a list of results for a given argument. A single element result represents a normal function.- An empty list oven indicates, the function is undefined for the given argument.- The empty list may also represent False, none empty lists True.- A list with more than one element gives all results for a nondeterministic function.+ An empty list often indicates that the function is undefined+ for the given argument.+ The empty list may also represent False, non-empty lists True.+ A list with more than one element gives all results for a+ so called nondeterministic function. -}
src/Control/Arrow/ArrowNF.hs view
@@ -42,7 +42,7 @@ -- | -- partial evaluation of an arrow result using 'Control.FlatSeq' ----- There are tow arrows with force the partial evaluation. By convention+-- There are two arrows with force the partial evaluation. By convention -- the 2. should be less lazy than the 1. -- -- These arrows are sometimes useful for preventing space leaks, especially when parsing
src/Text/XML/HXT/Arrow/Pickle.hs view
@@ -15,7 +15,7 @@ This module is an adaptation of the pickler combinators developed by Andrew Kennedy-( http:\/\/research.microsoft.com\/~akenn\/fun\/picklercombinators.pdf )+( https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2004\/01\/picklercombinators.pdf ) The difference to Kennedys approach is that the target is not a list of Chars but a list of XmlTrees. The basic picklers will
src/Text/XML/HXT/Arrow/Pickle/Xml.hs view
@@ -20,7 +20,7 @@ This module is an adaptation of the pickler combinators developed by Andrew Kennedy- ( http:\/\/research.microsoft.com\/~akenn\/fun\/picklercombinators.pdf ).+ ( https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2004\/01\/picklercombinators.pdf ) The difference to Kennedys approach is that the target is not a list of Chars but a list of XmlTrees. The basic picklers will@@ -141,9 +141,7 @@ case r of Left err -> (Left err, st') Right v -> runUP (f v) st'- fail = throwMsg -- don't use fail, use throwError - instance MonadState St Unpickler where get = UP $ \ st -> (Right st, st) put st = UP $ \ _ -> (Right (), st)@@ -454,7 +452,7 @@ ) . xpPair pa --- | combine tow picklers with a choice+-- | combine two picklers with a choice -- -- Run two picklers in sequence like with xpSeq. -- If during unpickling the first one fails,
src/Text/XML/HXT/Arrow/XmlArrow.hs view
@@ -277,17 +277,17 @@ mkelem n afs cfs = mkElement (mkName n) (catA afs) (catA cfs) {-# INLINE mkelem #-} - -- | convenient arrow for element constrution with attributes but without content, simple variant of 'mkelem' and 'mkElement'+ -- | convenient arrow for element construction with attributes but without content, simple variant of 'mkelem' and 'mkElement' aelem :: String -> [a n XmlTree] -> a n XmlTree aelem n afs = catA afs >. \ al -> XN.mkElement (mkName n) al [] {-# INLINE aelem #-} - -- | convenient arrow for simple element constrution without attributes, simple variant of 'mkelem' and 'mkElement'+ -- | convenient arrow for simple element construction without attributes, simple variant of 'mkelem' and 'mkElement' selem :: String -> [a n XmlTree] -> a n XmlTree selem n cfs = catA cfs >. XN.mkElement (mkName n) [] {-# INLINE selem #-} - -- | convenient arrow for constrution of empty elements without attributes, simple variant of 'mkelem' and 'mkElement'+ -- | convenient arrow for construction of empty elements without attributes, simple variant of 'mkelem' and 'mkElement' eelem :: String -> a n XmlTree eelem n = constA (XN.mkElement (mkName n) [] []) {-# INLINE eelem #-}@@ -302,7 +302,7 @@ qattr = mkAttr {-# INLINE qattr #-} - -- | convenient arrow for attribute constrution, simple variant of 'mkAttr'+ -- | convenient arrow for attribute construction, simple variant of 'mkAttr' attr :: String -> a n XmlTree -> a n XmlTree attr = mkAttr . mkName {-# INLINE attr #-}