@@ -17,6 +17,8 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1717-}
1818import Text.Pandoc
1919import Text.Pandoc.Class hiding (getCurrentTime)
20+import qualified Text.Pandoc.UTF8 as UTF8
21+import Data.Text (Text, pack)
2022import Data.Time (getCurrentTime)
2123import qualified Data.ByteString as B
2224import qualified Data.Map as Map
@@ -27,12 +29,12 @@ import Debug.Trace (trace)
2729import System.Environment (getArgs)
2830
2931readerBench :: Pandoc
30− -> (String, ReaderOptions -> String -> Pandoc)
32+ -> (String, ReaderOptions -> Text -> Pandoc)
3133 -> Maybe Benchmark
3234readerBench doc (name, reader) =
3335 case lookup name writers of
3436 Just (StringWriter writer) ->
35− let inp = either (error . show) id $ runPure
37+ let inp = either (error . show) pack $ runPure
3638 $ writer def{ writerWrapText = WrapAuto} doc
3739 in return $ bench (name ++ " reader") $ nf
3840 (reader def) inp
@@ -47,7 +49,7 @@ writerBench doc (name, writer) = bench (name ++ " writer") $ nf
4749main :: IO ()
4850main = do
4951 args <- getArgs
50− let matchReader (n, StringReader _) =
52+ let matchReader (n, TextReader _) =
5153 case args of
5254 [] -> True
5355 [x] -> x == n
@@ -61,7 +63,7 @@ main = do
6163 matchWriter (_, _) = False
6264 let matchedReaders = filter matchReader readers
6365 let matchedWriters = filter matchWriter writers
64− inp <- readFile "test/testsuite.txt"
66+ inp <- UTF8.toText <$> B.readFile "test/testsuite.txt"
6567 lalune <- B.readFile "test/lalune.jpg"
6668 movie <- B.readFile "test/movie.jpg"
6769 time <- getCurrentTime
@@ -74,7 +76,7 @@ main = do
7476 let doc = either (error . show) id $ runPure $ readMarkdown opts inp
7577 let readers' = [(n, \o d ->
7678 either (error . show) id $ runPure $ r o d)
77− | (n, StringReader r) <- matchedReaders]
79+ | (n, TextReader r) <- matchedReaders]
7880 let readerBs = mapMaybe (readerBench doc)
7981 $ filter (\(n,_) -> n /="haddock") readers'
8082 let writers' = [(n, \o d ->