ogmarkup-3.0.1: bench/Bench.hs
{-# LANGUAGE TypeSynonymInstances #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE MultiParamTypeClasses #-}
import Criterion.Main
import Text.Ogmarkup
import Data.Text (Text)
import Data.FileEmbed
main = defaultMain [ bench "nf ogmarkup text -> text" $ nf (ogmarkup inputText) ConfText
, bench "whnf ogmarkup text -> text" $ whnf (ogmarkup inputText) ConfText
, bench "nf ogmarkup string -> string" $ nf (ogmarkup inputString) ConfString
, bench "whnf ogmarkup string -> string" $ whnf (ogmarkup inputString) ConfString
]
inputString :: String
inputString = $(embedFile "bench/test.up")
inputText :: Text
inputText = $(embedFile "bench/test.up")
data ConfText = ConfText
instance GenConf ConfText Text where
printSpace _ _ = " "
data ConfString = ConfString
instance GenConf ConfString String where
printSpace _ _ = " "