Remove unused HasHeaderMap (#5175)

It is updated by some readers, but never actually used.
This commit is contained in:
Alexander
2018-12-31 21:41:21 -08:00
committed by John MacFarlane
parent ffc2192caf
commit 792f18a7fa
7 changed files with 4 additions and 50 deletions
+1 -16
View File
@@ -93,7 +93,6 @@ module Text.Pandoc.Parsing ( takeWhileP,
reportLogMessages,
ParserState (..),
HasReaderOptions (..),
HasHeaderMap (..),
HasIdentifierList (..),
HasMacros (..),
HasLogMessages (..),
@@ -1079,7 +1078,6 @@ data ParserState = ParserState
stateMeta' :: F Meta, -- ^ Document metadata
stateCitations :: M.Map String String, -- ^ RST-style citations
stateHeaderTable :: [HeaderType], -- ^ Ordered list of header types used
stateHeaders :: M.Map Inlines String, -- ^ List of headers and ids (used for implicit ref links)
stateIdentifiers :: Set.Set String, -- ^ Header identifiers used
stateNextExample :: Int, -- ^ Number of next example
stateExamples :: M.Map String Int, -- ^ Map from example labels to numbers
@@ -1129,15 +1127,6 @@ instance Monad m => HasQuoteContext ParserState m where
setState newState { stateQuoteContext = oldQuoteContext }
return result
class HasHeaderMap st where
extractHeaderMap :: st -> M.Map Inlines String
updateHeaderMap :: (M.Map Inlines String -> M.Map Inlines String) ->
st -> st
instance HasHeaderMap ParserState where
extractHeaderMap = stateHeaders
updateHeaderMap f st = st{ stateHeaders = f $ stateHeaders st }
class HasIdentifierList st where
extractIdentifierList :: st -> Set.Set String
updateIdentifierList :: (Set.Set String -> Set.Set String) -> st -> st
@@ -1198,7 +1187,6 @@ defaultParserState =
stateMeta' = return nullMeta,
stateCitations = M.empty,
stateHeaderTable = [],
stateHeaders = M.empty,
stateIdentifiers = Set.empty,
stateNextExample = 1,
stateExamples = M.empty,
@@ -1283,12 +1271,11 @@ type SubstTable = M.Map Key Inlines
-- is encountered that duplicates an earlier identifier
-- (explicit or automatically generated).
registerHeader :: (Stream s m a, HasReaderOptions st,
HasHeaderMap st, HasLogMessages st, HasIdentifierList st)
HasLogMessages st, HasIdentifierList st)
=> Attr -> Inlines -> ParserT s st m Attr
registerHeader (ident,classes,kvs) header' = do
ids <- extractIdentifierList <$> getState
exts <- getOption readerExtensions
let insert' = M.insertWith (\_new old -> old)
if null ident && Ext_auto_identifiers `extensionEnabled` exts
then do
let id' = uniqueIdent exts (B.toList header') ids
@@ -1297,7 +1284,6 @@ registerHeader (ident,classes,kvs) header' = do
else id'
updateState $ updateIdentifierList $ Set.insert id'
updateState $ updateIdentifierList $ Set.insert id''
updateState $ updateHeaderMap $ insert' header' id'
return (id'',classes,kvs)
else do
unless (null ident) $ do
@@ -1305,7 +1291,6 @@ registerHeader (ident,classes,kvs) header' = do
pos <- getPosition
logMessage $ DuplicateIdentifier ident pos
updateState $ updateIdentifierList $ Set.insert ident
updateState $ updateHeaderMap $ insert' header' ident
return (ident,classes,kvs)
smartPunctuation :: (HasReaderOptions st, HasLastStrPosition st, HasQuoteContext st m, Stream s m Char)
+1 -6
View File
@@ -105,7 +105,7 @@ readHtml opts inp = do
result <- flip runReaderT def $
runParserT parseDoc
(HTMLState def{ stateOptions = opts }
[] Nothing Set.empty M.empty [] M.empty)
[] Nothing Set.empty [] M.empty)
"source" tags
case result of
Right doc -> return doc
@@ -126,7 +126,6 @@ data HTMLState =
noteTable :: [(String, Blocks)],
baseHref :: Maybe URI,
identifiers :: Set.Set String,
headerMap :: M.Map Inlines String,
logMessages :: [LogMessage],
macros :: M.Map Text Macro
}
@@ -1295,10 +1294,6 @@ instance HasIdentifierList HTMLState where
extractIdentifierList = identifiers
updateIdentifierList f s = s{ identifiers = f (identifiers s) }
instance HasHeaderMap HTMLState where
extractHeaderMap = headerMap
updateHeaderMap f s = s{ headerMap = f (headerMap s) }
instance HasLogMessages HTMLState where
addLogMessage m s = s{ logMessages = m : logMessages s }
getLogMessages = reverse . logMessages
-6
View File
@@ -131,7 +131,6 @@ data LaTeXState = LaTeXState{ sOptions :: ReaderOptions
, sQuoteContext :: QuoteContext
, sMacros :: M.Map Text Macro
, sContainers :: [String]
, sHeaders :: M.Map Inlines String
, sLogMessages :: [LogMessage]
, sIdentifiers :: Set.Set String
, sVerbatimMode :: Bool
@@ -153,7 +152,6 @@ defaultLaTeXState = LaTeXState{ sOptions = def
, sQuoteContext = NoQuote
, sMacros = M.empty
, sContainers = []
, sHeaders = M.empty
, sLogMessages = []
, sIdentifiers = Set.empty
, sVerbatimMode = False
@@ -192,10 +190,6 @@ instance HasIncludeFiles LaTeXState where
addIncludeFile f s = s{ sContainers = f : sContainers s }
dropLatestIncludeFile s = s { sContainers = drop 1 $ sContainers s }
instance HasHeaderMap LaTeXState where
extractHeaderMap = sHeaders
updateHeaderMap f st = st{ sHeaders = f $ sHeaders st }
instance HasMacros LaTeXState where
extractMacros st = sMacros st
updateMacros f st = st{ sMacros = f (sMacros st) }
-7
View File
@@ -43,7 +43,6 @@ import Control.Monad.Except (throwError)
import Data.Char (isDigit, isSpace)
import qualified Data.Foldable as F
import Data.List (intercalate, intersperse, isPrefixOf)
import qualified Data.Map as M
import Data.Maybe (fromMaybe, maybeToList)
import Data.Sequence (ViewL (..), viewl, (<|))
import qualified Data.Set as Set
@@ -72,7 +71,6 @@ readMediaWiki opts s = do
, mwMaxNestingLevel = 4
, mwNextLinkNumber = 1
, mwCategoryLinks = []
, mwHeaderMap = M.empty
, mwIdentifierList = Set.empty
, mwLogMessages = []
, mwInTT = False
@@ -86,7 +84,6 @@ data MWState = MWState { mwOptions :: ReaderOptions
, mwMaxNestingLevel :: Int
, mwNextLinkNumber :: Int
, mwCategoryLinks :: [Inlines]
, mwHeaderMap :: M.Map Inlines String
, mwIdentifierList :: Set.Set String
, mwLogMessages :: [LogMessage]
, mwInTT :: Bool
@@ -97,10 +94,6 @@ type MWParser m = ParserT [Char] MWState m
instance HasReaderOptions MWState where
extractReaderOptions = mwOptions
instance HasHeaderMap MWState where
extractHeaderMap = mwHeaderMap
updateHeaderMap f st = st{ mwHeaderMap = f $ mwHeaderMap st }
instance HasIdentifierList MWState where
extractIdentifierList = mwIdentifierList
updateIdentifierList f st = st{ mwIdentifierList = f $ mwIdentifierList st }
-6
View File
@@ -74,7 +74,6 @@ type F = Future MuseState
data MuseState = MuseState { museMeta :: F Meta -- ^ Document metadata
, museOptions :: ReaderOptions
, museHeaders :: M.Map Inlines String -- ^ List of headers and ids (used for implicit ref links)
, museIdentifierList :: Set.Set String
, museLastSpacePos :: Maybe SourcePos -- ^ Position after last space or newline parsed
, museLastStrPos :: Maybe SourcePos -- ^ Position after last str parsed
@@ -85,7 +84,6 @@ data MuseState = MuseState { museMeta :: F Meta -- ^ Document metadata
instance Default MuseState where
def = MuseState { museMeta = return nullMeta
, museOptions = def
, museHeaders = M.empty
, museIdentifierList = Set.empty
, museLastStrPos = Nothing
, museLastSpacePos = Nothing
@@ -108,10 +106,6 @@ type MuseParser m = ParserT Text MuseState (ReaderT MuseEnv m)
instance HasReaderOptions MuseState where
extractReaderOptions = museOptions
instance HasHeaderMap MuseState where
extractHeaderMap = museHeaders
updateHeaderMap f st = st{ museHeaders = f $ museHeaders st }
instance HasIdentifierList MuseState where
extractIdentifierList = museIdentifierList
updateIdentifierList f st = st{ museIdentifierList = f $ museIdentifierList st }
+2 -8
View File
@@ -64,11 +64,11 @@ import qualified Data.Map as M
import qualified Data.Set as Set
import Data.Text (Text)
import Text.Pandoc.Builder (Blocks, Inlines)
import Text.Pandoc.Builder (Blocks)
import Text.Pandoc.Definition (Meta (..), nullMeta)
import Text.Pandoc.Logging
import Text.Pandoc.Options (ReaderOptions (..))
import Text.Pandoc.Parsing (Future, HasHeaderMap (..), HasIdentifierList (..),
import Text.Pandoc.Parsing (Future, HasIdentifierList (..),
HasIncludeFiles (..), HasLastStrPosition (..),
HasLogMessages (..), HasMacros (..),
HasQuoteContext (..), HasReaderOptions (..),
@@ -120,7 +120,6 @@ data OrgParserState = OrgParserState
, orgStateExcludedTags :: Set.Set Tag
, orgStateExcludedTagsChanged :: Bool
, orgStateExportSettings :: ExportSettings
, orgStateHeaderMap :: M.Map Inlines String
, orgStateIdentifiers :: Set.Set String
, orgStateIncludeFiles :: [String]
, orgStateLastForbiddenCharPos :: Maybe SourcePos
@@ -160,10 +159,6 @@ instance HasIdentifierList OrgParserState where
extractIdentifierList = orgStateIdentifiers
updateIdentifierList f s = s{ orgStateIdentifiers = f (orgStateIdentifiers s) }
instance HasHeaderMap OrgParserState where
extractHeaderMap = orgStateHeaderMap
updateHeaderMap f s = s{ orgStateHeaderMap = f (orgStateHeaderMap s) }
instance HasLogMessages OrgParserState where
addLogMessage msg st = st{ orgLogMessages = msg : orgLogMessages st }
getLogMessages st = reverse $ orgLogMessages st
@@ -191,7 +186,6 @@ defaultOrgParserState = OrgParserState
, orgStateExportSettings = def
, orgStateExcludedTags = Set.singleton $ Tag "noexport"
, orgStateExcludedTagsChanged = False
, orgStateHeaderMap = M.empty
, orgStateIdentifiers = Set.empty
, orgStateIncludeFiles = []
, orgStateLastForbiddenCharPos = Nothing
-1
View File
@@ -179,7 +179,6 @@ parseRST = do
st' <- getState
let reversedNotes = stateNotes st'
updateState $ \s -> s { stateNotes = reverse reversedNotes
, stateHeaders = mempty
, stateIdentifiers = mempty }
-- now parse it for real...
blocks <- B.toList <$> parseBlocks