From b28c846018996aefb9128b2c5a7ad7d0975e1f05 Mon Sep 17 00:00:00 2001 From: Julien Cretel <j.cretel@umail.ucc.ie> Date: Tue, 7 Apr 2015 13:46:14 +0100 Subject: [PATCH] Markdown Reader: eliminate common subexpressions --- src/Text/Pandoc/Readers/Markdown.hs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 369c889d1..ccda83576 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -1078,7 +1078,9 @@ dashedLine :: Monad m => Char dashedLine ch = do dashes <- many1 (char ch) sp <- many spaceChar - return (length dashes, length $ dashes ++ sp) + let lengthDashes = length dashes + lengthSp = length sp + return (lengthDashes, lengthDashes + lengthSp) -- Parse a table header with dashed lines of '-' preceded by -- one (or zero) line of text. @@ -1231,7 +1233,8 @@ gridPart :: Monad m => Char -> ParserT [Char] st m (Int, Int) gridPart ch = do dashes <- many1 (char ch) char '+' - return (length dashes, length dashes + 1) + let lengthDashes = length dashes + return (lengthDashes, lengthDashes + 1) gridDashedLines :: Monad m => Char -> ParserT [Char] st m [(Int,Int)] gridDashedLines ch = try $ char '+' >> many1 (gridPart ch) <* blankline