bookhound-0.2.2: Simple Parser Combinators
Safe HaskellSafe-Inferred
LanguageHaskell2010

Bookhound.ParserCombinators

Documentation

class IsMatch a where Source #

Minimal complete definition

is, isNot, inverse

Methods

is :: a -> Parser a Source #

isNot :: a -> Parser a Source #

inverse :: Parser a -> Parser a Source #

oneOf :: [a] -> Parser a Source #

noneOf :: [a] -> Parser a Source #

satisfy :: (a -> Bool) -> Parser a -> Parser a Source #

times :: Int -> Parser a -> Parser [a] Source #

many :: Parser a -> Parser [a] Source #

some :: Parser a -> Parser [a] Source #

between :: Parser a -> Parser b -> Parser c -> Parser c Source #

sepByOps :: Parser a -> Parser b -> Parser ([a], [b]) Source #

sepByOp :: Parser a -> Parser b -> Parser (a, [b]) Source #

manyEndBy :: forall a b. Parser a -> Parser b -> Parser [b] Source #

someEndBy :: forall a b. Parser a -> Parser b -> Parser [b] Source #

multipleEndBy :: forall a b. Parser a -> Parser b -> Parser [b] Source #

(<?>) :: Parser a -> Text -> Parser a infixl 6 Source #

(<#>) :: Parser a -> Int -> Parser [a] infixl 6 Source #

(</\>) :: Applicative f => f a -> f b -> f (a, b) infixl 6 Source #

(<:>) :: Applicative f => f a -> f [a] -> f [a] infixl 6 Source #

(->>-) :: (ToText a, ToText b) => Parser a -> Parser b -> Parser Text infixl 6 Source #

(|*) :: Parser a -> Parser [a] Source #

(|+) :: Parser a -> Parser [a] Source #

(|++) :: Parser a -> Parser [a] Source #