module Text.Parsers.Frisby.Char where
import Data.Char
import Text.Parsers.Frisby (P, anyChar, onlyIf)
control :: P s Char
control = anyChar `onlyIf` isControl
space :: P s Char
space = anyChar `onlyIf` isSpace
lower :: P s Char
lower = anyChar `onlyIf` isLower
upper :: P s Char
upper = anyChar `onlyIf` isUpper
alpha :: P s Char
alpha = anyChar `onlyIf` isAlpha
alphaNum :: P s Char
alphaNum = anyChar `onlyIf` isAlphaNum
printable :: P s Char
printable = anyChar `onlyIf` isPrint
digit :: P s Char
digit = anyChar `onlyIf` isDigit
octDigit :: P s Char
octDigit = anyChar `onlyIf` isOctDigit
hexDigit :: P s Char
hexDigit = anyChar `onlyIf` isHexDigit
letter :: P s Char
letter = anyChar `onlyIf` isLetter
mark :: P s Char
mark = anyChar `onlyIf` isMark
number :: P s Char
number = anyChar `onlyIf` isNumber
punctuation :: P s Char
punctuation = anyChar `onlyIf` isPunctuation
symbol :: P s Char
symbol = anyChar `onlyIf` isSymbol
separator :: P s Char
separator = anyChar `onlyIf` isSeparator
ascii :: P s Char
ascii = anyChar `onlyIf` isAscii
latin1 :: P s Char
latin1 = anyChar `onlyIf` isLatin1
asciiUpper :: P s Char
asciiUpper = anyChar `onlyIf` isAsciiUpper
asciiLower :: P s Char
asciiLower = anyChar `onlyIf` isAsciiLower