-- Make sure monads-fd package is installed.
import Text.XML.Expat.Chunked
import Text.XML.Expat.Format
import Control.Monad
import Control.Monad.Trans
import qualified Data.ByteString as B
import Data.Iteratee
import Data.List.Class
import Data.Text (Text)
import qualified Data.Text as T
import System.IO
main :: IO ()
main = do
iter <- parse defaultParseOptions dump
eErr <- fileDriver iter "sudoku.xml"
case eErr of
Left err -> putStrLn $ "failed: "++show err
Right () -> putStrLn ""
dump :: ListOf (UNode s IO Text) -> XMLT s IO ()
dump doc = do
(elt:_) <- toList doc
let txt = formatG elt
execute $ forL txt $ liftIO . B.hPutStr stdout
where
forL = flip mapL