git.iko.soy/typeable/pandoc
on master help sign in
Muse reader: replace pattern matching with "when"
4cb053cAlexander Krotov
src/Text/Pandoc/Readers/Muse.hs+5−7
@@ -50,7 +50,7 @@ import Data.List (stripPrefix, intercalate)
50import Data.List.Split (splitOn)
50import Data.List.Split (splitOn)
51import qualified Data.Map as M
51import qualified Data.Map as M
52import qualified Data.Set as Set
52import qualified Data.Set as Set
53−import Data.Maybe (fromMaybe, isNothing)
53+import Data.Maybe (fromMaybe, isJust, isNothing)
54import Data.Text (Text, unpack)
54import Data.Text (Text, unpack)
55import System.FilePath (takeExtension)
55import System.FilePath (takeExtension)
56import Text.HTML.TagSoup
56import Text.HTML.TagSoup
@@ -474,9 +474,8 @@ amuseNoteBlockUntil end = try $ do
474 updateState (\st -> st { museInPara = False })
474 updateState (\st -> st { museInPara = False })
475 (content, e) <- listItemContentsUntil (sourceColumn pos - 1) (fail "x") end
475 (content, e) <- listItemContentsUntil (sourceColumn pos - 1) (fail "x") end
476 oldnotes <- museNotes <$> getState
476 oldnotes <- museNotes <$> getState
477− case M.lookup ref oldnotes of
477+ when (isJust (M.lookup ref oldnotes))
478− Just _ -> logMessage $ DuplicateNoteReference ref pos
478+ (logMessage $ DuplicateNoteReference ref pos)
479− Nothing -> return ()
480 updateState $ \s -> s{ museNotes = M.insert ref (pos, content) oldnotes }
479 updateState $ \s -> s{ museNotes = M.insert ref (pos, content) oldnotes }
481 return (mempty, e)
480 return (mempty, e)
482
481
@@ -489,9 +488,8 @@ emacsNoteBlock = try $ do
489 ref <- noteMarker <* skipSpaces
488 ref <- noteMarker <* skipSpaces
490 content <- mconcat <$> blocksTillNote
489 content <- mconcat <$> blocksTillNote
491 oldnotes <- museNotes <$> getState
490 oldnotes <- museNotes <$> getState
492− case M.lookup ref oldnotes of
491+ when (isJust (M.lookup ref oldnotes))
493− Just _ -> logMessage $ DuplicateNoteReference ref pos
492+ (logMessage $ DuplicateNoteReference ref pos)
494− Nothing -> return ()
495 updateState $ \s -> s{ museNotes = M.insert ref (pos, content) oldnotes }
493 updateState $ \s -> s{ museNotes = M.insert ref (pos, content) oldnotes }
496 return mempty
494 return mempty
497 where
495 where