module HaskellWorks.Data.Conduit.Json.Words where import Data.Char import Data.Word wBackslash :: Word8 wBackslash = fromIntegral (ord '\\') wDoubleQuote :: Word8 wDoubleQuote = fromIntegral (ord '"') wUnderscore :: Word8 wUnderscore = fromIntegral (ord '_') wSpace :: Word8 wSpace = fromIntegral (ord ' ') wOpenParen :: Word8 wOpenParen = fromIntegral (ord '(') wCloseParen :: Word8 wCloseParen = fromIntegral (ord ')') wOpenBracket :: Word8 wOpenBracket = fromIntegral (ord '[') wCloseBracket :: Word8 wCloseBracket = fromIntegral (ord ']') wOpenBrace :: Word8 wOpenBrace = fromIntegral (ord '{') wCloseBrace :: Word8 wCloseBrace = fromIntegral (ord '}') wPlus :: Word8 wPlus = fromIntegral (ord '+') wA :: Word8 wA = fromIntegral (ord 'A') wa :: Word8 wa = fromIntegral (ord 'a') we :: Word8 we = fromIntegral (ord 'e') wE :: Word8 wE = fromIntegral (ord 'E') wf :: Word8 wf = fromIntegral (ord 'f') wn :: Word8 wn = fromIntegral (ord 'n') wt :: Word8 wt = fromIntegral (ord 't') wz :: Word8 wz = fromIntegral (ord 'z') wZ :: Word8 wZ = fromIntegral (ord 'Z') wDot :: Word8 wDot = fromIntegral (ord '.') wMinus :: Word8 wMinus = fromIntegral (ord '-') w0 :: Word8 w0 = fromIntegral (ord '0') w1 :: Word8 w1 = fromIntegral (ord '1') w9 :: Word8 w9 = fromIntegral (ord '9') w00 :: Word8 w00 = fromIntegral (ord '0') wFF :: Word8 wFF = fromIntegral (ord '\255') isLeadingDigit :: Word8 -> Bool isLeadingDigit w = w == wMinus || (w >= w0 && w <= w9) isTrailingDigit :: Word8 -> Bool isTrailingDigit w = w == wPlus || w == wMinus || (w >= w0 && w <= w9) || w == wDot || w == wE || w == we isAlphabetic :: Word8 -> Bool isAlphabetic w = (w >= wA && w <= wZ) || (w >= wa && w <= wz)