@@ -2,11 +2,13 @@
22{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
33module HeadersText (headers) where
44
5+import Common (rechunkT)
56import Control.Applicative
67import Criterion.Main (bench, bgroup, nf)
78import Criterion.Types (Benchmark)
89import Data.Char (isSpace)
910import qualified Data.Attoparsec.Text as T
11+import qualified Data.Attoparsec.Text.Lazy as TL
1012import qualified Data.Text.IO as T
1113
1214header = do
@@ -41,7 +43,15 @@ headers :: IO Benchmark
4143headers = do
4244 req <- T.readFile "http-request.txt"
4345 resp <- T.readFile "http-response.txt"
44− return $ bgroup "headersT" [
45− bench "request" $ nf (T.parseOnly request) req
46− , bench "response" $ nf (T.parseOnly response) resp
46+ let reql = rechunkT 4 req
47+ respl = rechunkT 4 resp
48+ return $ bgroup "headers" [
49+ bgroup "T" [
50+ bench "request" $ nf (T.parseOnly request) req
51+ , bench "response" $ nf (T.parseOnly response) resp
52+ ]
53+ , bgroup "TL" [
54+ bench "request" $ nf (TL.parse request) reql
55+ , bench "response" $ nf (TL.parse response) respl
56+ ]
4757 ]