Cabal-Version: >= 1.6 Name: hexpat Version: 0.20.4 Synopsis: XML parser/formatter based on expat Description: This package provides a general purpose Haskell XML library using Expat to do its parsing ( - a fast stream-oriented XML parser written in C). It is extensible to any string type, with @String@, @ByteString@ and @Text@ provided out of the box. . Basic usage: Parsing a tree (/Tree/), formatting a tree (/Format/). Other features: Helpers for processing XML trees (/Proc/), trees annotated with XML source location (/Annotated/), extended XML trees with comments, processing instructions, etc (/Extended/), XML cursors (/Cursor/), SAX-style parse (/SAX/), and access to the low-level interface in case speed is paramount (/Internal.IO/). . The design goals are speed, speed, speed, interface simplicity and modularity. . For introduction and examples, see the /Text.XML.Expat.Tree/ module. For benchmarks, . If you want to do interactive I\/O, an obvious option is to use lazy parsing with one of the lazy I\/O functions such as hGetContents. However, this can be problematic in some applications because it doesn't handle I\/O errors properly and can give no guarantee of timely resource cleanup. Because of the generalized list, Hexpat is designed to allow for chunked I/O, but as of this writing I haven't done a nice integration with enumerator and friends. . /IO/ is filed under /Internal/ because it's low-level and most users won't want it. The other /Internal/ modules are re-exported by /Annotated/, /Tree/ and /Extended/, so you won't need to import them directly. . Credits to Iavor Diatchki and the @xml@ (XML.Light) package for /Proc/ and /Cursor/. Thanks to the many contributors. . ChangeLog: 0.15 changes intended to fix a (rare) \"error: a C finalizer called back into Haskell.\" that seemed only to happen only on ghc6.12.X; 0.15.1 Fix broken Annotated parse; 0.16 switch from mtl to transformers; 0.17 fix mapNodeContainer & rename some things.; 0.18 rename defaultEncoding to overrideEncoding. 0.18.3 formatG and indent were demanding list items more than once (inefficient in chunked processing); 0.19 add Extended.hs; 0.19.1 fix a memory leak introduced in 0.19, delegate parsing to bound thread if unbound (see note above); 0.19.2 include expat source code so \'cabal install\' just works on Linux, Mac and Windows (thanks Jacob Stanley); 0.19.3 fix misconfiguration of expat which broke entity parsing; 0.19.4 bump version constraint for text; 0.19.5 bump text to < 0.12 and fix text-0.10.0.1 breakage; 0.19.6 dependency breakage with List; 0.19.7 ghc-7.2.1 compatibility; 0.19.8 fix space leak on lazy parse under ghc-7.2.1; 0.19.9 fix formatting of > character + improve performance; 0.19.10 ghc-7.4.x compatibility; 0.20.1 fix an unfortunate crash when used in parallel processing and greatly improve performance; 0.20.2 make parseSaxG lazier; 0.20.3 minor build issues; 0.20.4 remove dependency on extensible-exceptions. Category: XML License: BSD3 License-File: LICENSE Author: Stephen Blackheath [blackh] (the primary author), Doug Beardsley, Gregory Collins, Evan Martin (who started the project), Matthew Pocock [drdozer], Kevin Jardine, Jacob Stanley, Simon Hengel Maintainer: Stephen Blackheath Copyright: (c) 2009 Doug Beardsley , (c) 2009-2012 Stephen Blackheath , (c) 2009 Gregory Collins, (c) 2008 Evan Martin , (c) 2009 Matthew Pocock , (c) 2007-2009 Galois Inc., (c) 2010 Kevin Jardine, (c) 2012 Simon Hengel Homepage: http://haskell.org/haskellwiki/Hexpat/ Extra-Source-Files: test/hexpat-tests.cabal, test/test.xml, test/suite/TestSuite.hs, test/suite/Text/XML/Expat/Proc/Tests.hs, test/suite/Text/XML/Expat/UnitTests.hs, test/suite/Text/XML/Expat/Tests.hs, test/suite/Text/XML/Expat/Cursor/Tests.hs, test/suite/Text/XML/Expat/ParallelTest.hs, test/suite/Text/XML/Expat/ParseFormat.hs, test/thread-leak/build.sh, test/thread-leak/callme.c, test/thread-leak/cleak.c, test/thread-leak/clean.sh, test/thread-leak/thread-leak.hs, test/hexpat-leak/instant-message.llsd, test/hexpat-leak/Parse.hs, test/hexpat-leak/run.sh, test/hexpat-leak/build.sh test/readRoads.hs, test/ROADS.xml, cbits/amigaconfig.h, cbits/asciitab.h, cbits/expat.h, cbits/internal.h, cbits/macconfig.h, cbits/utf8tab.h, cbits/xmlrole.h, cbits/xmltok_impl.h, cbits/ascii.h, cbits/expat_external.h, cbits/iasciitab.h, cbits/latin1tab.h, cbits/nametab.h, cbits/winconfig.h, cbits/xmltok.h Build-Type: Simple Stability: beta source-repository head type: git location: https://github.com/the-real-blackh/hexpat Library Build-Depends: base >= 3 && < 5, bytestring, transformers, text >= 0.5 && < 0.12, utf8-string == 0.3.*, deepseq >= 1.1.0.0 && < 1.4.0.0, containers, List >= 0.4.2 && < 0.6 Exposed-Modules: Text.XML.Expat.Annotated, Text.XML.Expat.Cursor, Text.XML.Expat.Extended, Text.XML.Expat.Format, Text.XML.Expat.Proc, Text.XML.Expat.SAX, Text.XML.Expat.Tree, Text.XML.Expat.Internal.DocumentClass, Text.XML.Expat.Internal.IO, Text.XML.Expat.Internal.Namespaced, Text.XML.Expat.Internal.NodeClass, Text.XML.Expat.Internal.Qualified ghc-options: -Wall -fno-warn-name-shadowing include-dirs: cbits c-sources: cbits/xmlparse.c, cbits/xmlrole.c, cbits/xmltok.c, cbits/xmltok_impl.c, cbits/xmltok_ns.c, Text/XML/Expat/Internal/Glue.c cc-options: -DHAVE_MEMMOVE -DXML_NS -DXML_DTD