hedn-0.2.0.1: EDN parsing and encoding
Data.EDN.Class.Parser
Description
Generic continuation-based parser
parseEither :: (a -> Parser b) -> a -> Either String b Source #
Run a Parser reporting to an Either.
Parser
Either
parseM :: Monad m => (a -> Parser b) -> a -> m b Source #
Run a Parser reporting to arbitrary Monad with fail.
Monad
fail
newtype Parser a Source #
A continuation-based parser type.
Constructors
Fields
Defined in Data.EDN.Class.Parser
Methods
(>>=) :: Parser a -> (a -> Parser b) -> Parser b #
(>>) :: Parser a -> Parser b -> Parser b #
return :: a -> Parser a #
fail :: String -> Parser a #
fmap :: (a -> b) -> Parser a -> Parser b #
(<$) :: a -> Parser b -> Parser a #
pure :: a -> Parser a #
(<*>) :: Parser (a -> b) -> Parser a -> Parser b #
liftA2 :: (a -> b -> c) -> Parser a -> Parser b -> Parser c #
(*>) :: Parser a -> Parser b -> Parser b #
(<*) :: Parser a -> Parser b -> Parser a #
empty :: Parser a #
(<|>) :: Parser a -> Parser a -> Parser a #
some :: Parser a -> Parser [a] #
many :: Parser a -> Parser [a] #
mzero :: Parser a #
mplus :: Parser a -> Parser a -> Parser a #
(<>) :: Parser a -> Parser a -> Parser a #
sconcat :: NonEmpty (Parser a) -> Parser a #
stimes :: Integral b => b -> Parser a -> Parser a #
mempty :: Parser a #
mappend :: Parser a -> Parser a -> Parser a #
mconcat :: [Parser a] -> Parser a #
type Success a f r = a -> f r Source #
Success continuation.
type Failure f r = Expected -> String -> f r Source #
Failure continuation.
type Expected = [Label] Source #
Megaparsec-style collection of elements expected by combined parser alternatives.
type Label = String Source #
Single element expected by a parser. String because MonadFail method.
String
MonadFail