git.iko.soy/typeable/pandoc
on master help sign in
Remove unused HasHeaderMap (#5175)
792f18aAlexander
src/Text/Pandoc/Parsing.hs+1−16
@@ -93,7 +93,6 @@ module Text.Pandoc.Parsing ( takeWhileP,
93 reportLogMessages,
93 reportLogMessages,
94 ParserState (..),
94 ParserState (..),
95 HasReaderOptions (..),
95 HasReaderOptions (..),
96− HasHeaderMap (..),
97 HasIdentifierList (..),
96 HasIdentifierList (..),
98 HasMacros (..),
97 HasMacros (..),
99 HasLogMessages (..),
98 HasLogMessages (..),
@@ -1079,7 +1078,6 @@ data ParserState = ParserState
1079 stateMeta' :: F Meta, -- ^ Document metadata
1078 stateMeta' :: F Meta, -- ^ Document metadata
1080 stateCitations :: M.Map String String, -- ^ RST-style citations
1079 stateCitations :: M.Map String String, -- ^ RST-style citations
1081 stateHeaderTable :: [HeaderType], -- ^ Ordered list of header types used
1080 stateHeaderTable :: [HeaderType], -- ^ Ordered list of header types used
1082− stateHeaders :: M.Map Inlines String, -- ^ List of headers and ids (used for implicit ref links)
1083 stateIdentifiers :: Set.Set String, -- ^ Header identifiers used
1081 stateIdentifiers :: Set.Set String, -- ^ Header identifiers used
1084 stateNextExample :: Int, -- ^ Number of next example
1082 stateNextExample :: Int, -- ^ Number of next example
1085 stateExamples :: M.Map String Int, -- ^ Map from example labels to numbers
1083 stateExamples :: M.Map String Int, -- ^ Map from example labels to numbers
@@ -1129,15 +1127,6 @@ instance Monad m => HasQuoteContext ParserState m where
1129 setState newState { stateQuoteContext = oldQuoteContext }
1127 setState newState { stateQuoteContext = oldQuoteContext }
1130 return result
1128 return result
1131
1129
1132−class HasHeaderMap st where
1133− extractHeaderMap :: st -> M.Map Inlines String
1134− updateHeaderMap :: (M.Map Inlines String -> M.Map Inlines String) ->
1135− st -> st
1136−
1137−instance HasHeaderMap ParserState where
1138− extractHeaderMap = stateHeaders
1139− updateHeaderMap f st = st{ stateHeaders = f $ stateHeaders st }
1140−
1141class HasIdentifierList st where
1130class HasIdentifierList st where
1142 extractIdentifierList :: st -> Set.Set String
1131 extractIdentifierList :: st -> Set.Set String
1143 updateIdentifierList :: (Set.Set String -> Set.Set String) -> st -> st
1132 updateIdentifierList :: (Set.Set String -> Set.Set String) -> st -> st
@@ -1198,7 +1187,6 @@ defaultParserState =
1198 stateMeta' = return nullMeta,
1187 stateMeta' = return nullMeta,
1199 stateCitations = M.empty,
1188 stateCitations = M.empty,
1200 stateHeaderTable = [],
1189 stateHeaderTable = [],
1201− stateHeaders = M.empty,
1202 stateIdentifiers = Set.empty,
1190 stateIdentifiers = Set.empty,
1203 stateNextExample = 1,
1191 stateNextExample = 1,
1204 stateExamples = M.empty,
1192 stateExamples = M.empty,
@@ -1283,12 +1271,11 @@ type SubstTable = M.Map Key Inlines
1283-- is encountered that duplicates an earlier identifier
1271-- is encountered that duplicates an earlier identifier
1284-- (explicit or automatically generated).
1272-- (explicit or automatically generated).
1285registerHeader :: (Stream s m a, HasReaderOptions st,
1273registerHeader :: (Stream s m a, HasReaderOptions st,
1286− HasHeaderMap st, HasLogMessages st, HasIdentifierList st)
1274+ HasLogMessages st, HasIdentifierList st)
1287 => Attr -> Inlines -> ParserT s st m Attr
1275 => Attr -> Inlines -> ParserT s st m Attr
1288registerHeader (ident,classes,kvs) header' = do
1276registerHeader (ident,classes,kvs) header' = do
1289 ids <- extractIdentifierList <$> getState
1277 ids <- extractIdentifierList <$> getState
1290 exts <- getOption readerExtensions
1278 exts <- getOption readerExtensions
1291− let insert' = M.insertWith (\_new old -> old)
1292 if null ident && Ext_auto_identifiers `extensionEnabled` exts
1279 if null ident && Ext_auto_identifiers `extensionEnabled` exts
1293 then do
1280 then do
1294 let id' = uniqueIdent exts (B.toList header') ids
1281 let id' = uniqueIdent exts (B.toList header') ids
@@ -1297,7 +1284,6 @@ registerHeader (ident,classes,kvs) header' = do
1297 else id'
1284 else id'
1298 updateState $ updateIdentifierList $ Set.insert id'
1285 updateState $ updateIdentifierList $ Set.insert id'
1299 updateState $ updateIdentifierList $ Set.insert id''
1286 updateState $ updateIdentifierList $ Set.insert id''
1300− updateState $ updateHeaderMap $ insert' header' id'
1301 return (id'',classes,kvs)
1287 return (id'',classes,kvs)
1302 else do
1288 else do
1303 unless (null ident) $ do
1289 unless (null ident) $ do
@@ -1305,7 +1291,6 @@ registerHeader (ident,classes,kvs) header' = do
1305 pos <- getPosition
1291 pos <- getPosition
1306 logMessage $ DuplicateIdentifier ident pos
1292 logMessage $ DuplicateIdentifier ident pos
1307 updateState $ updateIdentifierList $ Set.insert ident
1293 updateState $ updateIdentifierList $ Set.insert ident
1308− updateState $ updateHeaderMap $ insert' header' ident
1309 return (ident,classes,kvs)
1294 return (ident,classes,kvs)
1310
1295
1311smartPunctuation :: (HasReaderOptions st, HasLastStrPosition st, HasQuoteContext st m, Stream s m Char)
1296smartPunctuation :: (HasReaderOptions st, HasLastStrPosition st, HasQuoteContext st m, Stream s m Char)
src/Text/Pandoc/Readers/HTML.hs+1−6
@@ -105,7 +105,7 @@ readHtml opts inp = do
105 result <- flip runReaderT def $
105 result <- flip runReaderT def $
106 runParserT parseDoc
106 runParserT parseDoc
107 (HTMLState def{ stateOptions = opts }
107 (HTMLState def{ stateOptions = opts }
108− [] Nothing Set.empty M.empty [] M.empty)
108+ [] Nothing Set.empty [] M.empty)
109 "source" tags
109 "source" tags
110 case result of
110 case result of
111 Right doc -> return doc
111 Right doc -> return doc
@@ -126,7 +126,6 @@ data HTMLState =
126 noteTable :: [(String, Blocks)],
126 noteTable :: [(String, Blocks)],
127 baseHref :: Maybe URI,
127 baseHref :: Maybe URI,
128 identifiers :: Set.Set String,
128 identifiers :: Set.Set String,
129− headerMap :: M.Map Inlines String,
130 logMessages :: [LogMessage],
129 logMessages :: [LogMessage],
131 macros :: M.Map Text Macro
130 macros :: M.Map Text Macro
132 }
131 }
@@ -1295,10 +1294,6 @@ instance HasIdentifierList HTMLState where
1295 extractIdentifierList = identifiers
1294 extractIdentifierList = identifiers
1296 updateIdentifierList f s = s{ identifiers = f (identifiers s) }
1295 updateIdentifierList f s = s{ identifiers = f (identifiers s) }
1297
1296
1298−instance HasHeaderMap HTMLState where
1299− extractHeaderMap = headerMap
1300− updateHeaderMap f s = s{ headerMap = f (headerMap s) }
1301−
1302instance HasLogMessages HTMLState where
1297instance HasLogMessages HTMLState where
1303 addLogMessage m s = s{ logMessages = m : logMessages s }
1298 addLogMessage m s = s{ logMessages = m : logMessages s }
1304 getLogMessages = reverse . logMessages
1299 getLogMessages = reverse . logMessages
src/Text/Pandoc/Readers/LaTeX/Parsing.hs−6
@@ -131,7 +131,6 @@ data LaTeXState = LaTeXState{ sOptions :: ReaderOptions
131 , sQuoteContext :: QuoteContext
131 , sQuoteContext :: QuoteContext
132 , sMacros :: M.Map Text Macro
132 , sMacros :: M.Map Text Macro
133 , sContainers :: [String]
133 , sContainers :: [String]
134− , sHeaders :: M.Map Inlines String
135 , sLogMessages :: [LogMessage]
134 , sLogMessages :: [LogMessage]
136 , sIdentifiers :: Set.Set String
135 , sIdentifiers :: Set.Set String
137 , sVerbatimMode :: Bool
136 , sVerbatimMode :: Bool
@@ -153,7 +152,6 @@ defaultLaTeXState = LaTeXState{ sOptions = def
153 , sQuoteContext = NoQuote
152 , sQuoteContext = NoQuote
154 , sMacros = M.empty
153 , sMacros = M.empty
155 , sContainers = []
154 , sContainers = []
156− , sHeaders = M.empty
157 , sLogMessages = []
155 , sLogMessages = []
158 , sIdentifiers = Set.empty
156 , sIdentifiers = Set.empty
159 , sVerbatimMode = False
157 , sVerbatimMode = False
@@ -192,10 +190,6 @@ instance HasIncludeFiles LaTeXState where
192 addIncludeFile f s = s{ sContainers = f : sContainers s }
190 addIncludeFile f s = s{ sContainers = f : sContainers s }
193 dropLatestIncludeFile s = s { sContainers = drop 1 $ sContainers s }
191 dropLatestIncludeFile s = s { sContainers = drop 1 $ sContainers s }
194
192
195−instance HasHeaderMap LaTeXState where
196− extractHeaderMap = sHeaders
197− updateHeaderMap f st = st{ sHeaders = f $ sHeaders st }
198−
199instance HasMacros LaTeXState where
193instance HasMacros LaTeXState where
200 extractMacros st = sMacros st
194 extractMacros st = sMacros st
201 updateMacros f st = st{ sMacros = f (sMacros st) }
195 updateMacros f st = st{ sMacros = f (sMacros st) }
src/Text/Pandoc/Readers/MediaWiki.hs−7
@@ -43,7 +43,6 @@ import Control.Monad.Except (throwError)
43import Data.Char (isDigit, isSpace)
43import Data.Char (isDigit, isSpace)
44import qualified Data.Foldable as F
44import qualified Data.Foldable as F
45import Data.List (intercalate, intersperse, isPrefixOf)
45import Data.List (intercalate, intersperse, isPrefixOf)
46−import qualified Data.Map as M
47import Data.Maybe (fromMaybe, maybeToList)
46import Data.Maybe (fromMaybe, maybeToList)
48import Data.Sequence (ViewL (..), viewl, (<|))
47import Data.Sequence (ViewL (..), viewl, (<|))
49import qualified Data.Set as Set
48import qualified Data.Set as Set
@@ -72,7 +71,6 @@ readMediaWiki opts s = do
72 , mwMaxNestingLevel = 4
71 , mwMaxNestingLevel = 4
73 , mwNextLinkNumber = 1
72 , mwNextLinkNumber = 1
74 , mwCategoryLinks = []
73 , mwCategoryLinks = []
75− , mwHeaderMap = M.empty
76 , mwIdentifierList = Set.empty
74 , mwIdentifierList = Set.empty
77 , mwLogMessages = []
75 , mwLogMessages = []
78 , mwInTT = False
76 , mwInTT = False
@@ -86,7 +84,6 @@ data MWState = MWState { mwOptions :: ReaderOptions
86 , mwMaxNestingLevel :: Int
84 , mwMaxNestingLevel :: Int
87 , mwNextLinkNumber :: Int
85 , mwNextLinkNumber :: Int
88 , mwCategoryLinks :: [Inlines]
86 , mwCategoryLinks :: [Inlines]
89− , mwHeaderMap :: M.Map Inlines String
90 , mwIdentifierList :: Set.Set String
87 , mwIdentifierList :: Set.Set String
91 , mwLogMessages :: [LogMessage]
88 , mwLogMessages :: [LogMessage]
92 , mwInTT :: Bool
89 , mwInTT :: Bool
@@ -97,10 +94,6 @@ type MWParser m = ParserT [Char] MWState m
97instance HasReaderOptions MWState where
94instance HasReaderOptions MWState where
98 extractReaderOptions = mwOptions
95 extractReaderOptions = mwOptions
99
96
100−instance HasHeaderMap MWState where
101− extractHeaderMap = mwHeaderMap
102− updateHeaderMap f st = st{ mwHeaderMap = f $ mwHeaderMap st }
103−
104instance HasIdentifierList MWState where
97instance HasIdentifierList MWState where
105 extractIdentifierList = mwIdentifierList
98 extractIdentifierList = mwIdentifierList
106 updateIdentifierList f st = st{ mwIdentifierList = f $ mwIdentifierList st }
99 updateIdentifierList f st = st{ mwIdentifierList = f $ mwIdentifierList st }
src/Text/Pandoc/Readers/Muse.hs−6
@@ -74,7 +74,6 @@ type F = Future MuseState
74
74
75data MuseState = MuseState { museMeta :: F Meta -- ^ Document metadata
75data MuseState = MuseState { museMeta :: F Meta -- ^ Document metadata
76 , museOptions :: ReaderOptions
76 , museOptions :: ReaderOptions
77− , museHeaders :: M.Map Inlines String -- ^ List of headers and ids (used for implicit ref links)
78 , museIdentifierList :: Set.Set String
77 , museIdentifierList :: Set.Set String
79 , museLastSpacePos :: Maybe SourcePos -- ^ Position after last space or newline parsed
78 , museLastSpacePos :: Maybe SourcePos -- ^ Position after last space or newline parsed
80 , museLastStrPos :: Maybe SourcePos -- ^ Position after last str parsed
79 , museLastStrPos :: Maybe SourcePos -- ^ Position after last str parsed
@@ -85,7 +84,6 @@ data MuseState = MuseState { museMeta :: F Meta -- ^ Document metadata
85instance Default MuseState where
84instance Default MuseState where
86 def = MuseState { museMeta = return nullMeta
85 def = MuseState { museMeta = return nullMeta
87 , museOptions = def
86 , museOptions = def
88− , museHeaders = M.empty
89 , museIdentifierList = Set.empty
87 , museIdentifierList = Set.empty
90 , museLastStrPos = Nothing
88 , museLastStrPos = Nothing
91 , museLastSpacePos = Nothing
89 , museLastSpacePos = Nothing
@@ -108,10 +106,6 @@ type MuseParser m = ParserT Text MuseState (ReaderT MuseEnv m)
108instance HasReaderOptions MuseState where
106instance HasReaderOptions MuseState where
109 extractReaderOptions = museOptions
107 extractReaderOptions = museOptions
110
108
111−instance HasHeaderMap MuseState where
112− extractHeaderMap = museHeaders
113− updateHeaderMap f st = st{ museHeaders = f $ museHeaders st }
114−
115instance HasIdentifierList MuseState where
109instance HasIdentifierList MuseState where
116 extractIdentifierList = museIdentifierList
110 extractIdentifierList = museIdentifierList
117 updateIdentifierList f st = st{ museIdentifierList = f $ museIdentifierList st }
111 updateIdentifierList f st = st{ museIdentifierList = f $ museIdentifierList st }
src/Text/Pandoc/Readers/Org/ParserState.hs+2−8
@@ -64,11 +64,11 @@ import qualified Data.Map as M
64import qualified Data.Set as Set
64import qualified Data.Set as Set
65import Data.Text (Text)
65import Data.Text (Text)
66
66
67−import Text.Pandoc.Builder (Blocks, Inlines)
67+import Text.Pandoc.Builder (Blocks)
68import Text.Pandoc.Definition (Meta (..), nullMeta)
68import Text.Pandoc.Definition (Meta (..), nullMeta)
69import Text.Pandoc.Logging
69import Text.Pandoc.Logging
70import Text.Pandoc.Options (ReaderOptions (..))
70import Text.Pandoc.Options (ReaderOptions (..))
71−import Text.Pandoc.Parsing (Future, HasHeaderMap (..), HasIdentifierList (..),
71+import Text.Pandoc.Parsing (Future, HasIdentifierList (..),
72 HasIncludeFiles (..), HasLastStrPosition (..),
72 HasIncludeFiles (..), HasLastStrPosition (..),
73 HasLogMessages (..), HasMacros (..),
73 HasLogMessages (..), HasMacros (..),
74 HasQuoteContext (..), HasReaderOptions (..),
74 HasQuoteContext (..), HasReaderOptions (..),
@@ -120,7 +120,6 @@ data OrgParserState = OrgParserState
120 , orgStateExcludedTags :: Set.Set Tag
120 , orgStateExcludedTags :: Set.Set Tag
121 , orgStateExcludedTagsChanged :: Bool
121 , orgStateExcludedTagsChanged :: Bool
122 , orgStateExportSettings :: ExportSettings
122 , orgStateExportSettings :: ExportSettings
123− , orgStateHeaderMap :: M.Map Inlines String
124 , orgStateIdentifiers :: Set.Set String
123 , orgStateIdentifiers :: Set.Set String
125 , orgStateIncludeFiles :: [String]
124 , orgStateIncludeFiles :: [String]
126 , orgStateLastForbiddenCharPos :: Maybe SourcePos
125 , orgStateLastForbiddenCharPos :: Maybe SourcePos
@@ -160,10 +159,6 @@ instance HasIdentifierList OrgParserState where
160 extractIdentifierList = orgStateIdentifiers
159 extractIdentifierList = orgStateIdentifiers
161 updateIdentifierList f s = s{ orgStateIdentifiers = f (orgStateIdentifiers s) }
160 updateIdentifierList f s = s{ orgStateIdentifiers = f (orgStateIdentifiers s) }
162
161
163−instance HasHeaderMap OrgParserState where
164− extractHeaderMap = orgStateHeaderMap
165− updateHeaderMap f s = s{ orgStateHeaderMap = f (orgStateHeaderMap s) }
166−
167instance HasLogMessages OrgParserState where
162instance HasLogMessages OrgParserState where
168 addLogMessage msg st = st{ orgLogMessages = msg : orgLogMessages st }
163 addLogMessage msg st = st{ orgLogMessages = msg : orgLogMessages st }
169 getLogMessages st = reverse $ orgLogMessages st
164 getLogMessages st = reverse $ orgLogMessages st
@@ -191,7 +186,6 @@ defaultOrgParserState = OrgParserState
191 , orgStateExportSettings = def
186 , orgStateExportSettings = def
192 , orgStateExcludedTags = Set.singleton $ Tag "noexport"
187 , orgStateExcludedTags = Set.singleton $ Tag "noexport"
193 , orgStateExcludedTagsChanged = False
188 , orgStateExcludedTagsChanged = False
194− , orgStateHeaderMap = M.empty
195 , orgStateIdentifiers = Set.empty
189 , orgStateIdentifiers = Set.empty
196 , orgStateIncludeFiles = []
190 , orgStateIncludeFiles = []
197 , orgStateLastForbiddenCharPos = Nothing
191 , orgStateLastForbiddenCharPos = Nothing
src/Text/Pandoc/Readers/RST.hs−1
@@ -179,7 +179,6 @@ parseRST = do
179 st' <- getState
179 st' <- getState
180 let reversedNotes = stateNotes st'
180 let reversedNotes = stateNotes st'
181 updateState $ \s -> s { stateNotes = reverse reversedNotes
181 updateState $ \s -> s { stateNotes = reverse reversedNotes
182− , stateHeaders = mempty
183 , stateIdentifiers = mempty }
182 , stateIdentifiers = mempty }
184 -- now parse it for real...
183 -- now parse it for real...
185 blocks <- B.toList <$> parseBlocks
184 blocks <- B.toList <$> parseBlocks