git.iko.soy/typeable/pandoc
on master help sign in
Got rid of two unneeded 'getState's. Note that
87eb8befiddlosopher
src/Text/Pandoc/Readers/Markdown.hs+1−2
@@ -170,12 +170,11 @@ parseMarkdown = do
170 updateState (\state -> state { stateParseRaw = True })
170 updateState (\state -> state { stateParseRaw = True })
171 -- need to parse raw HTML, since markdown allows it
171 -- need to parse raw HTML, since markdown allows it
172 (title, author, date) <- option ([],[],"") titleBlock
172 (title, author, date) <- option ([],[],"") titleBlock
173− oldState <- getState
174 -- go through once just to get list of reference keys
173 -- go through once just to get list of reference keys
175 keysUsed <- lookAhead $ (do {manyTill (referenceKey <|> (do{anyLine; return Null})) eof;
174 keysUsed <- lookAhead $ (do {manyTill (referenceKey <|> (do{anyLine; return Null})) eof;
176 newState <- getState;
175 newState <- getState;
177 return $ stateKeysUsed newState})
176 return $ stateKeysUsed newState})
178− setState (oldState { stateKeysUsed = keysUsed })
177+ updateState (\st -> st { stateKeysUsed = keysUsed })
179 blocks <- parseBlocks -- go through again, for real
178 blocks <- parseBlocks -- go through again, for real
180 let blocks' = filter (/= Null) blocks
179 let blocks' = filter (/= Null) blocks
181 state <- getState
180 state <- getState
src/Text/Pandoc/Readers/RST.hs+2−2
@@ -100,12 +100,12 @@ titleTransform ((Header 1 head1):rest) = -- title, no subtitle
100titleTransform blocks = (blocks, [])
100titleTransform blocks = (blocks, [])
101
101
102parseRST = do
102parseRST = do
103− state <- getState
104 -- first pass: get anonymous keys
103 -- first pass: get anonymous keys
105 keyBlocks <- lookAhead $ manyTill (anonymousKey <|> (do{anyLine; return Null})) eof
104 keyBlocks <- lookAhead $ manyTill (anonymousKey <|> (do{anyLine; return Null})) eof
106 let anonymousKeys = filter (/= Null) keyBlocks
105 let anonymousKeys = filter (/= Null) keyBlocks
107 -- run parser again to fill in anonymous links...
106 -- run parser again to fill in anonymous links...
108− setState (state { stateKeyBlocks = anonymousKeys })
107+ updateState (\st -> st { stateKeyBlocks = anonymousKeys })
108+ state <- getState
109 blocks <- parseBlocks
109 blocks <- parseBlocks
110 let blocks' = filter isNotAnonKeyBlock blocks
110 let blocks' = filter isNotAnonKeyBlock blocks
111 let (blocks'', title) = if stateStandalone state
111 let (blocks'', title) = if stateStandalone state