{-# LINE 1 "Z/Data/Text/UTF8Rewind.hsc" #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}

{-|
Module      : Z.Data.Text.UTF8Rewind
Description : Errno provided by libuv
Copyright   : (c) Winterland, 2017-2018
License     : BSD
Maintainer  : drkoster@qq.com
Stability   : experimental
Portability : non-portable

INTERNAL MODULE, provides utf8rewind constants

-}

module Z.Data.Text.UTF8Rewind where

import Data.Bits
import Foreign.C.Types
import GHC.Generics



-- | Locale for case mapping.
newtype Locale = Locale CSize deriving (Int -> Locale -> ShowS
[Locale] -> ShowS
Locale -> String
(Int -> Locale -> ShowS)
-> (Locale -> String) -> ([Locale] -> ShowS) -> Show Locale
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Locale] -> ShowS
$cshowList :: [Locale] -> ShowS
show :: Locale -> String
$cshow :: Locale -> String
showsPrec :: Int -> Locale -> ShowS
$cshowsPrec :: Int -> Locale -> ShowS
Show, Locale -> Locale -> Bool
(Locale -> Locale -> Bool)
-> (Locale -> Locale -> Bool) -> Eq Locale
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Locale -> Locale -> Bool
$c/= :: Locale -> Locale -> Bool
== :: Locale -> Locale -> Bool
$c== :: Locale -> Locale -> Bool
Eq, Eq Locale
Eq Locale
-> (Locale -> Locale -> Ordering)
-> (Locale -> Locale -> Bool)
-> (Locale -> Locale -> Bool)
-> (Locale -> Locale -> Bool)
-> (Locale -> Locale -> Bool)
-> (Locale -> Locale -> Locale)
-> (Locale -> Locale -> Locale)
-> Ord Locale
Locale -> Locale -> Bool
Locale -> Locale -> Ordering
Locale -> Locale -> Locale
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: Locale -> Locale -> Locale
$cmin :: Locale -> Locale -> Locale
max :: Locale -> Locale -> Locale
$cmax :: Locale -> Locale -> Locale
>= :: Locale -> Locale -> Bool
$c>= :: Locale -> Locale -> Bool
> :: Locale -> Locale -> Bool
$c> :: Locale -> Locale -> Bool
<= :: Locale -> Locale -> Bool
$c<= :: Locale -> Locale -> Bool
< :: Locale -> Locale -> Bool
$c< :: Locale -> Locale -> Bool
compare :: Locale -> Locale -> Ordering
$ccompare :: Locale -> Locale -> Ordering
$cp1Ord :: Eq Locale
Ord, (forall x. Locale -> Rep Locale x)
-> (forall x. Rep Locale x -> Locale) -> Generic Locale
forall x. Rep Locale x -> Locale
forall x. Locale -> Rep Locale x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Locale x -> Locale
$cfrom :: forall x. Locale -> Rep Locale x
Generic)

localeDefault     :: Locale
localeDefault :: Locale
localeDefault     = Locale CSize
0

{-# LINE 29 "Z/Data/Text/UTF8Rewind.hsc" #-}
localeLithuanian  :: Locale
localeLithuanian  = Locale 1

{-# LINE 30 "Z/Data/Text/UTF8Rewind.hsc" #-}
localeTurkishAndAzeriLatin  :: Locale
localeTurkishAndAzeriLatin  = Locale 2

{-# LINE 31 "Z/Data/Text/UTF8Rewind.hsc" #-}

-- | see 'NormalizeMode' in Z.Data.Text.Base
normalizeCompose        :: CSize
normalizeCompose :: CSize
normalizeCompose        = CSize Word64
1

{-# LINE 34 "Z/Data/Text/UTF8Rewind.hsc" #-}
normalizeDecompose      :: CSize
normalizeDecompose      = CSize 2

{-# LINE 35 "Z/Data/Text/UTF8Rewind.hsc" #-}
normalizeCompatibility  :: CSize
normalizeCompatibility  = CSize 4

{-# LINE 36 "Z/Data/Text/UTF8Rewind.hsc" #-}

{-|
These are the Unicode Normalization Forms:

@
Form                         | Description
---------------------------- | ---------------------------------------------
Normalization Form D (NFD)   | Canonical decomposition
Normalization Form C (NFC)   | Canonical decomposition, followed by canonical composition
Normalization Form KD (NFKD) | Compatibility decomposition
Normalization Form KC (NFKC) | Compatibility decomposition, followed by canonical composition
@ 
-}
data NormalizeMode = NFC | NFKC | NFD | NFKD deriving (Int -> NormalizeMode -> ShowS
[NormalizeMode] -> ShowS
NormalizeMode -> String
(Int -> NormalizeMode -> ShowS)
-> (NormalizeMode -> String)
-> ([NormalizeMode] -> ShowS)
-> Show NormalizeMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NormalizeMode] -> ShowS
$cshowList :: [NormalizeMode] -> ShowS
show :: NormalizeMode -> String
$cshow :: NormalizeMode -> String
showsPrec :: Int -> NormalizeMode -> ShowS
$cshowsPrec :: Int -> NormalizeMode -> ShowS
Show, NormalizeMode -> NormalizeMode -> Bool
(NormalizeMode -> NormalizeMode -> Bool)
-> (NormalizeMode -> NormalizeMode -> Bool) -> Eq NormalizeMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NormalizeMode -> NormalizeMode -> Bool
$c/= :: NormalizeMode -> NormalizeMode -> Bool
== :: NormalizeMode -> NormalizeMode -> Bool
$c== :: NormalizeMode -> NormalizeMode -> Bool
Eq, Eq NormalizeMode
Eq NormalizeMode
-> (NormalizeMode -> NormalizeMode -> Ordering)
-> (NormalizeMode -> NormalizeMode -> Bool)
-> (NormalizeMode -> NormalizeMode -> Bool)
-> (NormalizeMode -> NormalizeMode -> Bool)
-> (NormalizeMode -> NormalizeMode -> Bool)
-> (NormalizeMode -> NormalizeMode -> NormalizeMode)
-> (NormalizeMode -> NormalizeMode -> NormalizeMode)
-> Ord NormalizeMode
NormalizeMode -> NormalizeMode -> Bool
NormalizeMode -> NormalizeMode -> Ordering
NormalizeMode -> NormalizeMode -> NormalizeMode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NormalizeMode -> NormalizeMode -> NormalizeMode
$cmin :: NormalizeMode -> NormalizeMode -> NormalizeMode
max :: NormalizeMode -> NormalizeMode -> NormalizeMode
$cmax :: NormalizeMode -> NormalizeMode -> NormalizeMode
>= :: NormalizeMode -> NormalizeMode -> Bool
$c>= :: NormalizeMode -> NormalizeMode -> Bool
> :: NormalizeMode -> NormalizeMode -> Bool
$c> :: NormalizeMode -> NormalizeMode -> Bool
<= :: NormalizeMode -> NormalizeMode -> Bool
$c<= :: NormalizeMode -> NormalizeMode -> Bool
< :: NormalizeMode -> NormalizeMode -> Bool
$c< :: NormalizeMode -> NormalizeMode -> Bool
compare :: NormalizeMode -> NormalizeMode -> Ordering
$ccompare :: NormalizeMode -> NormalizeMode -> Ordering
$cp1Ord :: Eq NormalizeMode
Ord, (forall x. NormalizeMode -> Rep NormalizeMode x)
-> (forall x. Rep NormalizeMode x -> NormalizeMode)
-> Generic NormalizeMode
forall x. Rep NormalizeMode x -> NormalizeMode
forall x. NormalizeMode -> Rep NormalizeMode x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep NormalizeMode x -> NormalizeMode
$cfrom :: forall x. NormalizeMode -> Rep NormalizeMode x
Generic)

normalizeModeToFlag :: NormalizeMode -> CSize
normalizeModeToFlag :: NormalizeMode -> CSize
normalizeModeToFlag NormalizeMode
NFC  = CSize
1
{-# LINE 53 "Z/Data/Text/UTF8Rewind.hsc" #-}
normalizeModeToFlag NFKC = 1 + 4
{-# LINE 54 "Z/Data/Text/UTF8Rewind.hsc" #-}
normalizeModeToFlag NFD  = 2
{-# LINE 55 "Z/Data/Text/UTF8Rewind.hsc" #-}
normalizeModeToFlag NFKD = 2 + 4
{-# LINE 56 "Z/Data/Text/UTF8Rewind.hsc" #-}

data NormalizationResult = NormalizedYes | NormalizedMaybe | NormalizedNo deriving (Int -> NormalizationResult -> ShowS
[NormalizationResult] -> ShowS
NormalizationResult -> String
(Int -> NormalizationResult -> ShowS)
-> (NormalizationResult -> String)
-> ([NormalizationResult] -> ShowS)
-> Show NormalizationResult
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NormalizationResult] -> ShowS
$cshowList :: [NormalizationResult] -> ShowS
show :: NormalizationResult -> String
$cshow :: NormalizationResult -> String
showsPrec :: Int -> NormalizationResult -> ShowS
$cshowsPrec :: Int -> NormalizationResult -> ShowS
Show, NormalizationResult -> NormalizationResult -> Bool
(NormalizationResult -> NormalizationResult -> Bool)
-> (NormalizationResult -> NormalizationResult -> Bool)
-> Eq NormalizationResult
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NormalizationResult -> NormalizationResult -> Bool
$c/= :: NormalizationResult -> NormalizationResult -> Bool
== :: NormalizationResult -> NormalizationResult -> Bool
$c== :: NormalizationResult -> NormalizationResult -> Bool
Eq, Eq NormalizationResult
Eq NormalizationResult
-> (NormalizationResult -> NormalizationResult -> Ordering)
-> (NormalizationResult -> NormalizationResult -> Bool)
-> (NormalizationResult -> NormalizationResult -> Bool)
-> (NormalizationResult -> NormalizationResult -> Bool)
-> (NormalizationResult -> NormalizationResult -> Bool)
-> (NormalizationResult
    -> NormalizationResult -> NormalizationResult)
-> (NormalizationResult
    -> NormalizationResult -> NormalizationResult)
-> Ord NormalizationResult
NormalizationResult -> NormalizationResult -> Bool
NormalizationResult -> NormalizationResult -> Ordering
NormalizationResult -> NormalizationResult -> NormalizationResult
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NormalizationResult -> NormalizationResult -> NormalizationResult
$cmin :: NormalizationResult -> NormalizationResult -> NormalizationResult
max :: NormalizationResult -> NormalizationResult -> NormalizationResult
$cmax :: NormalizationResult -> NormalizationResult -> NormalizationResult
>= :: NormalizationResult -> NormalizationResult -> Bool
$c>= :: NormalizationResult -> NormalizationResult -> Bool
> :: NormalizationResult -> NormalizationResult -> Bool
$c> :: NormalizationResult -> NormalizationResult -> Bool
<= :: NormalizationResult -> NormalizationResult -> Bool
$c<= :: NormalizationResult -> NormalizationResult -> Bool
< :: NormalizationResult -> NormalizationResult -> Bool
$c< :: NormalizationResult -> NormalizationResult -> Bool
compare :: NormalizationResult -> NormalizationResult -> Ordering
$ccompare :: NormalizationResult -> NormalizationResult -> Ordering
$cp1Ord :: Eq NormalizationResult
Ord, (forall x. NormalizationResult -> Rep NormalizationResult x)
-> (forall x. Rep NormalizationResult x -> NormalizationResult)
-> Generic NormalizationResult
forall x. Rep NormalizationResult x -> NormalizationResult
forall x. NormalizationResult -> Rep NormalizationResult x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep NormalizationResult x -> NormalizationResult
$cfrom :: forall x. NormalizationResult -> Rep NormalizationResult x
Generic)

toNormalizationResult :: Int -> NormalizationResult
toNormalizationResult :: Int -> NormalizationResult
toNormalizationResult Int
0 = NormalizationResult
NormalizedYes
{-# LINE 61 "Z/Data/Text/UTF8Rewind.hsc" #-}
toNormalizationResult 1 = NormalizedMaybe
{-# LINE 62 "Z/Data/Text/UTF8Rewind.hsc" #-}
toNormalizationResult 2 = NormalizedNo
{-# LINE 63 "Z/Data/Text/UTF8Rewind.hsc" #-}


-- | Unicode categories.
-- See 'Z.Data.Text.Base.isCategory', you can combine categories with bitwise or.
newtype Category = Category CSize deriving (Int -> Category -> ShowS
[Category] -> ShowS
Category -> String
(Int -> Category -> ShowS)
-> (Category -> String) -> ([Category] -> ShowS) -> Show Category
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Category] -> ShowS
$cshowList :: [Category] -> ShowS
show :: Category -> String
$cshow :: Category -> String
showsPrec :: Int -> Category -> ShowS
$cshowsPrec :: Int -> Category -> ShowS
Show, Category -> Category -> Bool
(Category -> Category -> Bool)
-> (Category -> Category -> Bool) -> Eq Category
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Category -> Category -> Bool
$c/= :: Category -> Category -> Bool
== :: Category -> Category -> Bool
$c== :: Category -> Category -> Bool
Eq, Eq Category
Eq Category
-> (Category -> Category -> Ordering)
-> (Category -> Category -> Bool)
-> (Category -> Category -> Bool)
-> (Category -> Category -> Bool)
-> (Category -> Category -> Bool)
-> (Category -> Category -> Category)
-> (Category -> Category -> Category)
-> Ord Category
Category -> Category -> Bool
Category -> Category -> Ordering
Category -> Category -> Category
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: Category -> Category -> Category
$cmin :: Category -> Category -> Category
max :: Category -> Category -> Category
$cmax :: Category -> Category -> Category
>= :: Category -> Category -> Bool
$c>= :: Category -> Category -> Bool
> :: Category -> Category -> Bool
$c> :: Category -> Category -> Bool
<= :: Category -> Category -> Bool
$c<= :: Category -> Category -> Bool
< :: Category -> Category -> Bool
$c< :: Category -> Category -> Bool
compare :: Category -> Category -> Ordering
$ccompare :: Category -> Category -> Ordering
$cp1Ord :: Eq Category
Ord, Eq Category
Category
Eq Category
-> (Category -> Category -> Category)
-> (Category -> Category -> Category)
-> (Category -> Category -> Category)
-> (Category -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> Category
-> (Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Bool)
-> (Category -> Maybe Int)
-> (Category -> Int)
-> (Category -> Bool)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int -> Category)
-> (Category -> Int)
-> Bits Category
Int -> Category
Category -> Bool
Category -> Int
Category -> Maybe Int
Category -> Category
Category -> Int -> Bool
Category -> Int -> Category
Category -> Category -> Category
forall a.
Eq a
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
popCount :: Category -> Int
$cpopCount :: Category -> Int
rotateR :: Category -> Int -> Category
$crotateR :: Category -> Int -> Category
rotateL :: Category -> Int -> Category
$crotateL :: Category -> Int -> Category
unsafeShiftR :: Category -> Int -> Category
$cunsafeShiftR :: Category -> Int -> Category
shiftR :: Category -> Int -> Category
$cshiftR :: Category -> Int -> Category
unsafeShiftL :: Category -> Int -> Category
$cunsafeShiftL :: Category -> Int -> Category
shiftL :: Category -> Int -> Category
$cshiftL :: Category -> Int -> Category
isSigned :: Category -> Bool
$cisSigned :: Category -> Bool
bitSize :: Category -> Int
$cbitSize :: Category -> Int
bitSizeMaybe :: Category -> Maybe Int
$cbitSizeMaybe :: Category -> Maybe Int
testBit :: Category -> Int -> Bool
$ctestBit :: Category -> Int -> Bool
complementBit :: Category -> Int -> Category
$ccomplementBit :: Category -> Int -> Category
clearBit :: Category -> Int -> Category
$cclearBit :: Category -> Int -> Category
setBit :: Category -> Int -> Category
$csetBit :: Category -> Int -> Category
bit :: Int -> Category
$cbit :: Int -> Category
zeroBits :: Category
$czeroBits :: Category
rotate :: Category -> Int -> Category
$crotate :: Category -> Int -> Category
shift :: Category -> Int -> Category
$cshift :: Category -> Int -> Category
complement :: Category -> Category
$ccomplement :: Category -> Category
xor :: Category -> Category -> Category
$cxor :: Category -> Category -> Category
.|. :: Category -> Category -> Category
$c.|. :: Category -> Category -> Category
.&. :: Category -> Category -> Category
$c.&. :: Category -> Category -> Category
$cp1Bits :: Eq Category
Bits, Bits Category
Bits Category
-> (Category -> Int)
-> (Category -> Int)
-> (Category -> Int)
-> FiniteBits Category
Category -> Int
forall b.
Bits b -> (b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: Category -> Int
$ccountTrailingZeros :: Category -> Int
countLeadingZeros :: Category -> Int
$ccountLeadingZeros :: Category -> Int
finiteBitSize :: Category -> Int
$cfiniteBitSize :: Category -> Int
$cp1FiniteBits :: Bits Category
FiniteBits, (forall x. Category -> Rep Category x)
-> (forall x. Rep Category x -> Category) -> Generic Category
forall x. Rep Category x -> Category
forall x. Category -> Rep Category x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Category x -> Category
$cfrom :: forall x. Category -> Rep Category x
Generic)

categoryLetterUppercase         :: Category
categoryLetterUppercase :: Category
categoryLetterUppercase         = Category CSize
1

{-# LINE 70 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryLetterLowercase         :: Category
categoryLetterLowercase         = Category 2

{-# LINE 71 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryLetterTitlecase         :: Category
categoryLetterTitlecase         = Category 4

{-# LINE 72 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryLetterOther             :: Category
categoryLetterOther             = Category 16

{-# LINE 73 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryLetter                  :: Category
categoryLetter                  = Category 31

{-# LINE 74 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryCaseMapped              :: Category
categoryCaseMapped              = Category 7

{-# LINE 75 "Z/Data/Text/UTF8Rewind.hsc" #-}

categoryMarkNonSpacing          :: Category
categoryMarkNonSpacing          = Category 32

{-# LINE 77 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryMarkSpacing             :: Category
categoryMarkSpacing             = Category 64

{-# LINE 78 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryMarkEnclosing           :: Category
categoryMarkEnclosing           = Category 128

{-# LINE 79 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryMark                    :: Category
categoryMark                    = Category 224

{-# LINE 80 "Z/Data/Text/UTF8Rewind.hsc" #-}

categoryNumberDecimal           :: Category
categoryNumberDecimal           = Category 256

{-# LINE 82 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryNumberLetter            :: Category
categoryNumberLetter            = Category 512

{-# LINE 83 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryNumberOther             :: Category
categoryNumberOther             = Category 1024

{-# LINE 84 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryNumber                  :: Category
categoryNumber                  = Category 1792

{-# LINE 85 "Z/Data/Text/UTF8Rewind.hsc" #-}

categoryPunctuationConnector    :: Category
categoryPunctuationConnector    = Category 2048

{-# LINE 87 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuationDash         :: Category
categoryPunctuationDash         = Category 4096

{-# LINE 88 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuationOpen         :: Category
categoryPunctuationOpen         = Category 8192

{-# LINE 89 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuationClose        :: Category
categoryPunctuationClose        = Category 16384

{-# LINE 90 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuationInitial      :: Category
categoryPunctuationInitial      = Category 32768

{-# LINE 91 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuationFinal        :: Category
categoryPunctuationFinal        = Category 65536

{-# LINE 92 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuationOther        :: Category
categoryPunctuationOther        = Category 131072

{-# LINE 93 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPunctuation             :: Category
categoryPunctuation             = Category 260096

{-# LINE 94 "Z/Data/Text/UTF8Rewind.hsc" #-}

categorySymbolMath              :: Category
categorySymbolMath              = Category 262144

{-# LINE 96 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySymbolCurrency          :: Category
categorySymbolCurrency          = Category 524288

{-# LINE 97 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySymbolModifier          :: Category
categorySymbolModifier          = Category 1048576

{-# LINE 98 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySymbolOther             :: Category
categorySymbolOther             = Category 2097152

{-# LINE 99 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySymbol                  :: Category
categorySymbol                  = Category 3932160

{-# LINE 100 "Z/Data/Text/UTF8Rewind.hsc" #-}

categorySeparatorSpace          :: Category
categorySeparatorSpace          = Category 4194304

{-# LINE 102 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySeparatorLine           :: Category
categorySeparatorLine           = Category 8388608

{-# LINE 103 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySeparatorParagraph      :: Category
categorySeparatorParagraph      = Category 16777216

{-# LINE 104 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySeparator               :: Category
categorySeparator               = Category 29360128

{-# LINE 105 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryControl                 :: Category
categoryControl                 = Category 33554432

{-# LINE 106 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryFormat                  :: Category
categoryFormat                  = Category 67108864

{-# LINE 107 "Z/Data/Text/UTF8Rewind.hsc" #-}
categorySurrogate               :: Category
categorySurrogate               = Category 134217728

{-# LINE 108 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryPrivateUse              :: Category
categoryPrivateUse              = Category 268435456

{-# LINE 109 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryUnassigned              :: Category
categoryUnassigned              = Category 536870912

{-# LINE 110 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryCompatibility           :: Category
categoryCompatibility           = Category 1073741824

{-# LINE 111 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIgnoreGraphemeCluste    :: Category
categoryIgnoreGraphemeCluste    = Category 2147483648

{-# LINE 112 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIscntrl                 :: Category
categoryIscntrl                 = Category 1107296256

{-# LINE 113 "Z/Data/Text/UTF8Rewind.hsc" #-}

categoryIsprint                 :: Category
categoryIsprint                 = Category 1107296031

{-# LINE 115 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsspace                 :: Category
categoryIsspace                 = Category 1077936128

{-# LINE 116 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsblank                 :: Category
categoryIsblank                 = Category 1346371584

{-# LINE 117 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsgraph                 :: Category
categoryIsgraph                 = Category 1077935903

{-# LINE 118 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIspunct                 :: Category
categoryIspunct                 = Category 1077934080

{-# LINE 119 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsalnum                 :: Category
categoryIsalnum                 = Category 1073743647

{-# LINE 120 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsalpha                 :: Category
categoryIsalpha                 = Category 1073741855

{-# LINE 121 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsupper                 :: Category
categoryIsupper                 = Category 1073741825

{-# LINE 122 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIslower                 :: Category
categoryIslower                 = Category 1073741826

{-# LINE 123 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsdigit                 :: Category
categoryIsdigit                 = Category 1073743616

{-# LINE 124 "Z/Data/Text/UTF8Rewind.hsc" #-}
categoryIsxdigit                :: Category
categoryIsxdigit                = Category 1342179072

{-# LINE 125 "Z/Data/Text/UTF8Rewind.hsc" #-}

foreign import ccall unsafe utf8envlocale :: IO Category