module Data.Char.Properties.DerivedCore (isAlphabetic, isCaseIgnorable, isCased, isChangesWhenCasefolded, isChangesWhenCasemapped, isChangesWhenLowercased, isChangesWhenTitlecased, isChangesWhenUppercased, isDefaultIgnorableCodePoint, isGraphemeBase, isGraphemeExtend, isGraphemeLink, isIDContinue, isIDStart, isLowercase, isMath, isUppercase, isXIDContinue, isXIDStart) where import Data.Word import Foreign.Ptr isAlphabetic, isCaseIgnorable, isCased, isChangesWhenCasefolded, isChangesWhenCasemapped, isChangesWhenLowercased, isChangesWhenTitlecased, isChangesWhenUppercased, isDefaultIgnorableCodePoint, isGraphemeBase, isGraphemeExtend, isGraphemeLink, isIDContinue, isIDStart, isLowercase, isMath, isUppercase, isXIDContinue, isXIDStart :: Char -> Bool foreign import ccall unsafe "range_search" c_range_search :: Word32 -> Ptr Word64 -> Word -> Ptr Word64 isAlphabetic = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataAlphabetic 1058 {-# INLINE isAlphabetic #-} foreign import ccall unsafe "&Alphabetic" dataAlphabetic :: Ptr Word64 isCaseIgnorable = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataCaseIgnorable 448 {-# INLINE isCaseIgnorable #-} foreign import ccall unsafe "&CaseIgnorable" dataCaseIgnorable :: Ptr Word64 isCased = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataCased 154 {-# INLINE isCased #-} foreign import ccall unsafe "&Cased" dataCased :: Ptr Word64 isChangesWhenCasefolded = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataChangesWhenCasefolded 612 {-# INLINE isChangesWhenCasefolded #-} foreign import ccall unsafe "&ChangesWhenCasefolded" dataChangesWhenCasefolded :: Ptr Word64 isChangesWhenCasemapped = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataChangesWhenCasemapped 123 {-# INLINE isChangesWhenCasemapped #-} foreign import ccall unsafe "&ChangesWhenCasemapped" dataChangesWhenCasemapped :: Ptr Word64 isChangesWhenLowercased = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataChangesWhenLowercased 599 {-# INLINE isChangesWhenLowercased #-} foreign import ccall unsafe "&ChangesWhenLowercased" dataChangesWhenLowercased :: Ptr Word64 isChangesWhenTitlecased = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataChangesWhenTitlecased 615 {-# INLINE isChangesWhenTitlecased #-} foreign import ccall unsafe "&ChangesWhenTitlecased" dataChangesWhenTitlecased :: Ptr Word64 isChangesWhenUppercased = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataChangesWhenUppercased 616 {-# INLINE isChangesWhenUppercased #-} foreign import ccall unsafe "&ChangesWhenUppercased" dataChangesWhenUppercased :: Ptr Word64 isDefaultIgnorableCodePoint = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataDefaultIgnorableCodePoint 26 {-# INLINE isDefaultIgnorableCodePoint #-} foreign import ccall unsafe "&DefaultIgnorableCodePoint" dataDefaultIgnorableCodePoint :: Ptr Word64 isGraphemeBase = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataGraphemeBase 1639 {-# INLINE isGraphemeBase #-} foreign import ccall unsafe "&GraphemeBase" dataGraphemeBase :: Ptr Word64 isGraphemeExtend = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataGraphemeExtend 347 {-# INLINE isGraphemeExtend #-} foreign import ccall unsafe "&GraphemeExtend" dataGraphemeExtend :: Ptr Word64 isGraphemeLink = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataGraphemeLink 53 {-# INLINE isGraphemeLink #-} foreign import ccall unsafe "&GraphemeLink" dataGraphemeLink :: Ptr Word64 isIDContinue = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataIDContinue 1236 {-# INLINE isIDContinue #-} foreign import ccall unsafe "&IDContinue" dataIDContinue :: Ptr Word64 isIDStart = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataIDStart 682 {-# INLINE isIDStart #-} foreign import ccall unsafe "&IDStart" dataIDStart :: Ptr Word64 isLowercase = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataLowercase 662 {-# INLINE isLowercase #-} foreign import ccall unsafe "&Lowercase" dataLowercase :: Ptr Word64 isMath = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataMath 240 {-# INLINE isMath #-} foreign import ccall unsafe "&Math" dataMath :: Ptr Word64 isUppercase = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataUppercase 641 {-# INLINE isUppercase #-} foreign import ccall unsafe "&Uppercase" dataUppercase :: Ptr Word64 isXIDContinue = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataXIDContinue 1240 {-# INLINE isXIDContinue #-} foreign import ccall unsafe "&XIDContinue" dataXIDContinue :: Ptr Word64 isXIDStart = \ x -> nullPtr /= c_range_search ((fromIntegral . fromEnum) x) dataXIDStart 685 {-# INLINE isXIDStart #-} foreign import ccall unsafe "&XIDStart" dataXIDStart :: Ptr Word64