module Bio.VCF.Parser.Helpers ( tabOrSpace , isTab , isSpace , notTabOrSpace , isNumber , isFloatNumber , isBase , isBaseOrDeletion , endOfLine ) where import Data.Word (Word8) tabOrSpace :: Word8 -> Bool tabOrSpace c = isTab c || isSpace c isTab :: Word8 -> Bool isTab c = c == 9 isSpace :: Word8 -> Bool isSpace c = c == 32 notTabOrSpace :: Word8 -> Bool notTabOrSpace = not . tabOrSpace isNumber :: Word8 -> Bool isNumber c = c >= 48 && c <= 57 isFloatNumber :: Word8 -> Bool isFloatNumber c = isNumber c || c == 46 -- '.' isBase :: Word8 -> Bool isBase c = c == 65 || c == 97 || -- A or a c == 67 || c == 99 || -- C or c c == 71 || c == 103 || -- G or g c == 84 || c == 116 || -- T or t c == 78 || c == 110 -- N or n isBaseOrDeletion :: Word8 -> Bool isBaseOrDeletion c = isBase c || c == 42 || c == 44 || -- or '*' and ',' c == 60 || c == 62 -- '<' and '>' endOfLine :: Word8 -> Bool endOfLine c = c == 13 || c == 10