@@ -71,6 +71,7 @@ module Text.Pandoc.Shared (
7171 withHorizDisplacement,
7272 nullBlock,
7373 failIfStrict,
74+ failUnlessLHS,
7475 escaped,
7576 anyOrderedListMarker,
7677 orderedListMarker,
@@ -489,6 +490,12 @@ failIfStrict = do
489490 state <- getState
490491 if stateStrict state then fail "strict mode" else return ()
491492
493+-- | Fail unless we're in literate haskell mode.
494+failUnlessLHS :: GenParser tok ParserState ()
495+failUnlessLHS = do
496+ state <- getState
497+ if stateLiterateHaskell state then return () else fail "Literate haskell feature"
498+
492499-- | Parses backslash, then applies character parser.
493500escaped :: GenParser Char st Char -- ^ Parser for character to escape
494501 -> GenParser Char st Inline