parsers-megaparsec-0.1.0.2: `parsers` instances for Megaparsec
Safe HaskellSafe-Inferred
LanguageHaskell2010

Text.Megaparsec.Parsers

Description

A newtype wrapper for ParsecT that has instances of Parsing, CharParsing, LookAheadParsing, and TokenParsing.

Parsing and LookAheadParsing have instances for any Stream instance.

CharParsing and TokenParsing only have instances for String, strict Text, and lazy Text, because those type classes expect the Token type to be Char

Documentation

newtype ParsecT e s m a Source #

Constructors

ParsecT 

Fields

Instances

Instances details
(Stream s, Ord e) => MonadParsec e s (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

parseError :: ParseError s e -> ParsecT e s m a Source #

label :: String -> ParsecT e s m a -> ParsecT e s m a Source #

hidden :: ParsecT e s m a -> ParsecT e s m a Source #

try :: ParsecT e s m a -> ParsecT e s m a Source #

lookAhead :: ParsecT e s m a -> ParsecT e s m a Source #

notFollowedBy :: ParsecT e s m a -> ParsecT e s m () Source #

withRecovery :: (ParseError s e -> ParsecT e s m a) -> ParsecT e s m a -> ParsecT e s m a Source #

observing :: ParsecT e s m a -> ParsecT e s m (Either (ParseError s e) a) Source #

eof :: ParsecT e s m () Source #

token :: (Token s -> Maybe a) -> Set (ErrorItem (Token s)) -> ParsecT e s m a Source #

tokens :: (Tokens s -> Tokens s -> Bool) -> Tokens s -> ParsecT e s m (Tokens s) Source #

takeWhileP :: Maybe String -> (Token s -> Bool) -> ParsecT e s m (Tokens s) Source #

takeWhile1P :: Maybe String -> (Token s -> Bool) -> ParsecT e s m (Tokens s) Source #

takeP :: Maybe String -> Int -> ParsecT e s m (Tokens s) Source #

getParserState :: ParsecT e s m (State s e) Source #

updateParserState :: (State s e -> State s e) -> ParsecT e s m () Source #

(Stream s, MonadError e' m) => MonadError e' (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

throwError :: e' -> ParsecT e s m a Source #

catchError :: ParsecT e s m a -> (e' -> ParsecT e s m a) -> ParsecT e s m a Source #

(Stream s, MonadReader r m) => MonadReader r (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

ask :: ParsecT e s m r Source #

local :: (r -> r) -> ParsecT e s m a -> ParsecT e s m a Source #

reader :: (r -> a) -> ParsecT e s m a Source #

(Stream s, MonadState st m) => MonadState st (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

get :: ParsecT e s m st Source #

put :: st -> ParsecT e s m () Source #

state :: (st -> (a, st)) -> ParsecT e s m a Source #

MonadTrans (ParsecT e s) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

lift :: Monad m => m a -> ParsecT e s m a Source #

Stream s => MonadFail (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

fail :: String -> ParsecT e s m a Source #

(Stream s, MonadIO m) => MonadIO (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

liftIO :: IO a -> ParsecT e s m a Source #

(Stream s, Ord e) => Alternative (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

empty :: ParsecT e s m a Source #

(<|>) :: ParsecT e s m a -> ParsecT e s m a -> ParsecT e s m a Source #

some :: ParsecT e s m a -> ParsecT e s m [a] Source #

many :: ParsecT e s m a -> ParsecT e s m [a] Source #

Stream s => Applicative (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

pure :: a -> ParsecT e s m a Source #

(<*>) :: ParsecT e s m (a -> b) -> ParsecT e s m a -> ParsecT e s m b Source #

liftA2 :: (a -> b -> c) -> ParsecT e s m a -> ParsecT e s m b -> ParsecT e s m c Source #

(*>) :: ParsecT e s m a -> ParsecT e s m b -> ParsecT e s m b Source #

(<*) :: ParsecT e s m a -> ParsecT e s m b -> ParsecT e s m a Source #

Functor (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

fmap :: (a -> b) -> ParsecT e s m a -> ParsecT e s m b Source #

(<$) :: a -> ParsecT e s m b -> ParsecT e s m a Source #

Stream s => Monad (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

(>>=) :: ParsecT e s m a -> (a -> ParsecT e s m b) -> ParsecT e s m b Source #

(>>) :: ParsecT e s m a -> ParsecT e s m b -> ParsecT e s m b Source #

return :: a -> ParsecT e s m a Source #

(Stream s, Ord e) => MonadPlus (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

mzero :: ParsecT e s m a Source #

mplus :: ParsecT e s m a -> ParsecT e s m a -> ParsecT e s m a Source #

(Stream s, MonadCont m) => MonadCont (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

callCC :: ((a -> ParsecT e s m b) -> ParsecT e s m a) -> ParsecT e s m a Source #

Ord e => CharParsing (ParsecT e Text m) Source #

Strict Text

Instance details

Defined in Text.Megaparsec.Parsers

Ord e => CharParsing (ParsecT e Text m) Source #

Lazy Text

Instance details

Defined in Text.Megaparsec.Parsers

Ord e => CharParsing (ParsecT e String m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

(Ord e, Stream s) => Parsing (ParsecT e s m) Source #

Note: unexpected requires a non-empty string

Instance details

Defined in Text.Megaparsec.Parsers

Methods

try :: ParsecT e s m a -> ParsecT e s m a Source #

(<?>) :: ParsecT e s m a -> String -> ParsecT e s m a Source #

skipMany :: ParsecT e s m a -> ParsecT e s m () Source #

skipSome :: ParsecT e s m a -> ParsecT e s m () Source #

unexpected :: String -> ParsecT e s m a Source #

eof :: ParsecT e s m () Source #

notFollowedBy :: Show a => ParsecT e s m a -> ParsecT e s m () Source #

(Ord e, Stream s) => LookAheadParsing (ParsecT e s m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

lookAhead :: ParsecT e s m a -> ParsecT e s m a Source #

Ord e => TokenParsing (ParsecT e Text m) Source #

Lazy Text

Instance details

Defined in Text.Megaparsec.Parsers

Ord e => TokenParsing (ParsecT e Text m) Source #

Strict Text

Instance details

Defined in Text.Megaparsec.Parsers

Ord e => TokenParsing (ParsecT e String m) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

(Stream s, Monoid a) => Monoid (ParsecT e s m a) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

mempty :: ParsecT e s m a Source #

mappend :: ParsecT e s m a -> ParsecT e s m a -> ParsecT e s m a Source #

mconcat :: [ParsecT e s m a] -> ParsecT e s m a Source #

(Stream s, Semigroup a) => Semigroup (ParsecT e s m a) Source # 
Instance details

Defined in Text.Megaparsec.Parsers

Methods

(<>) :: ParsecT e s m a -> ParsecT e s m a -> ParsecT e s m a Source #

sconcat :: NonEmpty (ParsecT e s m a) -> ParsecT e s m a Source #

stimes :: Integral b => b -> ParsecT e s m a -> ParsecT e s m a Source #