Copyright | (c) 2021 Composewell Technologies |
---|---|
License | BSD-3-Clause |
Maintainer | streamly@composewell.com |
Stability | released |
Portability | GHC |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
To parse a text input, use the decode routines from Streamly.Unicode.Stream module to convert an input byte stream to a Unicode Char stream and then use these parsers on the Char stream.
Synopsis
- char :: Monad m => Char -> Parser Char m Char
- charIgnoreCase :: Monad m => Char -> Parser Char m Char
- alpha :: Monad m => Parser Char m Char
- alphaNum :: Monad m => Parser Char m Char
- letter :: Monad m => Parser Char m Char
- ascii :: Monad m => Parser Char m Char
- asciiLower :: Monad m => Parser Char m Char
- asciiUpper :: Monad m => Parser Char m Char
- latin1 :: Monad m => Parser Char m Char
- lower :: Monad m => Parser Char m Char
- upper :: Monad m => Parser Char m Char
- mark :: Monad m => Parser Char m Char
- printable :: Monad m => Parser Char m Char
- punctuation :: Monad m => Parser Char m Char
- separator :: Monad m => Parser Char m Char
- space :: Monad m => Parser Char m Char
- symbol :: Monad m => Parser Char m Char
- digit :: Monad m => Parser Char m Char
- octDigit :: Monad m => Parser Char m Char
- hexDigit :: Monad m => Parser Char m Char
- numeric :: Monad m => Parser Char m Char
- string :: Monad m => String -> Parser Char m String
- stringIgnoreCase :: Monad m => String -> Parser Char m String
- dropSpace :: Monad m => Parser Char m ()
- dropSpace1 :: Monad m => Parser Char m ()
- decimal :: (Monad m, Integral a) => Parser Char m a
- hexadecimal :: (Monad m, Integral a, Bits a) => Parser Char m a
- signed :: (Num a, Monad m) => Parser Char m a -> Parser Char m a
Single Chars
charIgnoreCase :: Monad m => Char -> Parser Char m Char Source #
Match a specific character ignoring case.
asciiLower :: Monad m => Parser Char m Char Source #
Match any character that satisfies isAsciiLower
asciiUpper :: Monad m => Parser Char m Char Source #
Match any character that satisfies isAsciiUpper
punctuation :: Monad m => Parser Char m Char Source #
Match any character that satisfies isPunctuation
Char Sequences
string :: Monad m => String -> Parser Char m String Source #
Match the input with the supplied string and return it if successful.
stringIgnoreCase :: Monad m => String -> Parser Char m String Source #
Match the input with the supplied string and return it if successful.
Digit Sequences (Numbers)
decimal :: (Monad m, Integral a) => Parser Char m a Source #
Parse and decode an unsigned integral decimal number.
hexadecimal :: (Monad m, Integral a, Bits a) => Parser Char m a Source #
Parse and decode an unsigned integral hexadecimal number. The hex digits
'a'
through 'f'
may be upper or lower case.
Note: This parser does not accept a leading "0x"
string.