git.iko.soy/typeable/pandoc
on master help sign in
Fix redundant constraint warnings. (#5625)
24c7810Pete Ryland
src/Text/Pandoc/Lua/Filter.hs+1−1
@@ -129,7 +129,7 @@ walkMWithLuaFilter :: LuaFilter -> Pandoc -> Lua Pandoc
129walkMWithLuaFilter f =
129walkMWithLuaFilter f =
130 walkInlines f >=> walkBlocks f >=> walkMeta f >=> walkPandoc f
130 walkInlines f >=> walkBlocks f >=> walkMeta f >=> walkPandoc f
131
131
132−mconcatMapM :: (Monad m, Functor m) => (a -> m [a]) -> [a] -> m [a]
132+mconcatMapM :: (Monad m) => (a -> m [a]) -> [a] -> m [a]
133mconcatMapM f = fmap mconcat . mapM f
133mconcatMapM f = fmap mconcat . mapM f
134
134
135hasOneOf :: LuaFilter -> [String] -> Bool
135hasOneOf :: LuaFilter -> [String] -> Bool
src/Text/Pandoc/Lua/Module/Pandoc.hs+1−1
@@ -46,7 +46,7 @@ pushModule datadir = do
46 LuaUtil.addFunction "walk_inline" walkInline
46 LuaUtil.addFunction "walk_inline" walkInline
47 return 1
47 return 1
48
48
49−walkElement :: (Pushable a, Walkable [Inline] a, Walkable [Block] a)
49+walkElement :: (Walkable [Inline] a, Walkable [Block] a)
50 => a -> LuaFilter -> Lua a
50 => a -> LuaFilter -> Lua a
51walkElement x f = walkInlines f x >>= walkBlocks f
51walkElement x f = walkInlines f x >>= walkBlocks f
52
52
src/Text/Pandoc/Parsing.hs+6−8
@@ -313,8 +313,7 @@ many1Till p end = do
313 return (first:rest)
313 return (first:rest)
314
314
315-- | Like @manyTill@, but also returns the result of end parser.
315-- | Like @manyTill@, but also returns the result of end parser.
316−manyUntil :: (Stream s m t)
317− => ParserT s u m a
316+manyUntil :: ParserT s u m a
318 -> ParserT s u m b
317 -> ParserT s u m b
319 -> ParserT s u m ([a], b)
318 -> ParserT s u m ([a], b)
320manyUntil p end = scan
319manyUntil p end = scan
@@ -328,8 +327,7 @@ manyUntil p end = scan
328
327
329-- | Like @sepBy1@ from Parsec,
328-- | Like @sepBy1@ from Parsec,
330-- but does not fail if it @sep@ succeeds and @p@ fails.
329-- but does not fail if it @sep@ succeeds and @p@ fails.
331−sepBy1' :: (Stream s m t)
332− => ParsecT s u m a
330+sepBy1' :: ParsecT s u m a
333 -> ParsecT s u m sep
331 -> ParsecT s u m sep
334 -> ParsecT s u m [a]
332 -> ParsecT s u m [a]
335sepBy1' p sep = (:) <$> p <*> many (try $ sep >> p)
333sepBy1' p sep = (:) <$> p <*> many (try $ sep >> p)
@@ -440,7 +438,7 @@ stringAnyCase (x:xs) = do
440 return (firstChar:rest)
438 return (firstChar:rest)
441
439
442-- | Parse contents of 'str' using 'parser' and return result.
440-- | Parse contents of 'str' using 'parser' and return result.
443−parseFromString :: (Monad m, Stream s m Char, IsString s)
441+parseFromString :: (Stream s m Char, IsString s)
444 => ParserT s st m r
442 => ParserT s st m r
445 -> String
443 -> String
446 -> ParserT s st m r
444 -> ParserT s st m r
@@ -458,7 +456,7 @@ parseFromString parser str = do
458
456
459-- | Like 'parseFromString' but specialized for 'ParserState'.
457-- | Like 'parseFromString' but specialized for 'ParserState'.
460-- This resets 'stateLastStrPos', which is almost always what we want.
458-- This resets 'stateLastStrPos', which is almost always what we want.
461−parseFromString' :: (Monad m, Stream s m Char, IsString s)
459+parseFromString' :: (Stream s m Char, IsString s)
462 => ParserT s ParserState m a
460 => ParserT s ParserState m a
463 -> String
461 -> String
464 -> ParserT s ParserState m a
462 -> ParserT s ParserState m a
@@ -1019,7 +1017,7 @@ gridTableFooter = blanklines
1019---
1017---
1020
1018
1021-- | Removes the ParsecT layer from the monad transformer stack
1019-- | Removes the ParsecT layer from the monad transformer stack
1022−readWithM :: (Monad m, Stream s m Char, ToString s)
1020+readWithM :: (Stream s m Char, ToString s)
1023 => ParserT s st m a -- ^ parser
1021 => ParserT s st m a -- ^ parser
1024 -> st -- ^ initial state
1022 -> st -- ^ initial state
1025 -> s -- ^ input
1023 -> s -- ^ input
@@ -1410,7 +1408,7 @@ extractIdClass (ident, cls, kvs) = (ident', cls', kvs')
1410 Nothing -> cls
1408 Nothing -> cls
1411 kvs' = filter (\(k,_) -> k /= "id" || k /= "class") kvs
1409 kvs' = filter (\(k,_) -> k /= "id" || k /= "class") kvs
1412
1410
1413−insertIncludedFile' :: (PandocMonad m, HasIncludeFiles st, Monad mf)
1411+insertIncludedFile' :: (PandocMonad m, HasIncludeFiles st)
1414 => ParserT [a] st m (mf Blocks)
1412 => ParserT [a] st m (mf Blocks)
1415 -> (String -> [a])
1413 -> (String -> [a])
1416 -> [FilePath] -> FilePath
1414 -> [FilePath] -> FilePath
src/Text/Pandoc/Readers/HTML.hs+2−2
@@ -435,7 +435,7 @@ eSection = try $ do
435 TagOpen tag _ <- lookAhead $ pSatisfy sectTag
435 TagOpen tag _ <- lookAhead $ pSatisfy sectTag
436 setInChapter (pInTags tag block)
436 setInChapter (pInTags tag block)
437
437
438−headerLevel :: PandocMonad m => Text -> TagParser m Int
438+headerLevel :: Text -> TagParser m Int
439headerLevel tagtype =
439headerLevel tagtype =
440 case safeRead (T.unpack (T.drop 1 tagtype)) of
440 case safeRead (T.unpack (T.drop 1 tagtype)) of
441 Just level ->
441 Just level ->
@@ -1129,7 +1129,7 @@ _ `closes` _ = False
1129--- parsers for use in markdown, textile readers
1129--- parsers for use in markdown, textile readers
1130
1130
1131-- | Matches a stretch of HTML in balanced tags.
1131-- | Matches a stretch of HTML in balanced tags.
1132−htmlInBalanced :: (HasReaderOptions st, Monad m)
1132+htmlInBalanced :: Monad m
1133 => (Tag String -> Bool)
1133 => (Tag String -> Bool)
1134 -> ParserT String st m String
1134 -> ParserT String st m String
1135htmlInBalanced f = try $ do
1135htmlInBalanced f = try $ do
src/Text/Pandoc/Readers/Ipynb.hs+1−1
@@ -53,7 +53,7 @@ readIpynb opts t = do
53 Right (notebook3 :: Notebook NbV3) -> notebookToPandoc opts notebook3
53 Right (notebook3 :: Notebook NbV3) -> notebookToPandoc opts notebook3
54 Left err -> throwError $ PandocIpynbDecodingError err
54 Left err -> throwError $ PandocIpynbDecodingError err
55
55
56−notebookToPandoc :: (PandocMonad m, FromJSON (Notebook a))
56+notebookToPandoc :: PandocMonad m
57 => ReaderOptions -> Notebook a -> m Pandoc
57 => ReaderOptions -> Notebook a -> m Pandoc
58notebookToPandoc opts notebook = do
58notebookToPandoc opts notebook = do
59 let cells = notebookCells notebook
59 let cells = notebookCells notebook
src/Text/Pandoc/Readers/LaTeX.hs+1−1
@@ -1379,7 +1379,7 @@ doref cls = do
1379 ""
1379 ""
1380 (inBrackets $ str refstr)
1380 (inBrackets $ str refstr)
1381
1381
1382−lookupListDefault :: (Show k, Ord k) => v -> [k] -> M.Map k v -> v
1382+lookupListDefault :: (Ord k) => v -> [k] -> M.Map k v -> v
1383lookupListDefault d = (fromMaybe d .) . lookupList
1383lookupListDefault d = (fromMaybe d .) . lookupList
1384 where lookupList l m = msum $ map (`M.lookup` m) l
1384 where lookupList l m = msum $ map (`M.lookup` m) l
1385
1385
src/Text/Pandoc/Readers/Man.hs+1−2
@@ -323,8 +323,7 @@ parseItalic [] = do
323parseItalic args = return $
323parseItalic args = return $
324 emph $ mconcat $ intersperse B.space $ map linePartsToInlines args
324 emph $ mconcat $ intersperse B.space $ map linePartsToInlines args
325
325
326−parseAlternatingFonts :: PandocMonad m
326+parseAlternatingFonts :: [Inlines -> Inlines]
327− => [Inlines -> Inlines]
328 -> [Arg]
327 -> [Arg]
329 -> ManParser m Inlines
328 -> ManParser m Inlines
330parseAlternatingFonts constructors args = return $ mconcat $
329parseAlternatingFonts constructors args = return $ mconcat $
src/Text/Pandoc/Readers/Org/Blocks.hs+1−1
@@ -772,7 +772,7 @@ bulletList = try $ do
772 fmap (B.bulletList . compactify) . sequence
772 fmap (B.bulletList . compactify) . sequence
773 <$> many1 (listItem (bulletListStart `indented` indent))
773 <$> many1 (listItem (bulletListStart `indented` indent))
774
774
775−indented :: Monad m => OrgParser m Int -> Int -> OrgParser m Int
775+indented :: OrgParser m Int -> Int -> OrgParser m Int
776indented indentedMarker minIndent = try $ do
776indented indentedMarker minIndent = try $ do
777 n <- indentedMarker
777 n <- indentedMarker
778 guard (minIndent <= n)
778 guard (minIndent <= n)
src/Text/Pandoc/Readers/TikiWiki.hs+2−2
@@ -54,10 +54,10 @@ type TikiWikiParser = ParserT [Char] ParserState
54-- utility functions
54-- utility functions
55--
55--
56
56
57−tryMsg :: PandocMonad m => String -> TikiWikiParser m a -> TikiWikiParser m a
57+tryMsg :: String -> TikiWikiParser m a -> TikiWikiParser m a
58tryMsg msg p = try p <?> msg
58tryMsg msg p = try p <?> msg
59
59
60−skip :: PandocMonad m => TikiWikiParser m a -> TikiWikiParser m ()
60+skip :: TikiWikiParser m a -> TikiWikiParser m ()
61skip parser = Control.Monad.void parser
61skip parser = Control.Monad.void parser
62
62
63nested :: PandocMonad m => TikiWikiParser m a -> TikiWikiParser m a
63nested :: PandocMonad m => TikiWikiParser m a -> TikiWikiParser m a
src/Text/Pandoc/Writers/Shared.hs+3−3
@@ -63,7 +63,7 @@ import Text.Pandoc.XML (escapeStringForXML)
63-- Variables overwrite metadata fields with the same names.
63-- Variables overwrite metadata fields with the same names.
64-- If multiple variables are set with the same name, a list is
64-- If multiple variables are set with the same name, a list is
65-- assigned. Does nothing if 'writerTemplate' is Nothing.
65-- assigned. Does nothing if 'writerTemplate' is Nothing.
66−metaToJSON :: (Functor m, Monad m, ToJSON a)
66+metaToJSON :: (Monad m, ToJSON a)
67 => WriterOptions
67 => WriterOptions
68 -> ([Block] -> m a)
68 -> ([Block] -> m a)
69 -> ([Inline] -> m a)
69 -> ([Inline] -> m a)
@@ -76,7 +76,7 @@ metaToJSON opts blockWriter inlineWriter meta
76
76
77-- | Like 'metaToJSON', but does not include variables and is
77-- | Like 'metaToJSON', but does not include variables and is
78-- not sensitive to 'writerTemplate'.
78-- not sensitive to 'writerTemplate'.
79−metaToJSON' :: (Functor m, Monad m, ToJSON a)
79+metaToJSON' :: (Monad m, ToJSON a)
80 => ([Block] -> m a)
80 => ([Block] -> m a)
81 -> ([Inline] -> m a)
81 -> ([Inline] -> m a)
82 -> Meta
82 -> Meta
@@ -99,7 +99,7 @@ addVariablesToJSON opts metadata =
99 where combineMetadata (Object o1) (Object o2) = Object $ H.union o1 o2
99 where combineMetadata (Object o1) (Object o2) = Object $ H.union o1 o2
100 combineMetadata x _ = x
100 combineMetadata x _ = x
101
101
102−metaValueToJSON :: (Functor m, Monad m, ToJSON a)
102+metaValueToJSON :: (Monad m, ToJSON a)
103 => ([Block] -> m a)
103 => ([Block] -> m a)
104 -> ([Inline] -> m a)
104 -> ([Inline] -> m a)
105 -> MetaValue
105 -> MetaValue
test/Tests/Lua.hs+1−1
@@ -192,7 +192,7 @@ assertFilterConversion msg filterPath docIn expectedDoc = do
192roundtripEqual :: (Eq a, Lua.Peekable a, Lua.Pushable a) => a -> IO Bool
192roundtripEqual :: (Eq a, Lua.Peekable a, Lua.Pushable a) => a -> IO Bool
193roundtripEqual x = (x ==) <$> roundtripped
193roundtripEqual x = (x ==) <$> roundtripped
194 where
194 where
195− roundtripped :: (Lua.Peekable a, Lua.Pushable a) => IO a
195+ roundtripped :: Lua.Peekable a => IO a
196 roundtripped = runLuaTest $ do
196 roundtripped = runLuaTest $ do
197 oldSize <- Lua.gettop
197 oldSize <- Lua.gettop
198 Lua.push x
198 Lua.push x