Improved benchmark argument parsing.

You can now say 'make bench BENCHARGS="markdown latex reader"'
and both the markdown and latex readers will be benchmarked.
This commit is contained in:
John MacFarlane 2017-12-30 11:22:55 -08:00
parent d5d6c9876d
commit 07b06cb6e6

View file

@ -48,18 +48,13 @@ writerBench doc (name, writer) = bench (name ++ " writer") $ nf
main :: IO ()
main = do
args <- getArgs
print args
let matchReader (n, TextReader _) =
case args of
[] -> True
[x] -> x == n
(x:y:_) -> x == n && y == "reader"
matchReader (_, _) = False
"reader" `elem` args && n `elem` args
matchReader _ = False
let matchWriter (n, TextWriter _) =
case args of
[] -> True
[x] -> x == n
(x:y:_) -> x == n && y == "writer"
matchWriter (_, _) = False
"writer" `elem` args && n `elem` args
matchWriter _ = False
let matchedReaders = filter matchReader readers
let matchedWriters = filter matchWriter writers
inp <- UTF8.toText <$> B.readFile "test/testsuite.txt"