{-# LINE 1 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

{-# LINE 2 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

{-# LINE 3 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

-- | <http://library.gnome.org/devel/glib/stable/glib-Unicode-Manipulation.html>

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

{-# LINE 10 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

type C'gunichar = CUInt

{-# LINE 12 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
type C'gunichar2 = Word16

{-# LINE 13 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

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)

{-# LINE 15 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 16 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 17 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 18 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 19 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 20 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 21 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 22 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 23 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 24 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 25 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 26 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 27 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 28 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 29 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 30 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 31 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 32 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 33 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 34 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 35 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 36 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 37 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

type C'GUnicodeType = CUInt

{-# LINE 39 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

c'G_UNICODE_FORMAT = 1
c'G_UNICODE_FORMAT :: (Num a) => a

{-# LINE 41 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_UNASSIGNED = 2
c'G_UNICODE_UNASSIGNED :: (Num a) => a

{-# LINE 42 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_PRIVATE_USE = 3
c'G_UNICODE_PRIVATE_USE :: (Num a) => a

{-# LINE 43 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SURROGATE = 4
c'G_UNICODE_SURROGATE :: (Num a) => a

{-# LINE 44 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_LOWERCASE_LETTER = 5
c'G_UNICODE_LOWERCASE_LETTER :: (Num a) => a

{-# LINE 45 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_MODIFIER_LETTER = 6
c'G_UNICODE_MODIFIER_LETTER :: (Num a) => a

{-# LINE 46 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_OTHER_LETTER = 7
c'G_UNICODE_OTHER_LETTER :: (Num a) => a

{-# LINE 47 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_TITLECASE_LETTER = 8
c'G_UNICODE_TITLECASE_LETTER :: (Num a) => a

{-# LINE 48 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_UPPERCASE_LETTER = 9
c'G_UNICODE_UPPERCASE_LETTER :: (Num a) => a

{-# LINE 49 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_COMBINING_MARK = 10
c'G_UNICODE_COMBINING_MARK :: (Num a) => a

{-# LINE 50 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_ENCLOSING_MARK = 11
c'G_UNICODE_ENCLOSING_MARK :: (Num a) => a

{-# LINE 51 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_NON_SPACING_MARK = 12
c'G_UNICODE_NON_SPACING_MARK :: (Num a) => a

{-# LINE 52 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_DECIMAL_NUMBER = 13
c'G_UNICODE_DECIMAL_NUMBER :: (Num a) => a

{-# LINE 53 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_LETTER_NUMBER = 14
c'G_UNICODE_LETTER_NUMBER :: (Num a) => a

{-# LINE 54 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_OTHER_NUMBER = 15
c'G_UNICODE_OTHER_NUMBER :: (Num a) => a

{-# LINE 55 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_CONNECT_PUNCTUATION = 16
c'G_UNICODE_CONNECT_PUNCTUATION :: (Num a) => a

{-# LINE 56 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_DASH_PUNCTUATION = 17
c'G_UNICODE_DASH_PUNCTUATION :: (Num a) => a

{-# LINE 57 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_CLOSE_PUNCTUATION = 18
c'G_UNICODE_CLOSE_PUNCTUATION :: (Num a) => a

{-# LINE 58 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_FINAL_PUNCTUATION = 19
c'G_UNICODE_FINAL_PUNCTUATION :: (Num a) => a

{-# LINE 59 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_INITIAL_PUNCTUATION = 20
c'G_UNICODE_INITIAL_PUNCTUATION :: (Num a) => a

{-# LINE 60 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_OTHER_PUNCTUATION = 21
c'G_UNICODE_OTHER_PUNCTUATION :: (Num a) => a

{-# LINE 61 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_OPEN_PUNCTUATION = 22
c'G_UNICODE_OPEN_PUNCTUATION :: (Num a) => a

{-# LINE 62 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_CURRENCY_SYMBOL = 23
c'G_UNICODE_CURRENCY_SYMBOL :: (Num a) => a

{-# LINE 63 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_MODIFIER_SYMBOL = 24
c'G_UNICODE_MODIFIER_SYMBOL :: (Num a) => a

{-# LINE 64 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_MATH_SYMBOL = 25
c'G_UNICODE_MATH_SYMBOL :: (Num a) => a

{-# LINE 65 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_OTHER_SYMBOL = 26
c'G_UNICODE_OTHER_SYMBOL :: (Num a) => a

{-# LINE 66 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_LINE_SEPARATOR = 27
c'G_UNICODE_LINE_SEPARATOR :: (Num a) => a

{-# LINE 67 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_PARAGRAPH_SEPARATOR = 28
c'G_UNICODE_PARAGRAPH_SEPARATOR :: (Num a) => a

{-# LINE 68 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SPACE_SEPARATOR = 29
c'G_UNICODE_SPACE_SEPARATOR :: (Num a) => a

{-# LINE 69 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

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)

{-# LINE 71 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

type C'GUnicodeBreakType = CUInt

{-# LINE 73 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

c'G_UNICODE_BREAK_MANDATORY = 0
c'G_UNICODE_BREAK_MANDATORY :: (Num a) => a

{-# LINE 75 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_CARRIAGE_RETURN = 1
c'G_UNICODE_BREAK_CARRIAGE_RETURN :: (Num a) => a

{-# LINE 76 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_LINE_FEED = 2
c'G_UNICODE_BREAK_LINE_FEED :: (Num a) => a

{-# LINE 77 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_COMBINING_MARK = 3
c'G_UNICODE_BREAK_COMBINING_MARK :: (Num a) => a

{-# LINE 78 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_SURROGATE = 4
c'G_UNICODE_BREAK_SURROGATE :: (Num a) => a

{-# LINE 79 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_ZERO_WIDTH_SPACE = 5
c'G_UNICODE_BREAK_ZERO_WIDTH_SPACE :: (Num a) => a

{-# LINE 80 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_INSEPARABLE = 6
c'G_UNICODE_BREAK_INSEPARABLE :: (Num a) => a

{-# LINE 81 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_NON_BREAKING_GLUE = 7
c'G_UNICODE_BREAK_NON_BREAKING_GLUE :: (Num a) => a

{-# LINE 82 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_CONTINGENT = 8
c'G_UNICODE_BREAK_CONTINGENT :: (Num a) => a

{-# LINE 83 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_SPACE = 9
c'G_UNICODE_BREAK_SPACE :: (Num a) => a

{-# LINE 84 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_AFTER = 10
c'G_UNICODE_BREAK_AFTER :: (Num a) => a

{-# LINE 85 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_BEFORE = 11
c'G_UNICODE_BREAK_BEFORE :: (Num a) => a

{-# LINE 86 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_BEFORE_AND_AFTER = 12
c'G_UNICODE_BREAK_BEFORE_AND_AFTER :: (Num a) => a

{-# LINE 87 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_HYPHEN = 13
c'G_UNICODE_BREAK_HYPHEN :: (Num a) => a

{-# LINE 88 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_NON_STARTER = 14
c'G_UNICODE_BREAK_NON_STARTER :: (Num a) => a

{-# LINE 89 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_OPEN_PUNCTUATION = 15
c'G_UNICODE_BREAK_OPEN_PUNCTUATION :: (Num a) => a

{-# LINE 90 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_CLOSE_PUNCTUATION = 16
c'G_UNICODE_BREAK_CLOSE_PUNCTUATION :: (Num a) => a

{-# LINE 91 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_QUOTATION = 17
c'G_UNICODE_BREAK_QUOTATION :: (Num a) => a

{-# LINE 92 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_EXCLAMATION = 18
c'G_UNICODE_BREAK_EXCLAMATION :: (Num a) => a

{-# LINE 93 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_IDEOGRAPHIC = 19
c'G_UNICODE_BREAK_IDEOGRAPHIC :: (Num a) => a

{-# LINE 94 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_NUMERIC = 20
c'G_UNICODE_BREAK_NUMERIC :: (Num a) => a

{-# LINE 95 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_INFIX_SEPARATOR = 21
c'G_UNICODE_BREAK_INFIX_SEPARATOR :: (Num a) => a

{-# LINE 96 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_SYMBOL = 22
c'G_UNICODE_BREAK_SYMBOL :: (Num a) => a

{-# LINE 97 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_ALPHABETIC = 23
c'G_UNICODE_BREAK_ALPHABETIC :: (Num a) => a

{-# LINE 98 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_PREFIX = 24
c'G_UNICODE_BREAK_PREFIX :: (Num a) => a

{-# LINE 99 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_POSTFIX = 25
c'G_UNICODE_BREAK_POSTFIX :: (Num a) => a

{-# LINE 100 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_COMPLEX_CONTEXT = 26
c'G_UNICODE_BREAK_COMPLEX_CONTEXT :: (Num a) => a

{-# LINE 101 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_AMBIGUOUS = 27
c'G_UNICODE_BREAK_AMBIGUOUS :: (Num a) => a

{-# LINE 102 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_UNKNOWN = 28
c'G_UNICODE_BREAK_UNKNOWN :: (Num a) => a

{-# LINE 103 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_NEXT_LINE = 29
c'G_UNICODE_BREAK_NEXT_LINE :: (Num a) => a

{-# LINE 104 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_WORD_JOINER = 30
c'G_UNICODE_BREAK_WORD_JOINER :: (Num a) => a

{-# LINE 105 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_HANGUL_L_JAMO = 31
c'G_UNICODE_BREAK_HANGUL_L_JAMO :: (Num a) => a

{-# LINE 106 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_HANGUL_V_JAMO = 32
c'G_UNICODE_BREAK_HANGUL_V_JAMO :: (Num a) => a

{-# LINE 107 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_HANGUL_T_JAMO = 33
c'G_UNICODE_BREAK_HANGUL_T_JAMO :: (Num a) => a

{-# LINE 108 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_HANGUL_LV_SYLLABLE = 34
c'G_UNICODE_BREAK_HANGUL_LV_SYLLABLE :: (Num a) => a

{-# LINE 109 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE = 35
c'G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE :: (Num a) => a

{-# LINE 110 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

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)

{-# LINE 112 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 113 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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 ())

{-# LINE 114 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 115 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 116 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

type C'GUnicodeScript = CInt

{-# LINE 118 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

c'G_UNICODE_SCRIPT_INVALID_CODE = -1
c'G_UNICODE_SCRIPT_INVALID_CODE :: (Num a) => a

{-# LINE 120 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_COMMON = 0
c'G_UNICODE_SCRIPT_COMMON :: (Num a) => a

{-# LINE 121 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_INHERITED = 1
c'G_UNICODE_SCRIPT_INHERITED :: (Num a) => a

{-# LINE 122 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_ARABIC = 2
c'G_UNICODE_SCRIPT_ARABIC :: (Num a) => a

{-# LINE 123 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_ARMENIAN = 3
c'G_UNICODE_SCRIPT_ARMENIAN :: (Num a) => a

{-# LINE 124 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_BENGALI = 4
c'G_UNICODE_SCRIPT_BENGALI :: (Num a) => a

{-# LINE 125 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_BOPOMOFO = 5
c'G_UNICODE_SCRIPT_BOPOMOFO :: (Num a) => a

{-# LINE 126 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CHEROKEE = 6
c'G_UNICODE_SCRIPT_CHEROKEE :: (Num a) => a

{-# LINE 127 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_COPTIC = 7
c'G_UNICODE_SCRIPT_COPTIC :: (Num a) => a

{-# LINE 128 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CYRILLIC = 8
c'G_UNICODE_SCRIPT_CYRILLIC :: (Num a) => a

{-# LINE 129 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_DESERET = 9
c'G_UNICODE_SCRIPT_DESERET :: (Num a) => a

{-# LINE 130 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_DEVANAGARI = 10
c'G_UNICODE_SCRIPT_DEVANAGARI :: (Num a) => a

{-# LINE 131 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_ETHIOPIC = 11
c'G_UNICODE_SCRIPT_ETHIOPIC :: (Num a) => a

{-# LINE 132 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_GEORGIAN = 12
c'G_UNICODE_SCRIPT_GEORGIAN :: (Num a) => a

{-# LINE 133 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_GOTHIC = 13
c'G_UNICODE_SCRIPT_GOTHIC :: (Num a) => a

{-# LINE 134 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_GREEK = 14
c'G_UNICODE_SCRIPT_GREEK :: (Num a) => a

{-# LINE 135 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_GUJARATI = 15
c'G_UNICODE_SCRIPT_GUJARATI :: (Num a) => a

{-# LINE 136 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_GURMUKHI = 16
c'G_UNICODE_SCRIPT_GURMUKHI :: (Num a) => a

{-# LINE 137 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_HAN = 17
c'G_UNICODE_SCRIPT_HAN :: (Num a) => a

{-# LINE 138 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_HANGUL = 18
c'G_UNICODE_SCRIPT_HANGUL :: (Num a) => a

{-# LINE 139 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_HEBREW = 19
c'G_UNICODE_SCRIPT_HEBREW :: (Num a) => a

{-# LINE 140 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_HIRAGANA = 20
c'G_UNICODE_SCRIPT_HIRAGANA :: (Num a) => a

{-# LINE 141 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_KANNADA = 21
c'G_UNICODE_SCRIPT_KANNADA :: (Num a) => a

{-# LINE 142 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_KATAKANA = 22
c'G_UNICODE_SCRIPT_KATAKANA :: (Num a) => a

{-# LINE 143 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_KHMER = 23
c'G_UNICODE_SCRIPT_KHMER :: (Num a) => a

{-# LINE 144 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LAO = 24
c'G_UNICODE_SCRIPT_LAO :: (Num a) => a

{-# LINE 145 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LATIN = 25
c'G_UNICODE_SCRIPT_LATIN :: (Num a) => a

{-# LINE 146 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_MALAYALAM = 26
c'G_UNICODE_SCRIPT_MALAYALAM :: (Num a) => a

{-# LINE 147 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_MONGOLIAN = 27
c'G_UNICODE_SCRIPT_MONGOLIAN :: (Num a) => a

{-# LINE 148 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_MYANMAR = 28
c'G_UNICODE_SCRIPT_MYANMAR :: (Num a) => a

{-# LINE 149 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_OGHAM = 29
c'G_UNICODE_SCRIPT_OGHAM :: (Num a) => a

{-# LINE 150 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_OLD_ITALIC = 30
c'G_UNICODE_SCRIPT_OLD_ITALIC :: (Num a) => a

{-# LINE 151 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_ORIYA = 31
c'G_UNICODE_SCRIPT_ORIYA :: (Num a) => a

{-# LINE 152 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_RUNIC = 32
c'G_UNICODE_SCRIPT_RUNIC :: (Num a) => a

{-# LINE 153 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_SINHALA = 33
c'G_UNICODE_SCRIPT_SINHALA :: (Num a) => a

{-# LINE 154 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_SYRIAC = 34
c'G_UNICODE_SCRIPT_SYRIAC :: (Num a) => a

{-# LINE 155 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TAMIL = 35
c'G_UNICODE_SCRIPT_TAMIL :: (Num a) => a

{-# LINE 156 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TELUGU = 36
c'G_UNICODE_SCRIPT_TELUGU :: (Num a) => a

{-# LINE 157 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_THAANA = 37
c'G_UNICODE_SCRIPT_THAANA :: (Num a) => a

{-# LINE 158 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_THAI = 38
c'G_UNICODE_SCRIPT_THAI :: (Num a) => a

{-# LINE 159 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TIBETAN = 39
c'G_UNICODE_SCRIPT_TIBETAN :: (Num a) => a

{-# LINE 160 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL = 40
c'G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL :: (Num a) => a

{-# LINE 161 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_YI = 41
c'G_UNICODE_SCRIPT_YI :: (Num a) => a

{-# LINE 162 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TAGALOG = 42
c'G_UNICODE_SCRIPT_TAGALOG :: (Num a) => a

{-# LINE 163 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_HANUNOO = 43
c'G_UNICODE_SCRIPT_HANUNOO :: (Num a) => a

{-# LINE 164 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_BUHID = 44
c'G_UNICODE_SCRIPT_BUHID :: (Num a) => a

{-# LINE 165 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TAGBANWA = 45
c'G_UNICODE_SCRIPT_TAGBANWA :: (Num a) => a

{-# LINE 166 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_BRAILLE = 46
c'G_UNICODE_SCRIPT_BRAILLE :: (Num a) => a

{-# LINE 167 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CYPRIOT = 47
c'G_UNICODE_SCRIPT_CYPRIOT :: (Num a) => a

{-# LINE 168 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LIMBU = 48
c'G_UNICODE_SCRIPT_LIMBU :: (Num a) => a

{-# LINE 169 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_OSMANYA = 49
c'G_UNICODE_SCRIPT_OSMANYA :: (Num a) => a

{-# LINE 170 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_SHAVIAN = 50
c'G_UNICODE_SCRIPT_SHAVIAN :: (Num a) => a

{-# LINE 171 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LINEAR_B = 51
c'G_UNICODE_SCRIPT_LINEAR_B :: (Num a) => a

{-# LINE 172 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TAI_LE = 52
c'G_UNICODE_SCRIPT_TAI_LE :: (Num a) => a

{-# LINE 173 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_UGARITIC = 53
c'G_UNICODE_SCRIPT_UGARITIC :: (Num a) => a

{-# LINE 174 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_NEW_TAI_LUE = 54
c'G_UNICODE_SCRIPT_NEW_TAI_LUE :: (Num a) => a

{-# LINE 175 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_BUGINESE = 55
c'G_UNICODE_SCRIPT_BUGINESE :: (Num a) => a

{-# LINE 176 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_GLAGOLITIC = 56
c'G_UNICODE_SCRIPT_GLAGOLITIC :: (Num a) => a

{-# LINE 177 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_TIFINAGH = 57
c'G_UNICODE_SCRIPT_TIFINAGH :: (Num a) => a

{-# LINE 178 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_SYLOTI_NAGRI = 58
c'G_UNICODE_SCRIPT_SYLOTI_NAGRI :: (Num a) => a

{-# LINE 179 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_OLD_PERSIAN = 59
c'G_UNICODE_SCRIPT_OLD_PERSIAN :: (Num a) => a

{-# LINE 180 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_KHAROSHTHI = 60
c'G_UNICODE_SCRIPT_KHAROSHTHI :: (Num a) => a

{-# LINE 181 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_UNKNOWN = 61
c'G_UNICODE_SCRIPT_UNKNOWN :: (Num a) => a

{-# LINE 182 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_BALINESE = 62
c'G_UNICODE_SCRIPT_BALINESE :: (Num a) => a

{-# LINE 183 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CUNEIFORM = 63
c'G_UNICODE_SCRIPT_CUNEIFORM :: (Num a) => a

{-# LINE 184 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_PHOENICIAN = 64
c'G_UNICODE_SCRIPT_PHOENICIAN :: (Num a) => a

{-# LINE 185 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_PHAGS_PA = 65
c'G_UNICODE_SCRIPT_PHAGS_PA :: (Num a) => a

{-# LINE 186 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_NKO = 66
c'G_UNICODE_SCRIPT_NKO :: (Num a) => a

{-# LINE 187 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_KAYAH_LI = 67
c'G_UNICODE_SCRIPT_KAYAH_LI :: (Num a) => a

{-# LINE 188 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LEPCHA = 68
c'G_UNICODE_SCRIPT_LEPCHA :: (Num a) => a

{-# LINE 189 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_REJANG = 69
c'G_UNICODE_SCRIPT_REJANG :: (Num a) => a

{-# LINE 190 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_SUNDANESE = 70
c'G_UNICODE_SCRIPT_SUNDANESE :: (Num a) => a

{-# LINE 191 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_SAURASHTRA = 71
c'G_UNICODE_SCRIPT_SAURASHTRA :: (Num a) => a

{-# LINE 192 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CHAM = 72
c'G_UNICODE_SCRIPT_CHAM :: (Num a) => a

{-# LINE 193 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_OL_CHIKI = 73
c'G_UNICODE_SCRIPT_OL_CHIKI :: (Num a) => a

{-# LINE 194 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_VAI = 74
c'G_UNICODE_SCRIPT_VAI :: (Num a) => a

{-# LINE 195 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_CARIAN = 75
c'G_UNICODE_SCRIPT_CARIAN :: (Num a) => a

{-# LINE 196 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LYCIAN = 76
c'G_UNICODE_SCRIPT_LYCIAN :: (Num a) => a

{-# LINE 197 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_UNICODE_SCRIPT_LYDIAN = 77
c'G_UNICODE_SCRIPT_LYDIAN :: (Num a) => a

{-# LINE 198 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

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)

{-# LINE 200 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
foreign import ccall "inline_g_utf8_next_char" c'g_utf8_next_char
  :: Ptr C'gchar -> IO (Ptr C'gchar)

{-# LINE 201 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

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)

{-# LINE 203 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 204 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 205 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 206 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 207 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 208 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 209 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 210 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 211 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 212 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 213 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 214 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 215 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 216 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 217 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 218 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 219 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

type C'GNormalizeMode = CUInt

{-# LINE 221 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

c'G_NORMALIZE_DEFAULT = 0
c'G_NORMALIZE_DEFAULT :: (Num a) => a

{-# LINE 223 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_NFD = 0
c'G_NORMALIZE_NFD :: (Num a) => a

{-# LINE 224 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_DEFAULT_COMPOSE = 1
c'G_NORMALIZE_DEFAULT_COMPOSE :: (Num a) => a

{-# LINE 225 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_NFC = 1
c'G_NORMALIZE_NFC :: (Num a) => a

{-# LINE 226 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_ALL = 2
c'G_NORMALIZE_ALL :: (Num a) => a

{-# LINE 227 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_NFKD = 2
c'G_NORMALIZE_NFKD :: (Num a) => a

{-# LINE 228 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_ALL_COMPOSE = 3
c'G_NORMALIZE_ALL_COMPOSE :: (Num a) => a

{-# LINE 229 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
c'G_NORMALIZE_NFKC = 3
c'G_NORMALIZE_NFKC :: (Num a) => a

{-# LINE 230 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}

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)

{-# LINE 232 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 233 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 235 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 237 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 239 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 241 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 243 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 245 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 247 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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))

{-# LINE 249 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}
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)

{-# LINE 250 "src/Bindings/GLib/Utilities/UnicodeManipulation.hsc" #-}