module Bindings.GLib.Utilities.UnicodeManipulation where
import Bindings.GLib.Fundamentals.BasicTypes
import Bindings.GLib.CoreApplicationSupport.ErrorReporting
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
type C'gunichar = CUInt
type C'gunichar2 = Word16
foreign import ccall "g_unichar_validate" c'g_unichar_validate
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_validate" p'g_unichar_validate
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isalnum" c'g_unichar_isalnum
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isalnum" p'g_unichar_isalnum
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isalpha" c'g_unichar_isalpha
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isalpha" p'g_unichar_isalpha
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_iscntrl" c'g_unichar_iscntrl
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_iscntrl" p'g_unichar_iscntrl
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isdefined" c'g_unichar_isdefined
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isdefined" p'g_unichar_isdefined
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isdigit" c'g_unichar_isdigit
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isdigit" p'g_unichar_isdigit
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isgraph" c'g_unichar_isgraph
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isgraph" p'g_unichar_isgraph
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_islower" c'g_unichar_islower
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_islower" p'g_unichar_islower
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_ismark" c'g_unichar_ismark
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_ismark" p'g_unichar_ismark
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isprint" c'g_unichar_isprint
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isprint" p'g_unichar_isprint
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_ispunct" c'g_unichar_ispunct
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_ispunct" p'g_unichar_ispunct
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isspace" c'g_unichar_isspace
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isspace" p'g_unichar_isspace
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_istitle" c'g_unichar_istitle
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_istitle" p'g_unichar_istitle
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isupper" c'g_unichar_isupper
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isupper" p'g_unichar_isupper
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_isxdigit" c'g_unichar_isxdigit
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_isxdigit" p'g_unichar_isxdigit
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_iswide" c'g_unichar_iswide
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_iswide" p'g_unichar_iswide
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_iswide_cjk" c'g_unichar_iswide_cjk
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_iswide_cjk" p'g_unichar_iswide_cjk
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_iszerowidth" c'g_unichar_iszerowidth
:: C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_iszerowidth" p'g_unichar_iszerowidth
:: FunPtr (C'gunichar -> IO C'gboolean)
foreign import ccall "g_unichar_toupper" c'g_unichar_toupper
:: C'gunichar -> IO C'gunichar
foreign import ccall "&g_unichar_toupper" p'g_unichar_toupper
:: FunPtr (C'gunichar -> IO C'gunichar)
foreign import ccall "g_unichar_tolower" c'g_unichar_tolower
:: C'gunichar -> IO C'gunichar
foreign import ccall "&g_unichar_tolower" p'g_unichar_tolower
:: FunPtr (C'gunichar -> IO C'gunichar)
foreign import ccall "g_unichar_totitle" c'g_unichar_totitle
:: C'gunichar -> IO C'gunichar
foreign import ccall "&g_unichar_totitle" p'g_unichar_totitle
:: FunPtr (C'gunichar -> IO C'gunichar)
foreign import ccall "g_unichar_digit_value" c'g_unichar_digit_value
:: C'gunichar -> IO C'gint
foreign import ccall "&g_unichar_digit_value" p'g_unichar_digit_value
:: FunPtr (C'gunichar -> IO C'gint)
foreign import ccall "g_unichar_xdigit_value" c'g_unichar_xdigit_value
:: C'gunichar -> IO C'gint
foreign import ccall "&g_unichar_xdigit_value" p'g_unichar_xdigit_value
:: FunPtr (C'gunichar -> IO C'gint)
type C'GUnicodeType = CUInt
c'G_UNICODE_FORMAT = 1
c'G_UNICODE_FORMAT :: (Num a) => a
c'G_UNICODE_UNASSIGNED = 2
c'G_UNICODE_UNASSIGNED :: (Num a) => a
c'G_UNICODE_PRIVATE_USE = 3
c'G_UNICODE_PRIVATE_USE :: (Num a) => a
c'G_UNICODE_SURROGATE = 4
c'G_UNICODE_SURROGATE :: (Num a) => a
c'G_UNICODE_LOWERCASE_LETTER = 5
c'G_UNICODE_LOWERCASE_LETTER :: (Num a) => a
c'G_UNICODE_MODIFIER_LETTER = 6
c'G_UNICODE_MODIFIER_LETTER :: (Num a) => a
c'G_UNICODE_OTHER_LETTER = 7
c'G_UNICODE_OTHER_LETTER :: (Num a) => a
c'G_UNICODE_TITLECASE_LETTER = 8
c'G_UNICODE_TITLECASE_LETTER :: (Num a) => a
c'G_UNICODE_UPPERCASE_LETTER = 9
c'G_UNICODE_UPPERCASE_LETTER :: (Num a) => a
c'G_UNICODE_COMBINING_MARK = 10
c'G_UNICODE_COMBINING_MARK :: (Num a) => a
c'G_UNICODE_ENCLOSING_MARK = 11
c'G_UNICODE_ENCLOSING_MARK :: (Num a) => a
c'G_UNICODE_NON_SPACING_MARK = 12
c'G_UNICODE_NON_SPACING_MARK :: (Num a) => a
c'G_UNICODE_DECIMAL_NUMBER = 13
c'G_UNICODE_DECIMAL_NUMBER :: (Num a) => a
c'G_UNICODE_LETTER_NUMBER = 14
c'G_UNICODE_LETTER_NUMBER :: (Num a) => a
c'G_UNICODE_OTHER_NUMBER = 15
c'G_UNICODE_OTHER_NUMBER :: (Num a) => a
c'G_UNICODE_CONNECT_PUNCTUATION = 16
c'G_UNICODE_CONNECT_PUNCTUATION :: (Num a) => a
c'G_UNICODE_DASH_PUNCTUATION = 17
c'G_UNICODE_DASH_PUNCTUATION :: (Num a) => a
c'G_UNICODE_CLOSE_PUNCTUATION = 18
c'G_UNICODE_CLOSE_PUNCTUATION :: (Num a) => a
c'G_UNICODE_FINAL_PUNCTUATION = 19
c'G_UNICODE_FINAL_PUNCTUATION :: (Num a) => a
c'G_UNICODE_INITIAL_PUNCTUATION = 20
c'G_UNICODE_INITIAL_PUNCTUATION :: (Num a) => a
c'G_UNICODE_OTHER_PUNCTUATION = 21
c'G_UNICODE_OTHER_PUNCTUATION :: (Num a) => a
c'G_UNICODE_OPEN_PUNCTUATION = 22
c'G_UNICODE_OPEN_PUNCTUATION :: (Num a) => a
c'G_UNICODE_CURRENCY_SYMBOL = 23
c'G_UNICODE_CURRENCY_SYMBOL :: (Num a) => a
c'G_UNICODE_MODIFIER_SYMBOL = 24
c'G_UNICODE_MODIFIER_SYMBOL :: (Num a) => a
c'G_UNICODE_MATH_SYMBOL = 25
c'G_UNICODE_MATH_SYMBOL :: (Num a) => a
c'G_UNICODE_OTHER_SYMBOL = 26
c'G_UNICODE_OTHER_SYMBOL :: (Num a) => a
c'G_UNICODE_LINE_SEPARATOR = 27
c'G_UNICODE_LINE_SEPARATOR :: (Num a) => a
c'G_UNICODE_PARAGRAPH_SEPARATOR = 28
c'G_UNICODE_PARAGRAPH_SEPARATOR :: (Num a) => a
c'G_UNICODE_SPACE_SEPARATOR = 29
c'G_UNICODE_SPACE_SEPARATOR :: (Num a) => a
foreign import ccall "g_unichar_type" c'g_unichar_type
:: C'gunichar -> IO C'GUnicodeType
foreign import ccall "&g_unichar_type" p'g_unichar_type
:: FunPtr (C'gunichar -> IO C'GUnicodeType)
type C'GUnicodeBreakType = CUInt
c'G_UNICODE_BREAK_MANDATORY = 0
c'G_UNICODE_BREAK_MANDATORY :: (Num a) => a
c'G_UNICODE_BREAK_CARRIAGE_RETURN = 1
c'G_UNICODE_BREAK_CARRIAGE_RETURN :: (Num a) => a
c'G_UNICODE_BREAK_LINE_FEED = 2
c'G_UNICODE_BREAK_LINE_FEED :: (Num a) => a
c'G_UNICODE_BREAK_COMBINING_MARK = 3
c'G_UNICODE_BREAK_COMBINING_MARK :: (Num a) => a
c'G_UNICODE_BREAK_SURROGATE = 4
c'G_UNICODE_BREAK_SURROGATE :: (Num a) => a
c'G_UNICODE_BREAK_ZERO_WIDTH_SPACE = 5
c'G_UNICODE_BREAK_ZERO_WIDTH_SPACE :: (Num a) => a
c'G_UNICODE_BREAK_INSEPARABLE = 6
c'G_UNICODE_BREAK_INSEPARABLE :: (Num a) => a
c'G_UNICODE_BREAK_NON_BREAKING_GLUE = 7
c'G_UNICODE_BREAK_NON_BREAKING_GLUE :: (Num a) => a
c'G_UNICODE_BREAK_CONTINGENT = 8
c'G_UNICODE_BREAK_CONTINGENT :: (Num a) => a
c'G_UNICODE_BREAK_SPACE = 9
c'G_UNICODE_BREAK_SPACE :: (Num a) => a
c'G_UNICODE_BREAK_AFTER = 10
c'G_UNICODE_BREAK_AFTER :: (Num a) => a
c'G_UNICODE_BREAK_BEFORE = 11
c'G_UNICODE_BREAK_BEFORE :: (Num a) => a
c'G_UNICODE_BREAK_BEFORE_AND_AFTER = 12
c'G_UNICODE_BREAK_BEFORE_AND_AFTER :: (Num a) => a
c'G_UNICODE_BREAK_HYPHEN = 13
c'G_UNICODE_BREAK_HYPHEN :: (Num a) => a
c'G_UNICODE_BREAK_NON_STARTER = 14
c'G_UNICODE_BREAK_NON_STARTER :: (Num a) => a
c'G_UNICODE_BREAK_OPEN_PUNCTUATION = 15
c'G_UNICODE_BREAK_OPEN_PUNCTUATION :: (Num a) => a
c'G_UNICODE_BREAK_CLOSE_PUNCTUATION = 16
c'G_UNICODE_BREAK_CLOSE_PUNCTUATION :: (Num a) => a
c'G_UNICODE_BREAK_QUOTATION = 17
c'G_UNICODE_BREAK_QUOTATION :: (Num a) => a
c'G_UNICODE_BREAK_EXCLAMATION = 18
c'G_UNICODE_BREAK_EXCLAMATION :: (Num a) => a
c'G_UNICODE_BREAK_IDEOGRAPHIC = 19
c'G_UNICODE_BREAK_IDEOGRAPHIC :: (Num a) => a
c'G_UNICODE_BREAK_NUMERIC = 20
c'G_UNICODE_BREAK_NUMERIC :: (Num a) => a
c'G_UNICODE_BREAK_INFIX_SEPARATOR = 21
c'G_UNICODE_BREAK_INFIX_SEPARATOR :: (Num a) => a
c'G_UNICODE_BREAK_SYMBOL = 22
c'G_UNICODE_BREAK_SYMBOL :: (Num a) => a
c'G_UNICODE_BREAK_ALPHABETIC = 23
c'G_UNICODE_BREAK_ALPHABETIC :: (Num a) => a
c'G_UNICODE_BREAK_PREFIX = 24
c'G_UNICODE_BREAK_PREFIX :: (Num a) => a
c'G_UNICODE_BREAK_POSTFIX = 25
c'G_UNICODE_BREAK_POSTFIX :: (Num a) => a
c'G_UNICODE_BREAK_COMPLEX_CONTEXT = 26
c'G_UNICODE_BREAK_COMPLEX_CONTEXT :: (Num a) => a
c'G_UNICODE_BREAK_AMBIGUOUS = 27
c'G_UNICODE_BREAK_AMBIGUOUS :: (Num a) => a
c'G_UNICODE_BREAK_UNKNOWN = 28
c'G_UNICODE_BREAK_UNKNOWN :: (Num a) => a
c'G_UNICODE_BREAK_NEXT_LINE = 29
c'G_UNICODE_BREAK_NEXT_LINE :: (Num a) => a
c'G_UNICODE_BREAK_WORD_JOINER = 30
c'G_UNICODE_BREAK_WORD_JOINER :: (Num a) => a
c'G_UNICODE_BREAK_HANGUL_L_JAMO = 31
c'G_UNICODE_BREAK_HANGUL_L_JAMO :: (Num a) => a
c'G_UNICODE_BREAK_HANGUL_V_JAMO = 32
c'G_UNICODE_BREAK_HANGUL_V_JAMO :: (Num a) => a
c'G_UNICODE_BREAK_HANGUL_T_JAMO = 33
c'G_UNICODE_BREAK_HANGUL_T_JAMO :: (Num a) => a
c'G_UNICODE_BREAK_HANGUL_LV_SYLLABLE = 34
c'G_UNICODE_BREAK_HANGUL_LV_SYLLABLE :: (Num a) => a
c'G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE = 35
c'G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE :: (Num a) => a
foreign import ccall "g_unichar_break_type" c'g_unichar_break_type
:: C'gunichar -> IO C'GUnicodeBreakType
foreign import ccall "&g_unichar_break_type" p'g_unichar_break_type
:: FunPtr (C'gunichar -> IO C'GUnicodeBreakType)
foreign import ccall "g_unichar_combining_class" c'g_unichar_combining_class
:: C'gunichar -> IO C'gint
foreign import ccall "&g_unichar_combining_class" p'g_unichar_combining_class
:: FunPtr (C'gunichar -> IO C'gint)
foreign import ccall "g_unicode_canonical_ordering" c'g_unicode_canonical_ordering
:: Ptr C'gunichar -> C'gsize -> IO ()
foreign import ccall "&g_unicode_canonical_ordering" p'g_unicode_canonical_ordering
:: FunPtr (Ptr C'gunichar -> C'gsize -> IO ())
foreign import ccall "g_unicode_canonical_decomposition" c'g_unicode_canonical_decomposition
:: C'gunichar -> Ptr C'gsize -> IO (Ptr C'gunichar)
foreign import ccall "&g_unicode_canonical_decomposition" p'g_unicode_canonical_decomposition
:: FunPtr (C'gunichar -> Ptr C'gsize -> IO (Ptr C'gunichar))
foreign import ccall "g_unichar_get_mirror_char" c'g_unichar_get_mirror_char
:: C'gunichar -> Ptr C'gunichar -> IO C'gboolean
foreign import ccall "&g_unichar_get_mirror_char" p'g_unichar_get_mirror_char
:: FunPtr (C'gunichar -> Ptr C'gunichar -> IO C'gboolean)
type C'GUnicodeScript = CInt
c'G_UNICODE_SCRIPT_INVALID_CODE = 1
c'G_UNICODE_SCRIPT_INVALID_CODE :: (Num a) => a
c'G_UNICODE_SCRIPT_COMMON = 0
c'G_UNICODE_SCRIPT_COMMON :: (Num a) => a
c'G_UNICODE_SCRIPT_INHERITED = 1
c'G_UNICODE_SCRIPT_INHERITED :: (Num a) => a
c'G_UNICODE_SCRIPT_ARABIC = 2
c'G_UNICODE_SCRIPT_ARABIC :: (Num a) => a
c'G_UNICODE_SCRIPT_ARMENIAN = 3
c'G_UNICODE_SCRIPT_ARMENIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_BENGALI = 4
c'G_UNICODE_SCRIPT_BENGALI :: (Num a) => a
c'G_UNICODE_SCRIPT_BOPOMOFO = 5
c'G_UNICODE_SCRIPT_BOPOMOFO :: (Num a) => a
c'G_UNICODE_SCRIPT_CHEROKEE = 6
c'G_UNICODE_SCRIPT_CHEROKEE :: (Num a) => a
c'G_UNICODE_SCRIPT_COPTIC = 7
c'G_UNICODE_SCRIPT_COPTIC :: (Num a) => a
c'G_UNICODE_SCRIPT_CYRILLIC = 8
c'G_UNICODE_SCRIPT_CYRILLIC :: (Num a) => a
c'G_UNICODE_SCRIPT_DESERET = 9
c'G_UNICODE_SCRIPT_DESERET :: (Num a) => a
c'G_UNICODE_SCRIPT_DEVANAGARI = 10
c'G_UNICODE_SCRIPT_DEVANAGARI :: (Num a) => a
c'G_UNICODE_SCRIPT_ETHIOPIC = 11
c'G_UNICODE_SCRIPT_ETHIOPIC :: (Num a) => a
c'G_UNICODE_SCRIPT_GEORGIAN = 12
c'G_UNICODE_SCRIPT_GEORGIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_GOTHIC = 13
c'G_UNICODE_SCRIPT_GOTHIC :: (Num a) => a
c'G_UNICODE_SCRIPT_GREEK = 14
c'G_UNICODE_SCRIPT_GREEK :: (Num a) => a
c'G_UNICODE_SCRIPT_GUJARATI = 15
c'G_UNICODE_SCRIPT_GUJARATI :: (Num a) => a
c'G_UNICODE_SCRIPT_GURMUKHI = 16
c'G_UNICODE_SCRIPT_GURMUKHI :: (Num a) => a
c'G_UNICODE_SCRIPT_HAN = 17
c'G_UNICODE_SCRIPT_HAN :: (Num a) => a
c'G_UNICODE_SCRIPT_HANGUL = 18
c'G_UNICODE_SCRIPT_HANGUL :: (Num a) => a
c'G_UNICODE_SCRIPT_HEBREW = 19
c'G_UNICODE_SCRIPT_HEBREW :: (Num a) => a
c'G_UNICODE_SCRIPT_HIRAGANA = 20
c'G_UNICODE_SCRIPT_HIRAGANA :: (Num a) => a
c'G_UNICODE_SCRIPT_KANNADA = 21
c'G_UNICODE_SCRIPT_KANNADA :: (Num a) => a
c'G_UNICODE_SCRIPT_KATAKANA = 22
c'G_UNICODE_SCRIPT_KATAKANA :: (Num a) => a
c'G_UNICODE_SCRIPT_KHMER = 23
c'G_UNICODE_SCRIPT_KHMER :: (Num a) => a
c'G_UNICODE_SCRIPT_LAO = 24
c'G_UNICODE_SCRIPT_LAO :: (Num a) => a
c'G_UNICODE_SCRIPT_LATIN = 25
c'G_UNICODE_SCRIPT_LATIN :: (Num a) => a
c'G_UNICODE_SCRIPT_MALAYALAM = 26
c'G_UNICODE_SCRIPT_MALAYALAM :: (Num a) => a
c'G_UNICODE_SCRIPT_MONGOLIAN = 27
c'G_UNICODE_SCRIPT_MONGOLIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_MYANMAR = 28
c'G_UNICODE_SCRIPT_MYANMAR :: (Num a) => a
c'G_UNICODE_SCRIPT_OGHAM = 29
c'G_UNICODE_SCRIPT_OGHAM :: (Num a) => a
c'G_UNICODE_SCRIPT_OLD_ITALIC = 30
c'G_UNICODE_SCRIPT_OLD_ITALIC :: (Num a) => a
c'G_UNICODE_SCRIPT_ORIYA = 31
c'G_UNICODE_SCRIPT_ORIYA :: (Num a) => a
c'G_UNICODE_SCRIPT_RUNIC = 32
c'G_UNICODE_SCRIPT_RUNIC :: (Num a) => a
c'G_UNICODE_SCRIPT_SINHALA = 33
c'G_UNICODE_SCRIPT_SINHALA :: (Num a) => a
c'G_UNICODE_SCRIPT_SYRIAC = 34
c'G_UNICODE_SCRIPT_SYRIAC :: (Num a) => a
c'G_UNICODE_SCRIPT_TAMIL = 35
c'G_UNICODE_SCRIPT_TAMIL :: (Num a) => a
c'G_UNICODE_SCRIPT_TELUGU = 36
c'G_UNICODE_SCRIPT_TELUGU :: (Num a) => a
c'G_UNICODE_SCRIPT_THAANA = 37
c'G_UNICODE_SCRIPT_THAANA :: (Num a) => a
c'G_UNICODE_SCRIPT_THAI = 38
c'G_UNICODE_SCRIPT_THAI :: (Num a) => a
c'G_UNICODE_SCRIPT_TIBETAN = 39
c'G_UNICODE_SCRIPT_TIBETAN :: (Num a) => a
c'G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL = 40
c'G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL :: (Num a) => a
c'G_UNICODE_SCRIPT_YI = 41
c'G_UNICODE_SCRIPT_YI :: (Num a) => a
c'G_UNICODE_SCRIPT_TAGALOG = 42
c'G_UNICODE_SCRIPT_TAGALOG :: (Num a) => a
c'G_UNICODE_SCRIPT_HANUNOO = 43
c'G_UNICODE_SCRIPT_HANUNOO :: (Num a) => a
c'G_UNICODE_SCRIPT_BUHID = 44
c'G_UNICODE_SCRIPT_BUHID :: (Num a) => a
c'G_UNICODE_SCRIPT_TAGBANWA = 45
c'G_UNICODE_SCRIPT_TAGBANWA :: (Num a) => a
c'G_UNICODE_SCRIPT_BRAILLE = 46
c'G_UNICODE_SCRIPT_BRAILLE :: (Num a) => a
c'G_UNICODE_SCRIPT_CYPRIOT = 47
c'G_UNICODE_SCRIPT_CYPRIOT :: (Num a) => a
c'G_UNICODE_SCRIPT_LIMBU = 48
c'G_UNICODE_SCRIPT_LIMBU :: (Num a) => a
c'G_UNICODE_SCRIPT_OSMANYA = 49
c'G_UNICODE_SCRIPT_OSMANYA :: (Num a) => a
c'G_UNICODE_SCRIPT_SHAVIAN = 50
c'G_UNICODE_SCRIPT_SHAVIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_LINEAR_B = 51
c'G_UNICODE_SCRIPT_LINEAR_B :: (Num a) => a
c'G_UNICODE_SCRIPT_TAI_LE = 52
c'G_UNICODE_SCRIPT_TAI_LE :: (Num a) => a
c'G_UNICODE_SCRIPT_UGARITIC = 53
c'G_UNICODE_SCRIPT_UGARITIC :: (Num a) => a
c'G_UNICODE_SCRIPT_NEW_TAI_LUE = 54
c'G_UNICODE_SCRIPT_NEW_TAI_LUE :: (Num a) => a
c'G_UNICODE_SCRIPT_BUGINESE = 55
c'G_UNICODE_SCRIPT_BUGINESE :: (Num a) => a
c'G_UNICODE_SCRIPT_GLAGOLITIC = 56
c'G_UNICODE_SCRIPT_GLAGOLITIC :: (Num a) => a
c'G_UNICODE_SCRIPT_TIFINAGH = 57
c'G_UNICODE_SCRIPT_TIFINAGH :: (Num a) => a
c'G_UNICODE_SCRIPT_SYLOTI_NAGRI = 58
c'G_UNICODE_SCRIPT_SYLOTI_NAGRI :: (Num a) => a
c'G_UNICODE_SCRIPT_OLD_PERSIAN = 59
c'G_UNICODE_SCRIPT_OLD_PERSIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_KHAROSHTHI = 60
c'G_UNICODE_SCRIPT_KHAROSHTHI :: (Num a) => a
c'G_UNICODE_SCRIPT_UNKNOWN = 61
c'G_UNICODE_SCRIPT_UNKNOWN :: (Num a) => a
c'G_UNICODE_SCRIPT_BALINESE = 62
c'G_UNICODE_SCRIPT_BALINESE :: (Num a) => a
c'G_UNICODE_SCRIPT_CUNEIFORM = 63
c'G_UNICODE_SCRIPT_CUNEIFORM :: (Num a) => a
c'G_UNICODE_SCRIPT_PHOENICIAN = 64
c'G_UNICODE_SCRIPT_PHOENICIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_PHAGS_PA = 65
c'G_UNICODE_SCRIPT_PHAGS_PA :: (Num a) => a
c'G_UNICODE_SCRIPT_NKO = 66
c'G_UNICODE_SCRIPT_NKO :: (Num a) => a
c'G_UNICODE_SCRIPT_KAYAH_LI = 67
c'G_UNICODE_SCRIPT_KAYAH_LI :: (Num a) => a
c'G_UNICODE_SCRIPT_LEPCHA = 68
c'G_UNICODE_SCRIPT_LEPCHA :: (Num a) => a
c'G_UNICODE_SCRIPT_REJANG = 69
c'G_UNICODE_SCRIPT_REJANG :: (Num a) => a
c'G_UNICODE_SCRIPT_SUNDANESE = 70
c'G_UNICODE_SCRIPT_SUNDANESE :: (Num a) => a
c'G_UNICODE_SCRIPT_SAURASHTRA = 71
c'G_UNICODE_SCRIPT_SAURASHTRA :: (Num a) => a
c'G_UNICODE_SCRIPT_CHAM = 72
c'G_UNICODE_SCRIPT_CHAM :: (Num a) => a
c'G_UNICODE_SCRIPT_OL_CHIKI = 73
c'G_UNICODE_SCRIPT_OL_CHIKI :: (Num a) => a
c'G_UNICODE_SCRIPT_VAI = 74
c'G_UNICODE_SCRIPT_VAI :: (Num a) => a
c'G_UNICODE_SCRIPT_CARIAN = 75
c'G_UNICODE_SCRIPT_CARIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_LYCIAN = 76
c'G_UNICODE_SCRIPT_LYCIAN :: (Num a) => a
c'G_UNICODE_SCRIPT_LYDIAN = 77
c'G_UNICODE_SCRIPT_LYDIAN :: (Num a) => a
foreign import ccall "g_unichar_get_script" c'g_unichar_get_script
:: C'gunichar -> IO C'GUnicodeScript
foreign import ccall "&g_unichar_get_script" p'g_unichar_get_script
:: FunPtr (C'gunichar -> IO C'GUnicodeScript)
foreign import ccall "inline_g_utf8_next_char" c'g_utf8_next_char
:: Ptr C'gchar -> IO (Ptr C'gchar)
foreign import ccall "g_utf8_get_char" c'g_utf8_get_char
:: Ptr C'gchar -> IO C'gunichar
foreign import ccall "&g_utf8_get_char" p'g_utf8_get_char
:: FunPtr (Ptr C'gchar -> IO C'gunichar)
foreign import ccall "g_utf8_get_char_validated" c'g_utf8_get_char_validated
:: Ptr C'gchar -> C'gssize -> IO C'gunichar
foreign import ccall "&g_utf8_get_char_validated" p'g_utf8_get_char_validated
:: FunPtr (Ptr C'gchar -> C'gssize -> IO C'gunichar)
foreign import ccall "g_utf8_offset_to_pointer" c'g_utf8_offset_to_pointer
:: Ptr C'gchar -> C'glong -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_offset_to_pointer" p'g_utf8_offset_to_pointer
:: FunPtr (Ptr C'gchar -> C'glong -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_pointer_to_offset" c'g_utf8_pointer_to_offset
:: Ptr C'gchar -> Ptr C'gchar -> IO C'glong
foreign import ccall "&g_utf8_pointer_to_offset" p'g_utf8_pointer_to_offset
:: FunPtr (Ptr C'gchar -> Ptr C'gchar -> IO C'glong)
foreign import ccall "g_utf8_prev_char" c'g_utf8_prev_char
:: Ptr C'gchar -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_prev_char" p'g_utf8_prev_char
:: FunPtr (Ptr C'gchar -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_find_next_char" c'g_utf8_find_next_char
:: Ptr C'gchar -> Ptr C'gchar -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_find_next_char" p'g_utf8_find_next_char
:: FunPtr (Ptr C'gchar -> Ptr C'gchar -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_find_prev_char" c'g_utf8_find_prev_char
:: Ptr C'gchar -> Ptr C'gchar -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_find_prev_char" p'g_utf8_find_prev_char
:: FunPtr (Ptr C'gchar -> Ptr C'gchar -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_strlen" c'g_utf8_strlen
:: Ptr C'gchar -> C'gssize -> IO C'glong
foreign import ccall "&g_utf8_strlen" p'g_utf8_strlen
:: FunPtr (Ptr C'gchar -> C'gssize -> IO C'glong)
foreign import ccall "g_utf8_strncpy" c'g_utf8_strncpy
:: Ptr C'gchar -> Ptr C'gchar -> C'gsize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_strncpy" p'g_utf8_strncpy
:: FunPtr (Ptr C'gchar -> Ptr C'gchar -> C'gsize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_strchr" c'g_utf8_strchr
:: Ptr C'gchar -> C'gssize -> C'gunichar -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_strchr" p'g_utf8_strchr
:: FunPtr (Ptr C'gchar -> C'gssize -> C'gunichar -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_strrchr" c'g_utf8_strrchr
:: Ptr C'gchar -> C'gssize -> C'gunichar -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_strrchr" p'g_utf8_strrchr
:: FunPtr (Ptr C'gchar -> C'gssize -> C'gunichar -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_strreverse" c'g_utf8_strreverse
:: Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_strreverse" p'g_utf8_strreverse
:: FunPtr (Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_validate" c'g_utf8_validate
:: Ptr C'gchar -> C'gssize -> Ptr (Ptr C'gchar) -> IO C'gboolean
foreign import ccall "&g_utf8_validate" p'g_utf8_validate
:: FunPtr (Ptr C'gchar -> C'gssize -> Ptr (Ptr C'gchar) -> IO C'gboolean)
foreign import ccall "g_utf8_strup" c'g_utf8_strup
:: Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_strup" p'g_utf8_strup
:: FunPtr (Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_strdown" c'g_utf8_strdown
:: Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_strdown" p'g_utf8_strdown
:: FunPtr (Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_casefold" c'g_utf8_casefold
:: Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_casefold" p'g_utf8_casefold
:: FunPtr (Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_normalize" c'g_utf8_normalize
:: Ptr C'gchar -> C'gssize -> C'GNormalizeMode -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_normalize" p'g_utf8_normalize
:: FunPtr (Ptr C'gchar -> C'gssize -> C'GNormalizeMode -> IO (Ptr C'gchar))
type C'GNormalizeMode = CUInt
c'G_NORMALIZE_DEFAULT = 0
c'G_NORMALIZE_DEFAULT :: (Num a) => a
c'G_NORMALIZE_NFD = 0
c'G_NORMALIZE_NFD :: (Num a) => a
c'G_NORMALIZE_DEFAULT_COMPOSE = 1
c'G_NORMALIZE_DEFAULT_COMPOSE :: (Num a) => a
c'G_NORMALIZE_NFC = 1
c'G_NORMALIZE_NFC :: (Num a) => a
c'G_NORMALIZE_ALL = 2
c'G_NORMALIZE_ALL :: (Num a) => a
c'G_NORMALIZE_NFKD = 2
c'G_NORMALIZE_NFKD :: (Num a) => a
c'G_NORMALIZE_ALL_COMPOSE = 3
c'G_NORMALIZE_ALL_COMPOSE :: (Num a) => a
c'G_NORMALIZE_NFKC = 3
c'G_NORMALIZE_NFKC :: (Num a) => a
foreign import ccall "g_utf8_collate" c'g_utf8_collate
:: Ptr C'gchar -> Ptr C'gchar -> IO C'gint
foreign import ccall "&g_utf8_collate" p'g_utf8_collate
:: FunPtr (Ptr C'gchar -> Ptr C'gchar -> IO C'gint)
foreign import ccall "g_utf8_collate_key" c'g_utf8_collate_key
:: Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_collate_key" p'g_utf8_collate_key
:: FunPtr (Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_collate_key_for_filename" c'g_utf8_collate_key_for_filename
:: Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar)
foreign import ccall "&g_utf8_collate_key_for_filename" p'g_utf8_collate_key_for_filename
:: FunPtr (Ptr C'gchar -> C'gssize -> IO (Ptr C'gchar))
foreign import ccall "g_utf8_to_utf16" c'g_utf8_to_utf16
:: Ptr C'gchar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar2)
foreign import ccall "&g_utf8_to_utf16" p'g_utf8_to_utf16
:: FunPtr (Ptr C'gchar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar2))
foreign import ccall "g_utf8_to_ucs4" c'g_utf8_to_ucs4
:: Ptr C'gchar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar)
foreign import ccall "&g_utf8_to_ucs4" p'g_utf8_to_ucs4
:: FunPtr (Ptr C'gchar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar))
foreign import ccall "g_utf8_to_ucs4_fast" c'g_utf8_to_ucs4_fast
:: Ptr C'gchar -> C'glong -> Ptr C'glong -> IO (Ptr C'gunichar)
foreign import ccall "&g_utf8_to_ucs4_fast" p'g_utf8_to_ucs4_fast
:: FunPtr (Ptr C'gchar -> C'glong -> Ptr C'glong -> IO (Ptr C'gunichar))
foreign import ccall "g_utf16_to_ucs4" c'g_utf16_to_ucs4
:: Ptr C'gunichar2 -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar)
foreign import ccall "&g_utf16_to_ucs4" p'g_utf16_to_ucs4
:: FunPtr (Ptr C'gunichar2 -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar))
foreign import ccall "g_utf16_to_utf8" c'g_utf16_to_utf8
:: Ptr C'gunichar2 -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gchar)
foreign import ccall "&g_utf16_to_utf8" p'g_utf16_to_utf8
:: FunPtr (Ptr C'gunichar2 -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gchar))
foreign import ccall "g_ucs4_to_utf16" c'g_ucs4_to_utf16
:: Ptr C'gunichar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar2)
foreign import ccall "&g_ucs4_to_utf16" p'g_ucs4_to_utf16
:: FunPtr (Ptr C'gunichar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gunichar2))
foreign import ccall "g_ucs4_to_utf8" c'g_ucs4_to_utf8
:: Ptr C'gunichar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gchar)
foreign import ccall "&g_ucs4_to_utf8" p'g_ucs4_to_utf8
:: FunPtr (Ptr C'gunichar -> C'glong -> Ptr C'glong -> Ptr C'glong -> Ptr (Ptr C'GError) -> IO (Ptr C'gchar))
foreign import ccall "g_unichar_to_utf8" c'g_unichar_to_utf8
:: C'gunichar -> Ptr C'gchar -> IO C'gint
foreign import ccall "&g_unichar_to_utf8" p'g_unichar_to_utf8
:: FunPtr (C'gunichar -> Ptr C'gchar -> IO C'gint)