packages feed

gi-girepository (empty) → 0.1.44.12

raw patch · 24 files changed

+6854/−0 lines, 24 filesdep +basedep +bytestringdep +containerssetup-changed

Dependencies added: base, bytestring, containers, gi-gobject, haskell-gi-base, text, transformers

Files

+ GI/GIRepository.hs view
@@ -0,0 +1,38 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository+    (     module GI.GIRepository.Callbacks        ,+    module GI.GIRepository.Enums            ,+    module GI.GIRepository.Flags            ,+    module GI.GIRepository.Functions        ,+    module GI.GIRepository.Objects          ,+    module GI.GIRepository.Structs          ,+    module GI.GIRepository.Unions           ,+++    ) where++import GI.GIRepository.Callbacks+import GI.GIRepository.Enums+import GI.GIRepository.Flags+import GI.GIRepository.Functions+import GI.GIRepository.Objects+import GI.GIRepository.Structs+import GI.GIRepository.Unions++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++
+ GI/GIRepository/Callbacks.hs view
@@ -0,0 +1,20 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Callbacks () where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+++
+ GI/GIRepository/Enums.hs view
@@ -0,0 +1,311 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Enums+    ( ++-- * Exported types+    NvokeError(..)                          ,+    TypeTag(..)                             ,+    Transfer(..)                            ,+    ScopeType(..)                           ,+    RepositoryError(..)                     ,+    InfoType(..)                            ,+    Direction(..)                           ,+    ArrayType(..)                           ,+++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map+++++-- Enum nvokeError++data NvokeError = +      NvokeErrorFailed+    | NvokeErrorSymbolNotFound+    | NvokeErrorArgumentMismatch+    | AnotherNvokeError Int+    deriving (Show, Eq)++instance Enum NvokeError where+    fromEnum NvokeErrorFailed = 0+    fromEnum NvokeErrorSymbolNotFound = 1+    fromEnum NvokeErrorArgumentMismatch = 2+    fromEnum (AnotherNvokeError k) = k++    toEnum 0 = NvokeErrorFailed+    toEnum 1 = NvokeErrorSymbolNotFound+    toEnum 2 = NvokeErrorArgumentMismatch+    toEnum k = AnotherNvokeError k++-- Enum TypeTag++data TypeTag = +      TypeTagVoid+    | TypeTagBoolean+    | TypeTagInt8+    | TypeTagUint8+    | TypeTagInt16+    | TypeTagUint16+    | TypeTagInt32+    | TypeTagUint32+    | TypeTagInt64+    | TypeTagUint64+    | TypeTagFloat+    | TypeTagDouble+    | TypeTagGtype+    | TypeTagUtf8+    | TypeTagFilename+    | TypeTagArray+    | TypeTagInterface+    | TypeTagGlist+    | TypeTagGslist+    | TypeTagGhash+    | TypeTagError+    | TypeTagUnichar+    | AnotherTypeTag Int+    deriving (Show, Eq)++instance Enum TypeTag where+    fromEnum TypeTagVoid = 0+    fromEnum TypeTagBoolean = 1+    fromEnum TypeTagInt8 = 2+    fromEnum TypeTagUint8 = 3+    fromEnum TypeTagInt16 = 4+    fromEnum TypeTagUint16 = 5+    fromEnum TypeTagInt32 = 6+    fromEnum TypeTagUint32 = 7+    fromEnum TypeTagInt64 = 8+    fromEnum TypeTagUint64 = 9+    fromEnum TypeTagFloat = 10+    fromEnum TypeTagDouble = 11+    fromEnum TypeTagGtype = 12+    fromEnum TypeTagUtf8 = 13+    fromEnum TypeTagFilename = 14+    fromEnum TypeTagArray = 15+    fromEnum TypeTagInterface = 16+    fromEnum TypeTagGlist = 17+    fromEnum TypeTagGslist = 18+    fromEnum TypeTagGhash = 19+    fromEnum TypeTagError = 20+    fromEnum TypeTagUnichar = 21+    fromEnum (AnotherTypeTag k) = k++    toEnum 0 = TypeTagVoid+    toEnum 1 = TypeTagBoolean+    toEnum 2 = TypeTagInt8+    toEnum 3 = TypeTagUint8+    toEnum 4 = TypeTagInt16+    toEnum 5 = TypeTagUint16+    toEnum 6 = TypeTagInt32+    toEnum 7 = TypeTagUint32+    toEnum 8 = TypeTagInt64+    toEnum 9 = TypeTagUint64+    toEnum 10 = TypeTagFloat+    toEnum 11 = TypeTagDouble+    toEnum 12 = TypeTagGtype+    toEnum 13 = TypeTagUtf8+    toEnum 14 = TypeTagFilename+    toEnum 15 = TypeTagArray+    toEnum 16 = TypeTagInterface+    toEnum 17 = TypeTagGlist+    toEnum 18 = TypeTagGslist+    toEnum 19 = TypeTagGhash+    toEnum 20 = TypeTagError+    toEnum 21 = TypeTagUnichar+    toEnum k = AnotherTypeTag k++-- Enum Transfer++data Transfer = +      TransferNothing+    | TransferContainer+    | TransferEverything+    | AnotherTransfer Int+    deriving (Show, Eq)++instance Enum Transfer where+    fromEnum TransferNothing = 0+    fromEnum TransferContainer = 1+    fromEnum TransferEverything = 2+    fromEnum (AnotherTransfer k) = k++    toEnum 0 = TransferNothing+    toEnum 1 = TransferContainer+    toEnum 2 = TransferEverything+    toEnum k = AnotherTransfer k++-- Enum ScopeType++data ScopeType = +      ScopeTypeInvalid+    | ScopeTypeCall+    | ScopeTypeAsync+    | ScopeTypeNotified+    | AnotherScopeType Int+    deriving (Show, Eq)++instance Enum ScopeType where+    fromEnum ScopeTypeInvalid = 0+    fromEnum ScopeTypeCall = 1+    fromEnum ScopeTypeAsync = 2+    fromEnum ScopeTypeNotified = 3+    fromEnum (AnotherScopeType k) = k++    toEnum 0 = ScopeTypeInvalid+    toEnum 1 = ScopeTypeCall+    toEnum 2 = ScopeTypeAsync+    toEnum 3 = ScopeTypeNotified+    toEnum k = AnotherScopeType k++-- Enum RepositoryError++data RepositoryError = +      RepositoryErrorTypelibNotFound+    | RepositoryErrorNamespaceMismatch+    | RepositoryErrorNamespaceVersionConflict+    | RepositoryErrorLibraryNotFound+    | AnotherRepositoryError Int+    deriving (Show, Eq)++instance Enum RepositoryError where+    fromEnum RepositoryErrorTypelibNotFound = 0+    fromEnum RepositoryErrorNamespaceMismatch = 1+    fromEnum RepositoryErrorNamespaceVersionConflict = 2+    fromEnum RepositoryErrorLibraryNotFound = 3+    fromEnum (AnotherRepositoryError k) = k++    toEnum 0 = RepositoryErrorTypelibNotFound+    toEnum 1 = RepositoryErrorNamespaceMismatch+    toEnum 2 = RepositoryErrorNamespaceVersionConflict+    toEnum 3 = RepositoryErrorLibraryNotFound+    toEnum k = AnotherRepositoryError k++-- Enum InfoType++data InfoType = +      InfoTypeInvalid+    | InfoTypeFunction+    | InfoTypeCallback+    | InfoTypeStruct+    | InfoTypeBoxed+    | InfoTypeEnum+    | InfoTypeFlags+    | InfoTypeObject+    | InfoTypeInterface+    | InfoTypeConstant+    | InfoTypeInvalid0+    | InfoTypeUnion+    | InfoTypeValue+    | InfoTypeSignal+    | InfoTypeVfunc+    | InfoTypeProperty+    | InfoTypeField+    | InfoTypeArg+    | InfoTypeType+    | InfoTypeUnresolved+    | AnotherInfoType Int+    deriving (Show, Eq)++instance Enum InfoType where+    fromEnum InfoTypeInvalid = 0+    fromEnum InfoTypeFunction = 1+    fromEnum InfoTypeCallback = 2+    fromEnum InfoTypeStruct = 3+    fromEnum InfoTypeBoxed = 4+    fromEnum InfoTypeEnum = 5+    fromEnum InfoTypeFlags = 6+    fromEnum InfoTypeObject = 7+    fromEnum InfoTypeInterface = 8+    fromEnum InfoTypeConstant = 9+    fromEnum InfoTypeInvalid0 = 10+    fromEnum InfoTypeUnion = 11+    fromEnum InfoTypeValue = 12+    fromEnum InfoTypeSignal = 13+    fromEnum InfoTypeVfunc = 14+    fromEnum InfoTypeProperty = 15+    fromEnum InfoTypeField = 16+    fromEnum InfoTypeArg = 17+    fromEnum InfoTypeType = 18+    fromEnum InfoTypeUnresolved = 19+    fromEnum (AnotherInfoType k) = k++    toEnum 0 = InfoTypeInvalid+    toEnum 1 = InfoTypeFunction+    toEnum 2 = InfoTypeCallback+    toEnum 3 = InfoTypeStruct+    toEnum 4 = InfoTypeBoxed+    toEnum 5 = InfoTypeEnum+    toEnum 6 = InfoTypeFlags+    toEnum 7 = InfoTypeObject+    toEnum 8 = InfoTypeInterface+    toEnum 9 = InfoTypeConstant+    toEnum 10 = InfoTypeInvalid0+    toEnum 11 = InfoTypeUnion+    toEnum 12 = InfoTypeValue+    toEnum 13 = InfoTypeSignal+    toEnum 14 = InfoTypeVfunc+    toEnum 15 = InfoTypeProperty+    toEnum 16 = InfoTypeField+    toEnum 17 = InfoTypeArg+    toEnum 18 = InfoTypeType+    toEnum 19 = InfoTypeUnresolved+    toEnum k = AnotherInfoType k++-- Enum Direction++data Direction = +      DirectionIn+    | DirectionOut+    | DirectionInout+    | AnotherDirection Int+    deriving (Show, Eq)++instance Enum Direction where+    fromEnum DirectionIn = 0+    fromEnum DirectionOut = 1+    fromEnum DirectionInout = 2+    fromEnum (AnotherDirection k) = k++    toEnum 0 = DirectionIn+    toEnum 1 = DirectionOut+    toEnum 2 = DirectionInout+    toEnum k = AnotherDirection k++-- Enum ArrayType++data ArrayType = +      ArrayTypeC+    | ArrayTypeArray+    | ArrayTypePtrArray+    | ArrayTypeByteArray+    | AnotherArrayType Int+    deriving (Show, Eq)++instance Enum ArrayType where+    fromEnum ArrayTypeC = 0+    fromEnum ArrayTypeArray = 1+    fromEnum ArrayTypePtrArray = 2+    fromEnum ArrayTypeByteArray = 3+    fromEnum (AnotherArrayType k) = k++    toEnum 0 = ArrayTypeC+    toEnum 1 = ArrayTypeArray+    toEnum 2 = ArrayTypePtrArray+    toEnum 3 = ArrayTypeByteArray+    toEnum k = AnotherArrayType k++
+ GI/GIRepository/Flags.hs view
@@ -0,0 +1,121 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Flags+    ( ++-- * Exported types+    VFuncInfoFlags(..)                      ,+    RepositoryLoadFlags(..)                 ,+    FunctionInfoFlags(..)                   ,+    FieldInfoFlags(..)                      ,+++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map+++++-- Flags VFuncInfoFlags++data VFuncInfoFlags = +      VFuncInfoFlagsMustChainUp+    | VFuncInfoFlagsMustOverride+    | VFuncInfoFlagsMustNotOverride+    | VFuncInfoFlagsThrows+    | AnotherVFuncInfoFlags Int+    deriving (Show, Eq)++instance Enum VFuncInfoFlags where+    fromEnum VFuncInfoFlagsMustChainUp = 1+    fromEnum VFuncInfoFlagsMustOverride = 2+    fromEnum VFuncInfoFlagsMustNotOverride = 4+    fromEnum VFuncInfoFlagsThrows = 8+    fromEnum (AnotherVFuncInfoFlags k) = k++    toEnum 1 = VFuncInfoFlagsMustChainUp+    toEnum 2 = VFuncInfoFlagsMustOverride+    toEnum 4 = VFuncInfoFlagsMustNotOverride+    toEnum 8 = VFuncInfoFlagsThrows+    toEnum k = AnotherVFuncInfoFlags k++instance IsGFlag VFuncInfoFlags++-- Flags RepositoryLoadFlags++data RepositoryLoadFlags = +      RepositoryLoadFlagsIrepositoryLoadFlagLazy+    | AnotherRepositoryLoadFlags Int+    deriving (Show, Eq)++instance Enum RepositoryLoadFlags where+    fromEnum RepositoryLoadFlagsIrepositoryLoadFlagLazy = 1+    fromEnum (AnotherRepositoryLoadFlags k) = k++    toEnum 1 = RepositoryLoadFlagsIrepositoryLoadFlagLazy+    toEnum k = AnotherRepositoryLoadFlags k++instance IsGFlag RepositoryLoadFlags++-- Flags FunctionInfoFlags++data FunctionInfoFlags = +      FunctionInfoFlagsIsMethod+    | FunctionInfoFlagsIsConstructor+    | FunctionInfoFlagsIsGetter+    | FunctionInfoFlagsIsSetter+    | FunctionInfoFlagsWrapsVfunc+    | FunctionInfoFlagsThrows+    | AnotherFunctionInfoFlags Int+    deriving (Show, Eq)++instance Enum FunctionInfoFlags where+    fromEnum FunctionInfoFlagsIsMethod = 1+    fromEnum FunctionInfoFlagsIsConstructor = 2+    fromEnum FunctionInfoFlagsIsGetter = 4+    fromEnum FunctionInfoFlagsIsSetter = 8+    fromEnum FunctionInfoFlagsWrapsVfunc = 16+    fromEnum FunctionInfoFlagsThrows = 32+    fromEnum (AnotherFunctionInfoFlags k) = k++    toEnum 1 = FunctionInfoFlagsIsMethod+    toEnum 2 = FunctionInfoFlagsIsConstructor+    toEnum 4 = FunctionInfoFlagsIsGetter+    toEnum 8 = FunctionInfoFlagsIsSetter+    toEnum 16 = FunctionInfoFlagsWrapsVfunc+    toEnum 32 = FunctionInfoFlagsThrows+    toEnum k = AnotherFunctionInfoFlags k++instance IsGFlag FunctionInfoFlags++-- Flags FieldInfoFlags++data FieldInfoFlags = +      FieldInfoFlagsReadable+    | FieldInfoFlagsWritable+    | AnotherFieldInfoFlags Int+    deriving (Show, Eq)++instance Enum FieldInfoFlags where+    fromEnum FieldInfoFlagsReadable = 1+    fromEnum FieldInfoFlagsWritable = 2+    fromEnum (AnotherFieldInfoFlags k) = k++    toEnum 1 = FieldInfoFlagsReadable+    toEnum 2 = FieldInfoFlagsWritable+    toEnum k = AnotherFieldInfoFlags k++instance IsGFlag FieldInfoFlags++
+ GI/GIRepository/Functions.hs view
@@ -0,0 +1,4029 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Functions+    ( ++ -- * Methods+-- ** argInfoGetClosure+    argInfoGetClosure                       ,+++-- ** argInfoGetDestroy+    argInfoGetDestroy                       ,+++-- ** argInfoGetDirection+    argInfoGetDirection                     ,+++-- ** argInfoGetOwnershipTransfer+    argInfoGetOwnershipTransfer             ,+++-- ** argInfoGetScope+    argInfoGetScope                         ,+++-- ** argInfoGetType+    argInfoGetType                          ,+++-- ** argInfoIsCallerAllocates+    argInfoIsCallerAllocates                ,+++-- ** argInfoIsOptional+    argInfoIsOptional                       ,+++-- ** argInfoIsReturnValue+    argInfoIsReturnValue                    ,+++-- ** argInfoIsSkip+    argInfoIsSkip                           ,+++-- ** argInfoLoadType+    argInfoLoadType                         ,+++-- ** argInfoMayBeNull+    argInfoMayBeNull                        ,+++-- ** callableInfoCanThrowGerror+    callableInfoCanThrowGerror              ,+++-- ** callableInfoGetArg+    callableInfoGetArg                      ,+++-- ** callableInfoGetCallerOwns+    callableInfoGetCallerOwns               ,+++-- ** callableInfoGetInstanceOwnershipTransfer+    callableInfoGetInstanceOwnershipTransfer,+++-- ** callableInfoGetNArgs+    callableInfoGetNArgs                    ,+++-- ** callableInfoGetReturnAttribute+    callableInfoGetReturnAttribute          ,+++-- ** callableInfoGetReturnType+    callableInfoGetReturnType               ,+++-- ** callableInfoInvoke+    callableInfoInvoke                      ,+++-- ** callableInfoIsMethod+    callableInfoIsMethod                    ,+++-- ** callableInfoIterateReturnAttributes+    callableInfoIterateReturnAttributes     ,+++-- ** callableInfoLoadArg+    callableInfoLoadArg                     ,+++-- ** callableInfoLoadReturnType+    callableInfoLoadReturnType              ,+++-- ** callableInfoMayReturnNull+    callableInfoMayReturnNull               ,+++-- ** callableInfoSkipReturn+    callableInfoSkipReturn                  ,+++-- ** constantInfoGetType+    constantInfoGetType                     ,+++-- ** enumInfoGetErrorDomain+    enumInfoGetErrorDomain                  ,+++-- ** enumInfoGetMethod+    enumInfoGetMethod                       ,+++-- ** enumInfoGetNMethods+    enumInfoGetNMethods                     ,+++-- ** enumInfoGetNValues+    enumInfoGetNValues                      ,+++-- ** enumInfoGetStorageType+    enumInfoGetStorageType                  ,+++-- ** enumInfoGetValue+    enumInfoGetValue                        ,+++-- ** fieldInfoGetFlags+    fieldInfoGetFlags                       ,+++-- ** fieldInfoGetOffset+    fieldInfoGetOffset                      ,+++-- ** fieldInfoGetSize+    fieldInfoGetSize                        ,+++-- ** fieldInfoGetType+    fieldInfoGetType                        ,+++-- ** functionInfoGetFlags+    functionInfoGetFlags                    ,+++-- ** functionInfoGetProperty+    functionInfoGetProperty                 ,+++-- ** functionInfoGetSymbol+    functionInfoGetSymbol                   ,+++-- ** functionInfoGetVfunc+    functionInfoGetVfunc                    ,+++-- ** infoNew+    infoNew                                 ,+++-- ** infoTypeToString+    infoTypeToString                        ,+++-- ** interfaceInfoFindMethod+    interfaceInfoFindMethod                 ,+++-- ** interfaceInfoFindSignal+    interfaceInfoFindSignal                 ,+++-- ** interfaceInfoFindVfunc+    interfaceInfoFindVfunc                  ,+++-- ** interfaceInfoGetConstant+    interfaceInfoGetConstant                ,+++-- ** interfaceInfoGetIfaceStruct+    interfaceInfoGetIfaceStruct             ,+++-- ** interfaceInfoGetMethod+    interfaceInfoGetMethod                  ,+++-- ** interfaceInfoGetNConstants+    interfaceInfoGetNConstants              ,+++-- ** interfaceInfoGetNMethods+    interfaceInfoGetNMethods                ,+++-- ** interfaceInfoGetNPrerequisites+    interfaceInfoGetNPrerequisites          ,+++-- ** interfaceInfoGetNProperties+    interfaceInfoGetNProperties             ,+++-- ** interfaceInfoGetNSignals+    interfaceInfoGetNSignals                ,+++-- ** interfaceInfoGetNVfuncs+    interfaceInfoGetNVfuncs                 ,+++-- ** interfaceInfoGetPrerequisite+    interfaceInfoGetPrerequisite            ,+++-- ** interfaceInfoGetProperty+    interfaceInfoGetProperty                ,+++-- ** interfaceInfoGetSignal+    interfaceInfoGetSignal                  ,+++-- ** interfaceInfoGetVfunc+    interfaceInfoGetVfunc                   ,+++-- ** invokeErrorQuark+    invokeErrorQuark                        ,+++-- ** objectInfoFindMethod+    objectInfoFindMethod                    ,+++-- ** objectInfoFindMethodUsingInterfaces+    objectInfoFindMethodUsingInterfaces     ,+++-- ** objectInfoFindSignal+    objectInfoFindSignal                    ,+++-- ** objectInfoFindVfunc+    objectInfoFindVfunc                     ,+++-- ** objectInfoFindVfuncUsingInterfaces+    objectInfoFindVfuncUsingInterfaces      ,+++-- ** objectInfoGetAbstract+    objectInfoGetAbstract                   ,+++-- ** objectInfoGetClassStruct+    objectInfoGetClassStruct                ,+++-- ** objectInfoGetConstant+    objectInfoGetConstant                   ,+++-- ** objectInfoGetField+    objectInfoGetField                      ,+++-- ** objectInfoGetFundamental+    objectInfoGetFundamental                ,+++-- ** objectInfoGetGetValueFunction+    objectInfoGetGetValueFunction           ,+++-- ** objectInfoGetInterface+    objectInfoGetInterface                  ,+++-- ** objectInfoGetMethod+    objectInfoGetMethod                     ,+++-- ** objectInfoGetNConstants+    objectInfoGetNConstants                 ,+++-- ** objectInfoGetNFields+    objectInfoGetNFields                    ,+++-- ** objectInfoGetNInterfaces+    objectInfoGetNInterfaces                ,+++-- ** objectInfoGetNMethods+    objectInfoGetNMethods                   ,+++-- ** objectInfoGetNProperties+    objectInfoGetNProperties                ,+++-- ** objectInfoGetNSignals+    objectInfoGetNSignals                   ,+++-- ** objectInfoGetNVfuncs+    objectInfoGetNVfuncs                    ,+++-- ** objectInfoGetParent+    objectInfoGetParent                     ,+++-- ** objectInfoGetProperty+    objectInfoGetProperty                   ,+++-- ** objectInfoGetRefFunction+    objectInfoGetRefFunction                ,+++-- ** objectInfoGetSetValueFunction+    objectInfoGetSetValueFunction           ,+++-- ** objectInfoGetSignal+    objectInfoGetSignal                     ,+++-- ** objectInfoGetTypeInit+    objectInfoGetTypeInit                   ,+++-- ** objectInfoGetTypeName+    objectInfoGetTypeName                   ,+++-- ** objectInfoGetUnrefFunction+    objectInfoGetUnrefFunction              ,+++-- ** objectInfoGetVfunc+    objectInfoGetVfunc                      ,+++-- ** propertyInfoGetFlags+    propertyInfoGetFlags                    ,+++-- ** propertyInfoGetOwnershipTransfer+    propertyInfoGetOwnershipTransfer        ,+++-- ** propertyInfoGetType+    propertyInfoGetType                     ,+++-- ** registeredTypeInfoGetGType+    registeredTypeInfoGetGType              ,+++-- ** registeredTypeInfoGetTypeInit+    registeredTypeInfoGetTypeInit           ,+++-- ** registeredTypeInfoGetTypeName+    registeredTypeInfoGetTypeName           ,+++-- ** signalInfoGetClassClosure+    signalInfoGetClassClosure               ,+++-- ** signalInfoGetFlags+    signalInfoGetFlags                      ,+++-- ** signalInfoTrueStopsEmit+    signalInfoTrueStopsEmit                 ,+++-- ** structInfoFindMethod+    structInfoFindMethod                    ,+++-- ** structInfoGetAlignment+    structInfoGetAlignment                  ,+++-- ** structInfoGetField+    structInfoGetField                      ,+++-- ** structInfoGetMethod+    structInfoGetMethod                     ,+++-- ** structInfoGetNFields+    structInfoGetNFields                    ,+++-- ** structInfoGetNMethods+    structInfoGetNMethods                   ,+++-- ** structInfoGetSize+    structInfoGetSize                       ,+++-- ** structInfoIsForeign+    structInfoIsForeign                     ,+++-- ** structInfoIsGtypeStruct+    structInfoIsGtypeStruct                 ,+++-- ** typeInfoGetArrayFixedSize+    typeInfoGetArrayFixedSize               ,+++-- ** typeInfoGetArrayLength+    typeInfoGetArrayLength                  ,+++-- ** typeInfoGetArrayType+    typeInfoGetArrayType                    ,+++-- ** typeInfoGetInterface+    typeInfoGetInterface                    ,+++-- ** typeInfoGetParamType+    typeInfoGetParamType                    ,+++-- ** typeInfoGetTag+    typeInfoGetTag                          ,+++-- ** typeInfoIsPointer+    typeInfoIsPointer                       ,+++-- ** typeInfoIsZeroTerminated+    typeInfoIsZeroTerminated                ,+++-- ** typeTagToString+    typeTagToString                         ,+++-- ** unionInfoFindMethod+    unionInfoFindMethod                     ,+++-- ** unionInfoGetAlignment+    unionInfoGetAlignment                   ,+++-- ** unionInfoGetDiscriminator+    unionInfoGetDiscriminator               ,+++-- ** unionInfoGetDiscriminatorOffset+    unionInfoGetDiscriminatorOffset         ,+++-- ** unionInfoGetDiscriminatorType+    unionInfoGetDiscriminatorType           ,+++-- ** unionInfoGetField+    unionInfoGetField                       ,+++-- ** unionInfoGetMethod+    unionInfoGetMethod                      ,+++-- ** unionInfoGetNFields+    unionInfoGetNFields                     ,+++-- ** unionInfoGetNMethods+    unionInfoGetNMethods                    ,+++-- ** unionInfoGetSize+    unionInfoGetSize                        ,+++-- ** unionInfoIsDiscriminated+    unionInfoIsDiscriminated                ,+++-- ** valueInfoGetValue+    valueInfoGetValue                       ,+++-- ** vfuncInfoGetFlags+    vfuncInfoGetFlags                       ,+++-- ** vfuncInfoGetInvoker+    vfuncInfoGetInvoker                     ,+++-- ** vfuncInfoGetOffset+    vfuncInfoGetOffset                      ,+++-- ** vfuncInfoGetSignal+    vfuncInfoGetSignal                      ,+++++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks+import qualified GI.GObject as GObject++-- function g_vfunc_info_get_signal+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_vfunc_info_get_signal" g_vfunc_info_get_signal :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++vfuncInfoGetSignal ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+vfuncInfoGetSignal info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_vfunc_info_get_signal info'+    checkUnexpectedReturnNULL "g_vfunc_info_get_signal" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_vfunc_info_get_offset+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_vfunc_info_get_offset" g_vfunc_info_get_offset :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++vfuncInfoGetOffset ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+vfuncInfoGetOffset info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_vfunc_info_get_offset info'+    touchManagedPtr info+    return result+++-- function g_vfunc_info_get_invoker+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_vfunc_info_get_invoker" g_vfunc_info_get_invoker :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++vfuncInfoGetInvoker ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+vfuncInfoGetInvoker info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_vfunc_info_get_invoker info'+    checkUnexpectedReturnNULL "g_vfunc_info_get_invoker" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_vfunc_info_get_flags+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "VFuncInfoFlags"+-- throws : False+-- Skip return : False++foreign import ccall "g_vfunc_info_get_flags" g_vfunc_info_get_flags :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++vfuncInfoGetFlags ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m [VFuncInfoFlags]+vfuncInfoGetFlags info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_vfunc_info_get_flags info'+    let result' = wordToGFlags result+    touchManagedPtr info+    return result'+++-- function g_value_info_get_value+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt64+-- throws : False+-- Skip return : False++foreign import ccall "g_value_info_get_value" g_value_info_get_value :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int64+++valueInfoGetValue ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int64+valueInfoGetValue info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_value_info_get_value info'+    touchManagedPtr info+    return result+++-- function g_union_info_is_discriminated+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_is_discriminated" g_union_info_is_discriminated :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++unionInfoIsDiscriminated ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+unionInfoIsDiscriminated info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_is_discriminated info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_union_info_get_size+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt64+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_size" g_union_info_get_size :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Word64+++unionInfoGetSize ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Word64+unionInfoGetSize info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_size info'+    touchManagedPtr info+    return result+++-- function g_union_info_get_n_methods+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_n_methods" g_union_info_get_n_methods :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++unionInfoGetNMethods ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+unionInfoGetNMethods info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_n_methods info'+    touchManagedPtr info+    return result+++-- function g_union_info_get_n_fields+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_n_fields" g_union_info_get_n_fields :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++unionInfoGetNFields ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+unionInfoGetNFields info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_n_fields info'+    touchManagedPtr info+    return result+++-- function g_union_info_get_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_method" g_union_info_get_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++unionInfoGetMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+unionInfoGetMethod info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_method info' n+    checkUnexpectedReturnNULL "g_union_info_get_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_union_info_get_field+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_field" g_union_info_get_field :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++unionInfoGetField ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+unionInfoGetField info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_field info' n+    checkUnexpectedReturnNULL "g_union_info_get_field" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_union_info_get_discriminator_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_discriminator_type" g_union_info_get_discriminator_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++unionInfoGetDiscriminatorType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+unionInfoGetDiscriminatorType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_discriminator_type info'+    checkUnexpectedReturnNULL "g_union_info_get_discriminator_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_union_info_get_discriminator_offset+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_discriminator_offset" g_union_info_get_discriminator_offset :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++unionInfoGetDiscriminatorOffset ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+unionInfoGetDiscriminatorOffset info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_discriminator_offset info'+    touchManagedPtr info+    return result+++-- function g_union_info_get_discriminator+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_discriminator" g_union_info_get_discriminator :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++unionInfoGetDiscriminator ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+unionInfoGetDiscriminator info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_discriminator info' n+    checkUnexpectedReturnNULL "g_union_info_get_discriminator" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_union_info_get_alignment+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt64+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_get_alignment" g_union_info_get_alignment :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Word64+++unionInfoGetAlignment ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Word64+unionInfoGetAlignment info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_union_info_get_alignment info'+    touchManagedPtr info+    return result+++-- function g_union_info_find_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_union_info_find_method" g_union_info_find_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++unionInfoFindMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+unionInfoFindMethod info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_union_info_find_method info' name'+    checkUnexpectedReturnNULL "g_union_info_find_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_type_tag_to_string+-- Args : [Arg {argName = "type", argType = TInterface "GIRepository" "TypeTag", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "type", argType = TInterface "GIRepository" "TypeTag", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_type_tag_to_string" g_type_tag_to_string :: +    CUInt ->                                -- type : TInterface "GIRepository" "TypeTag"+    IO CString+++typeTagToString ::+    (MonadIO m) =>+    TypeTag ->                              -- type+    m T.Text+typeTagToString type_ = liftIO $ do+    let type_' = (fromIntegral . fromEnum) type_+    result <- g_type_tag_to_string type_'+    checkUnexpectedReturnNULL "g_type_tag_to_string" result+    result' <- cstringToText result+    return result'+++-- function g_type_info_is_zero_terminated+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_is_zero_terminated" g_type_info_is_zero_terminated :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++typeInfoIsZeroTerminated ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+typeInfoIsZeroTerminated info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_is_zero_terminated info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_type_info_is_pointer+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_is_pointer" g_type_info_is_pointer :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++typeInfoIsPointer ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+typeInfoIsPointer info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_is_pointer info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_type_info_get_tag+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "TypeTag"+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_get_tag" g_type_info_get_tag :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++typeInfoGetTag ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m TypeTag+typeInfoGetTag info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_get_tag info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_type_info_get_param_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_get_param_type" g_type_info_get_param_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++typeInfoGetParamType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+typeInfoGetParamType info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_get_param_type info' n+    checkUnexpectedReturnNULL "g_type_info_get_param_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_type_info_get_interface+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_get_interface" g_type_info_get_interface :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++typeInfoGetInterface ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+typeInfoGetInterface info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_get_interface info'+    checkUnexpectedReturnNULL "g_type_info_get_interface" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_type_info_get_array_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "ArrayType"+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_get_array_type" g_type_info_get_array_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++typeInfoGetArrayType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m ArrayType+typeInfoGetArrayType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_get_array_type info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_type_info_get_array_length+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_get_array_length" g_type_info_get_array_length :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++typeInfoGetArrayLength ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+typeInfoGetArrayLength info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_get_array_length info'+    touchManagedPtr info+    return result+++-- function g_type_info_get_array_fixed_size+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_type_info_get_array_fixed_size" g_type_info_get_array_fixed_size :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++typeInfoGetArrayFixedSize ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+typeInfoGetArrayFixedSize info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_type_info_get_array_fixed_size info'+    touchManagedPtr info+    return result+++-- function g_struct_info_is_gtype_struct+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_is_gtype_struct" g_struct_info_is_gtype_struct :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++structInfoIsGtypeStruct ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+structInfoIsGtypeStruct info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_is_gtype_struct info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_struct_info_is_foreign+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_is_foreign" g_struct_info_is_foreign :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++structInfoIsForeign ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+structInfoIsForeign info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_is_foreign info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_struct_info_get_size+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt64+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_get_size" g_struct_info_get_size :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Word64+++structInfoGetSize ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Word64+structInfoGetSize info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_get_size info'+    touchManagedPtr info+    return result+++-- function g_struct_info_get_n_methods+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_get_n_methods" g_struct_info_get_n_methods :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++structInfoGetNMethods ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+structInfoGetNMethods info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_get_n_methods info'+    touchManagedPtr info+    return result+++-- function g_struct_info_get_n_fields+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_get_n_fields" g_struct_info_get_n_fields :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++structInfoGetNFields ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+structInfoGetNFields info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_get_n_fields info'+    touchManagedPtr info+    return result+++-- function g_struct_info_get_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_get_method" g_struct_info_get_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++structInfoGetMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+structInfoGetMethod info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_get_method info' n+    checkUnexpectedReturnNULL "g_struct_info_get_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_struct_info_get_field+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_get_field" g_struct_info_get_field :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++structInfoGetField ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+structInfoGetField info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_get_field info' n+    checkUnexpectedReturnNULL "g_struct_info_get_field" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_struct_info_get_alignment+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt64+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_get_alignment" g_struct_info_get_alignment :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Word64+++structInfoGetAlignment ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Word64+structInfoGetAlignment info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_struct_info_get_alignment info'+    touchManagedPtr info+    return result+++-- function g_struct_info_find_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_struct_info_find_method" g_struct_info_find_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++structInfoFindMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+structInfoFindMethod info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_struct_info_find_method info' name'+    checkUnexpectedReturnNULL "g_struct_info_find_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_signal_info_true_stops_emit+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_signal_info_true_stops_emit" g_signal_info_true_stops_emit :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++signalInfoTrueStopsEmit ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+signalInfoTrueStopsEmit info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_signal_info_true_stops_emit info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_signal_info_get_flags+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GObject" "SignalFlags"+-- throws : False+-- Skip return : False++foreign import ccall "g_signal_info_get_flags" g_signal_info_get_flags :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++signalInfoGetFlags ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m [GObject.SignalFlags]+signalInfoGetFlags info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_signal_info_get_flags info'+    let result' = wordToGFlags result+    touchManagedPtr info+    return result'+++-- function g_signal_info_get_class_closure+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_signal_info_get_class_closure" g_signal_info_get_class_closure :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++signalInfoGetClassClosure ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+signalInfoGetClassClosure info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_signal_info_get_class_closure info'+    checkUnexpectedReturnNULL "g_signal_info_get_class_closure" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_registered_type_info_get_type_name+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_registered_type_info_get_type_name" g_registered_type_info_get_type_name :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++registeredTypeInfoGetTypeName ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+registeredTypeInfoGetTypeName info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_registered_type_info_get_type_name info'+    checkUnexpectedReturnNULL "g_registered_type_info_get_type_name" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_registered_type_info_get_type_init+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_registered_type_info_get_type_init" g_registered_type_info_get_type_init :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++registeredTypeInfoGetTypeInit ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+registeredTypeInfoGetTypeInit info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_registered_type_info_get_type_init info'+    checkUnexpectedReturnNULL "g_registered_type_info_get_type_init" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_registered_type_info_get_g_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TGType+-- throws : False+-- Skip return : False++foreign import ccall "g_registered_type_info_get_g_type" g_registered_type_info_get_g_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CGType+++registeredTypeInfoGetGType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m GType+registeredTypeInfoGetGType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_registered_type_info_get_g_type info'+    let result' = GType result+    touchManagedPtr info+    return result'+++-- function g_property_info_get_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_property_info_get_type" g_property_info_get_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++propertyInfoGetType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+propertyInfoGetType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_property_info_get_type info'+    checkUnexpectedReturnNULL "g_property_info_get_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_property_info_get_ownership_transfer+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Transfer"+-- throws : False+-- Skip return : False++foreign import ccall "g_property_info_get_ownership_transfer" g_property_info_get_ownership_transfer :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++propertyInfoGetOwnershipTransfer ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Transfer+propertyInfoGetOwnershipTransfer info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_property_info_get_ownership_transfer info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_property_info_get_flags+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GObject" "ParamFlags"+-- throws : False+-- Skip return : False++foreign import ccall "g_property_info_get_flags" g_property_info_get_flags :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++propertyInfoGetFlags ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m [GObject.ParamFlags]+propertyInfoGetFlags info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_property_info_get_flags info'+    let result' = wordToGFlags result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_vfunc+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_vfunc" g_object_info_get_vfunc :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetVfunc ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetVfunc info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_vfunc info' n+    checkUnexpectedReturnNULL "g_object_info_get_vfunc" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_unref_function+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_unref_function" g_object_info_get_unref_function :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++objectInfoGetUnrefFunction ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+objectInfoGetUnrefFunction info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_unref_function info'+    checkUnexpectedReturnNULL "g_object_info_get_unref_function" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_type_name+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_type_name" g_object_info_get_type_name :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++objectInfoGetTypeName ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+objectInfoGetTypeName info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_type_name info'+    checkUnexpectedReturnNULL "g_object_info_get_type_name" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_type_init+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_type_init" g_object_info_get_type_init :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++objectInfoGetTypeInit ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+objectInfoGetTypeInit info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_type_init info'+    checkUnexpectedReturnNULL "g_object_info_get_type_init" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_signal+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_signal" g_object_info_get_signal :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetSignal ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetSignal info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_signal info' n+    checkUnexpectedReturnNULL "g_object_info_get_signal" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_set_value_function+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_set_value_function" g_object_info_get_set_value_function :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++objectInfoGetSetValueFunction ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+objectInfoGetSetValueFunction info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_set_value_function info'+    checkUnexpectedReturnNULL "g_object_info_get_set_value_function" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_ref_function+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_ref_function" g_object_info_get_ref_function :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++objectInfoGetRefFunction ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+objectInfoGetRefFunction info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_ref_function info'+    checkUnexpectedReturnNULL "g_object_info_get_ref_function" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_property+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_property" g_object_info_get_property :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetProperty ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetProperty info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_property info' n+    checkUnexpectedReturnNULL "g_object_info_get_property" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_parent+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_parent" g_object_info_get_parent :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++objectInfoGetParent ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+objectInfoGetParent info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_parent info'+    checkUnexpectedReturnNULL "g_object_info_get_parent" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_n_vfuncs+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_vfuncs" g_object_info_get_n_vfuncs :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNVfuncs ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNVfuncs info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_vfuncs info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_n_signals+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_signals" g_object_info_get_n_signals :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNSignals ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNSignals info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_signals info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_n_properties+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_properties" g_object_info_get_n_properties :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNProperties ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNProperties info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_properties info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_n_methods+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_methods" g_object_info_get_n_methods :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNMethods ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNMethods info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_methods info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_n_interfaces+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_interfaces" g_object_info_get_n_interfaces :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNInterfaces ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNInterfaces info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_interfaces info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_n_fields+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_fields" g_object_info_get_n_fields :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNFields ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNFields info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_fields info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_n_constants+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_n_constants" g_object_info_get_n_constants :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++objectInfoGetNConstants ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+objectInfoGetNConstants info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_n_constants info'+    touchManagedPtr info+    return result+++-- function g_object_info_get_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_method" g_object_info_get_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetMethod info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_method info' n+    checkUnexpectedReturnNULL "g_object_info_get_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_interface+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_interface" g_object_info_get_interface :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetInterface ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetInterface info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_interface info' n+    checkUnexpectedReturnNULL "g_object_info_get_interface" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_get_value_function+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_get_value_function" g_object_info_get_get_value_function :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++objectInfoGetGetValueFunction ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+objectInfoGetGetValueFunction info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_get_value_function info'+    checkUnexpectedReturnNULL "g_object_info_get_get_value_function" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_fundamental+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_fundamental" g_object_info_get_fundamental :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++objectInfoGetFundamental ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+objectInfoGetFundamental info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_fundamental info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_field+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_field" g_object_info_get_field :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetField ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetField info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_field info' n+    checkUnexpectedReturnNULL "g_object_info_get_field" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_constant+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_constant" g_object_info_get_constant :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++objectInfoGetConstant ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+objectInfoGetConstant info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_constant info' n+    checkUnexpectedReturnNULL "g_object_info_get_constant" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_class_struct+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_class_struct" g_object_info_get_class_struct :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++objectInfoGetClassStruct ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+objectInfoGetClassStruct info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_class_struct info'+    checkUnexpectedReturnNULL "g_object_info_get_class_struct" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_object_info_get_abstract+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_get_abstract" g_object_info_get_abstract :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++objectInfoGetAbstract ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+objectInfoGetAbstract info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_object_info_get_abstract info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_object_info_find_vfunc_using_interfaces+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "implementor", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_find_vfunc_using_interfaces" g_object_info_find_vfunc_using_interfaces :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    Ptr BaseInfo ->                         -- implementor : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++objectInfoFindVfuncUsingInterfaces ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m (BaseInfo,BaseInfo)+objectInfoFindVfuncUsingInterfaces info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    implementor <- callocBoxedBytes 72 :: IO (Ptr BaseInfo)+    result <- g_object_info_find_vfunc_using_interfaces info' name' implementor+    checkUnexpectedReturnNULL "g_object_info_find_vfunc_using_interfaces" result+    result' <- (wrapBoxed BaseInfo) result+    implementor' <- (wrapBoxed BaseInfo) implementor+    touchManagedPtr info+    freeMem name'+    return (result', implementor')+++-- function g_object_info_find_vfunc+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_find_vfunc" g_object_info_find_vfunc :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++objectInfoFindVfunc ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+objectInfoFindVfunc info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_object_info_find_vfunc info' name'+    checkUnexpectedReturnNULL "g_object_info_find_vfunc" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_object_info_find_signal+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_find_signal" g_object_info_find_signal :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++objectInfoFindSignal ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+objectInfoFindSignal info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_object_info_find_signal info' name'+    checkUnexpectedReturnNULL "g_object_info_find_signal" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_object_info_find_method_using_interfaces+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "implementor", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_find_method_using_interfaces" g_object_info_find_method_using_interfaces :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    Ptr BaseInfo ->                         -- implementor : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++objectInfoFindMethodUsingInterfaces ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m (BaseInfo,BaseInfo)+objectInfoFindMethodUsingInterfaces info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    implementor <- callocBoxedBytes 72 :: IO (Ptr BaseInfo)+    result <- g_object_info_find_method_using_interfaces info' name' implementor+    checkUnexpectedReturnNULL "g_object_info_find_method_using_interfaces" result+    result' <- (wrapBoxed BaseInfo) result+    implementor' <- (wrapBoxed BaseInfo) implementor+    touchManagedPtr info+    freeMem name'+    return (result', implementor')+++-- function g_object_info_find_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_object_info_find_method" g_object_info_find_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++objectInfoFindMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+objectInfoFindMethod info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_object_info_find_method info' name'+    checkUnexpectedReturnNULL "g_object_info_find_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_invoke_error_quark+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TUInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_invoke_error_quark" g_invoke_error_quark :: +    IO Word32+++invokeErrorQuark ::+    (MonadIO m) =>+    m Word32+invokeErrorQuark  = liftIO $ do+    result <- g_invoke_error_quark+    return result+++-- function g_interface_info_get_vfunc+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_vfunc" g_interface_info_get_vfunc :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++interfaceInfoGetVfunc ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+interfaceInfoGetVfunc info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_vfunc info' n+    checkUnexpectedReturnNULL "g_interface_info_get_vfunc" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_get_signal+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_signal" g_interface_info_get_signal :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++interfaceInfoGetSignal ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+interfaceInfoGetSignal info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_signal info' n+    checkUnexpectedReturnNULL "g_interface_info_get_signal" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_get_property+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_property" g_interface_info_get_property :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++interfaceInfoGetProperty ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+interfaceInfoGetProperty info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_property info' n+    checkUnexpectedReturnNULL "g_interface_info_get_property" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_get_prerequisite+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_prerequisite" g_interface_info_get_prerequisite :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++interfaceInfoGetPrerequisite ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+interfaceInfoGetPrerequisite info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_prerequisite info' n+    checkUnexpectedReturnNULL "g_interface_info_get_prerequisite" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_get_n_vfuncs+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_n_vfuncs" g_interface_info_get_n_vfuncs :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++interfaceInfoGetNVfuncs ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+interfaceInfoGetNVfuncs info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_n_vfuncs info'+    touchManagedPtr info+    return result+++-- function g_interface_info_get_n_signals+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_n_signals" g_interface_info_get_n_signals :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++interfaceInfoGetNSignals ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+interfaceInfoGetNSignals info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_n_signals info'+    touchManagedPtr info+    return result+++-- function g_interface_info_get_n_properties+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_n_properties" g_interface_info_get_n_properties :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++interfaceInfoGetNProperties ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+interfaceInfoGetNProperties info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_n_properties info'+    touchManagedPtr info+    return result+++-- function g_interface_info_get_n_prerequisites+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_n_prerequisites" g_interface_info_get_n_prerequisites :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++interfaceInfoGetNPrerequisites ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+interfaceInfoGetNPrerequisites info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_n_prerequisites info'+    touchManagedPtr info+    return result+++-- function g_interface_info_get_n_methods+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_n_methods" g_interface_info_get_n_methods :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++interfaceInfoGetNMethods ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+interfaceInfoGetNMethods info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_n_methods info'+    touchManagedPtr info+    return result+++-- function g_interface_info_get_n_constants+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_n_constants" g_interface_info_get_n_constants :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++interfaceInfoGetNConstants ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+interfaceInfoGetNConstants info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_n_constants info'+    touchManagedPtr info+    return result+++-- function g_interface_info_get_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_method" g_interface_info_get_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++interfaceInfoGetMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+interfaceInfoGetMethod info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_method info' n+    checkUnexpectedReturnNULL "g_interface_info_get_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_get_iface_struct+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_iface_struct" g_interface_info_get_iface_struct :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++interfaceInfoGetIfaceStruct ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+interfaceInfoGetIfaceStruct info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_iface_struct info'+    checkUnexpectedReturnNULL "g_interface_info_get_iface_struct" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_get_constant+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_get_constant" g_interface_info_get_constant :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++interfaceInfoGetConstant ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+interfaceInfoGetConstant info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_interface_info_get_constant info' n+    checkUnexpectedReturnNULL "g_interface_info_get_constant" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_interface_info_find_vfunc+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_find_vfunc" g_interface_info_find_vfunc :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++interfaceInfoFindVfunc ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+interfaceInfoFindVfunc info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_interface_info_find_vfunc info' name'+    checkUnexpectedReturnNULL "g_interface_info_find_vfunc" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_interface_info_find_signal+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_find_signal" g_interface_info_find_signal :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++interfaceInfoFindSignal ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+interfaceInfoFindSignal info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_interface_info_find_signal info' name'+    checkUnexpectedReturnNULL "g_interface_info_find_signal" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_interface_info_find_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_interface_info_find_method" g_interface_info_find_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++interfaceInfoFindMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m BaseInfo+interfaceInfoFindMethod info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_interface_info_find_method info' name'+    checkUnexpectedReturnNULL "g_interface_info_find_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_info_type_to_string+-- Args : [Arg {argName = "type", argType = TInterface "GIRepository" "InfoType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "type", argType = TInterface "GIRepository" "InfoType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_info_type_to_string" g_info_type_to_string :: +    CUInt ->                                -- type : TInterface "GIRepository" "InfoType"+    IO CString+++infoTypeToString ::+    (MonadIO m) =>+    InfoType ->                             -- type+    m T.Text+infoTypeToString type_ = liftIO $ do+    let type_' = (fromIntegral . fromEnum) type_+    result <- g_info_type_to_string type_'+    checkUnexpectedReturnNULL "g_info_type_to_string" result+    result' <- cstringToText result+    return result'+++-- function g_info_new+-- Args : [Arg {argName = "type", argType = TInterface "GIRepository" "InfoType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "container", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "typelib", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "type", argType = TInterface "GIRepository" "InfoType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "container", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "typelib", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_info_new" g_info_new :: +    CUInt ->                                -- type : TInterface "GIRepository" "InfoType"+    Ptr BaseInfo ->                         -- container : TInterface "GIRepository" "BaseInfo"+    Ptr Typelib ->                          -- typelib : TInterface "GIRepository" "Typelib"+    Word32 ->                               -- offset : TBasicType TUInt32+    IO (Ptr BaseInfo)+++infoNew ::+    (MonadIO m) =>+    InfoType ->                             -- type+    BaseInfo ->                             -- container+    Typelib ->                              -- typelib+    Word32 ->                               -- offset+    m BaseInfo+infoNew type_ container typelib offset = liftIO $ do+    let type_' = (fromIntegral . fromEnum) type_+    let container' = unsafeManagedPtrGetPtr container+    let typelib' = unsafeManagedPtrGetPtr typelib+    result <- g_info_new type_' container' typelib' offset+    checkUnexpectedReturnNULL "g_info_new" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr container+    touchManagedPtr typelib+    return result'+++-- function g_function_info_get_vfunc+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_function_info_get_vfunc" g_function_info_get_vfunc :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++functionInfoGetVfunc ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+functionInfoGetVfunc info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_function_info_get_vfunc info'+    checkUnexpectedReturnNULL "g_function_info_get_vfunc" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_function_info_get_symbol+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_function_info_get_symbol" g_function_info_get_symbol :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++functionInfoGetSymbol ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+functionInfoGetSymbol info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_function_info_get_symbol info'+    checkUnexpectedReturnNULL "g_function_info_get_symbol" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_function_info_get_property+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_function_info_get_property" g_function_info_get_property :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++functionInfoGetProperty ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+functionInfoGetProperty info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_function_info_get_property info'+    checkUnexpectedReturnNULL "g_function_info_get_property" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_function_info_get_flags+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "FunctionInfoFlags"+-- throws : False+-- Skip return : False++foreign import ccall "g_function_info_get_flags" g_function_info_get_flags :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++functionInfoGetFlags ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m [FunctionInfoFlags]+functionInfoGetFlags info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_function_info_get_flags info'+    let result' = wordToGFlags result+    touchManagedPtr info+    return result'+++-- function g_field_info_get_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_field_info_get_type" g_field_info_get_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++fieldInfoGetType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+fieldInfoGetType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_field_info_get_type info'+    checkUnexpectedReturnNULL "g_field_info_get_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_field_info_get_size+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_field_info_get_size" g_field_info_get_size :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++fieldInfoGetSize ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+fieldInfoGetSize info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_field_info_get_size info'+    touchManagedPtr info+    return result+++-- function g_field_info_get_offset+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_field_info_get_offset" g_field_info_get_offset :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++fieldInfoGetOffset ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+fieldInfoGetOffset info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_field_info_get_offset info'+    touchManagedPtr info+    return result+++-- function g_field_info_get_flags+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "FieldInfoFlags"+-- throws : False+-- Skip return : False++foreign import ccall "g_field_info_get_flags" g_field_info_get_flags :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++fieldInfoGetFlags ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m [FieldInfoFlags]+fieldInfoGetFlags info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_field_info_get_flags info'+    let result' = wordToGFlags result+    touchManagedPtr info+    return result'+++-- function g_enum_info_get_value+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_enum_info_get_value" g_enum_info_get_value :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++enumInfoGetValue ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+enumInfoGetValue info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_enum_info_get_value info' n+    checkUnexpectedReturnNULL "g_enum_info_get_value" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_enum_info_get_storage_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "TypeTag"+-- throws : False+-- Skip return : False++foreign import ccall "g_enum_info_get_storage_type" g_enum_info_get_storage_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++enumInfoGetStorageType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m TypeTag+enumInfoGetStorageType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_enum_info_get_storage_type info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_enum_info_get_n_values+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_enum_info_get_n_values" g_enum_info_get_n_values :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++enumInfoGetNValues ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+enumInfoGetNValues info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_enum_info_get_n_values info'+    touchManagedPtr info+    return result+++-- function g_enum_info_get_n_methods+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_enum_info_get_n_methods" g_enum_info_get_n_methods :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++enumInfoGetNMethods ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+enumInfoGetNMethods info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_enum_info_get_n_methods info'+    touchManagedPtr info+    return result+++-- function g_enum_info_get_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_enum_info_get_method" g_enum_info_get_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++enumInfoGetMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+enumInfoGetMethod info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_enum_info_get_method info' n+    checkUnexpectedReturnNULL "g_enum_info_get_method" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_enum_info_get_error_domain+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_enum_info_get_error_domain" g_enum_info_get_error_domain :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CString+++enumInfoGetErrorDomain ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m T.Text+enumInfoGetErrorDomain info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_enum_info_get_error_domain info'+    checkUnexpectedReturnNULL "g_enum_info_get_error_domain" result+    result' <- cstringToText result+    touchManagedPtr info+    return result'+++-- function g_constant_info_get_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_constant_info_get_type" g_constant_info_get_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++constantInfoGetType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+constantInfoGetType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_constant_info_get_type info'+    checkUnexpectedReturnNULL "g_constant_info_get_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_skip_return+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_skip_return" g_callable_info_skip_return :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++callableInfoSkipReturn ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+callableInfoSkipReturn info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_skip_return info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_may_return_null+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_may_return_null" g_callable_info_may_return_null :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++callableInfoMayReturnNull ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+callableInfoMayReturnNull info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_may_return_null info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_load_return_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_load_return_type" g_callable_info_load_return_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Ptr BaseInfo ->                         -- type : TInterface "GIRepository" "BaseInfo"+    IO ()+++callableInfoLoadReturnType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m (BaseInfo)+callableInfoLoadReturnType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    type_ <- callocBoxedBytes 72 :: IO (Ptr BaseInfo)+    g_callable_info_load_return_type info' type_+    type_' <- (wrapBoxed BaseInfo) type_+    touchManagedPtr info+    return type_'+++-- function g_callable_info_load_arg+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "arg", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_load_arg" g_callable_info_load_arg :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    Ptr BaseInfo ->                         -- arg : TInterface "GIRepository" "BaseInfo"+    IO ()+++callableInfoLoadArg ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m (BaseInfo)+callableInfoLoadArg info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    arg <- callocBoxedBytes 72 :: IO (Ptr BaseInfo)+    g_callable_info_load_arg info' n arg+    arg' <- (wrapBoxed BaseInfo) arg+    touchManagedPtr info+    return arg'+++-- function g_callable_info_iterate_return_attributes+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iterator", argType = TInterface "GIRepository" "AttributeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iterator", argType = TInterface "GIRepository" "AttributeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_iterate_return_attributes" g_callable_info_iterate_return_attributes :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Ptr AttributeIter ->                    -- iterator : TInterface "GIRepository" "AttributeIter"+    Ptr CString ->                          -- name : TBasicType TUTF8+    Ptr CString ->                          -- value : TBasicType TUTF8+    IO CInt+++callableInfoIterateReturnAttributes ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    AttributeIter ->                        -- iterator+    m (Bool,T.Text,T.Text)+callableInfoIterateReturnAttributes info iterator = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    let iterator' = unsafeManagedPtrGetPtr iterator+    name <- allocMem :: IO (Ptr CString)+    value <- allocMem :: IO (Ptr CString)+    result <- g_callable_info_iterate_return_attributes info' iterator' name value+    let result' = (/= 0) result+    name' <- peek name+    name'' <- cstringToText name'+    value' <- peek value+    value'' <- cstringToText value'+    touchManagedPtr info+    touchManagedPtr iterator+    freeMem name+    freeMem value+    return (result', name'', value'')+++-- function g_callable_info_is_method+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_is_method" g_callable_info_is_method :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++callableInfoIsMethod ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+callableInfoIsMethod info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_is_method info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_invoke+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "function", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "in_args", argType = TInterface "GIRepository" "Argument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_in_args", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "out_args", argType = TInterface "GIRepository" "Argument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_out_args", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "return_value", argType = TInterface "GIRepository" "Argument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "is_method", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "throws", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "function", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "in_args", argType = TInterface "GIRepository" "Argument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_in_args", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "out_args", argType = TInterface "GIRepository" "Argument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_out_args", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "return_value", argType = TInterface "GIRepository" "Argument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "is_method", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "throws", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : True+-- Skip return : False++foreign import ccall "g_callable_info_invoke" g_callable_info_invoke :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Ptr () ->                               -- function : TBasicType TVoid+    Ptr Argument ->                         -- in_args : TInterface "GIRepository" "Argument"+    Int32 ->                                -- n_in_args : TBasicType TInt32+    Ptr Argument ->                         -- out_args : TInterface "GIRepository" "Argument"+    Int32 ->                                -- n_out_args : TBasicType TInt32+    Ptr Argument ->                         -- return_value : TInterface "GIRepository" "Argument"+    CInt ->                                 -- is_method : TBasicType TBoolean+    CInt ->                                 -- throws : TBasicType TBoolean+    Ptr (Ptr GError) ->                     -- error+    IO CInt+++callableInfoInvoke ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Ptr () ->                               -- function+    Argument ->                             -- in_args+    Int32 ->                                -- n_in_args+    Argument ->                             -- out_args+    Int32 ->                                -- n_out_args+    Argument ->                             -- return_value+    Bool ->                                 -- is_method+    Bool ->                                 -- throws+    m ()+callableInfoInvoke info function in_args n_in_args out_args n_out_args return_value is_method throws = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    let in_args' = unsafeManagedPtrGetPtr in_args+    let out_args' = unsafeManagedPtrGetPtr out_args+    let return_value' = unsafeManagedPtrGetPtr return_value+    let is_method' = (fromIntegral . fromEnum) is_method+    let throws' = (fromIntegral . fromEnum) throws+    onException (do+        _ <- propagateGError $ g_callable_info_invoke info' function in_args' n_in_args out_args' n_out_args return_value' is_method' throws'+        touchManagedPtr info+        touchManagedPtr in_args+        touchManagedPtr out_args+        touchManagedPtr return_value+        return ()+     ) (do+        return ()+     )+++-- function g_callable_info_get_return_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_get_return_type" g_callable_info_get_return_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++callableInfoGetReturnType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+callableInfoGetReturnType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_get_return_type info'+    checkUnexpectedReturnNULL "g_callable_info_get_return_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_get_return_attribute+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_get_return_attribute" g_callable_info_get_return_attribute :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO CString+++callableInfoGetReturnAttribute ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    T.Text ->                               -- name+    m T.Text+callableInfoGetReturnAttribute info name = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    name' <- textToCString name+    result <- g_callable_info_get_return_attribute info' name'+    checkUnexpectedReturnNULL "g_callable_info_get_return_attribute" result+    result' <- cstringToText result+    touchManagedPtr info+    freeMem name'+    return result'+++-- function g_callable_info_get_n_args+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_get_n_args" g_callable_info_get_n_args :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++callableInfoGetNArgs ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+callableInfoGetNArgs info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_get_n_args info'+    touchManagedPtr info+    return result+++-- function g_callable_info_get_instance_ownership_transfer+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Transfer"+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_get_instance_ownership_transfer" g_callable_info_get_instance_ownership_transfer :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++callableInfoGetInstanceOwnershipTransfer ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Transfer+callableInfoGetInstanceOwnershipTransfer info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_get_instance_ownership_transfer info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_get_caller_owns+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Transfer"+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_get_caller_owns" g_callable_info_get_caller_owns :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++callableInfoGetCallerOwns ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Transfer+callableInfoGetCallerOwns info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_get_caller_owns info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_get_arg+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_get_arg" g_callable_info_get_arg :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Int32 ->                                -- n : TBasicType TInt32+    IO (Ptr BaseInfo)+++callableInfoGetArg ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    Int32 ->                                -- n+    m BaseInfo+callableInfoGetArg info n = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_get_arg info' n+    checkUnexpectedReturnNULL "g_callable_info_get_arg" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_callable_info_can_throw_gerror+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_callable_info_can_throw_gerror" g_callable_info_can_throw_gerror :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++callableInfoCanThrowGerror ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+callableInfoCanThrowGerror info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_callable_info_can_throw_gerror info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_may_be_null+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_may_be_null" g_arg_info_may_be_null :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++argInfoMayBeNull ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+argInfoMayBeNull info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_may_be_null info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_load_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_load_type" g_arg_info_load_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    Ptr BaseInfo ->                         -- type : TInterface "GIRepository" "BaseInfo"+    IO ()+++argInfoLoadType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m (BaseInfo)+argInfoLoadType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    type_ <- callocBoxedBytes 72 :: IO (Ptr BaseInfo)+    g_arg_info_load_type info' type_+    type_' <- (wrapBoxed BaseInfo) type_+    touchManagedPtr info+    return type_'+++-- function g_arg_info_is_skip+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_is_skip" g_arg_info_is_skip :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++argInfoIsSkip ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+argInfoIsSkip info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_is_skip info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_is_return_value+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_is_return_value" g_arg_info_is_return_value :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++argInfoIsReturnValue ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+argInfoIsReturnValue info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_is_return_value info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_is_optional+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_is_optional" g_arg_info_is_optional :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++argInfoIsOptional ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+argInfoIsOptional info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_is_optional info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_is_caller_allocates+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_is_caller_allocates" g_arg_info_is_caller_allocates :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CInt+++argInfoIsCallerAllocates ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Bool+argInfoIsCallerAllocates info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_is_caller_allocates info'+    let result' = (/= 0) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_get_type+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_get_type" g_arg_info_get_type :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++argInfoGetType ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m BaseInfo+argInfoGetType info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_get_type info'+    checkUnexpectedReturnNULL "g_arg_info_get_type" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_get_scope+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "ScopeType"+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_get_scope" g_arg_info_get_scope :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++argInfoGetScope ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m ScopeType+argInfoGetScope info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_get_scope info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_get_ownership_transfer+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Transfer"+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_get_ownership_transfer" g_arg_info_get_ownership_transfer :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++argInfoGetOwnershipTransfer ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Transfer+argInfoGetOwnershipTransfer info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_get_ownership_transfer info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_get_direction+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Direction"+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_get_direction" g_arg_info_get_direction :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++argInfoGetDirection ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Direction+argInfoGetDirection info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_get_direction info'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr info+    return result'+++-- function g_arg_info_get_destroy+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_get_destroy" g_arg_info_get_destroy :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++argInfoGetDestroy ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+argInfoGetDestroy info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_get_destroy info'+    touchManagedPtr info+    return result+++-- function g_arg_info_get_closure+-- Args : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "info", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_arg_info_get_closure" g_arg_info_get_closure :: +    Ptr BaseInfo ->                         -- info : TInterface "GIRepository" "BaseInfo"+    IO Int32+++argInfoGetClosure ::+    (MonadIO m) =>+    BaseInfo ->                             -- info+    m Int32+argInfoGetClosure info = liftIO $ do+    let info' = unsafeManagedPtrGetPtr info+    result <- g_arg_info_get_closure info'+    touchManagedPtr info+    return result+++
+ GI/GIRepository/Objects.hs view
@@ -0,0 +1,26 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Objects+    (     module GI.GIRepository.Objects.Repository,+++    ) where++import GI.GIRepository.Objects.Repository++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++
+ GI/GIRepository/Objects/Repository.hs view
@@ -0,0 +1,867 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Objects.Repository+    ( ++-- * Exported types+    Repository(..)                          ,+    RepositoryK                             ,+    toRepository                            ,+    noRepository                            ,+++ -- * Methods+-- ** repositoryDump+    repositoryDump                          ,+++-- ** repositoryEnumerateVersions+    repositoryEnumerateVersions             ,+++-- ** repositoryErrorQuark+    repositoryErrorQuark                    ,+++-- ** repositoryFindByErrorDomain+    repositoryFindByErrorDomain             ,+++-- ** repositoryFindByGtype+    repositoryFindByGtype                   ,+++-- ** repositoryFindByName+    repositoryFindByName                    ,+++-- ** repositoryGetCPrefix+    repositoryGetCPrefix                    ,+++-- ** repositoryGetDefault+    repositoryGetDefault                    ,+++-- ** repositoryGetDependencies+    repositoryGetDependencies               ,+++-- ** repositoryGetImmediateDependencies+    repositoryGetImmediateDependencies      ,+++-- ** repositoryGetInfo+    repositoryGetInfo                       ,+++-- ** repositoryGetLoadedNamespaces+    repositoryGetLoadedNamespaces           ,+++-- ** repositoryGetNInfos+    repositoryGetNInfos                     ,+++-- ** repositoryGetSearchPath+    repositoryGetSearchPath                 ,+++-- ** repositoryGetSharedLibrary+    repositoryGetSharedLibrary              ,+++-- ** repositoryGetTypelibPath+    repositoryGetTypelibPath                ,+++-- ** repositoryGetVersion+    repositoryGetVersion                    ,+++-- ** repositoryIsRegistered+    repositoryIsRegistered                  ,+++-- ** repositoryLoadTypelib+    repositoryLoadTypelib                   ,+++-- ** repositoryPrependLibraryPath+    repositoryPrependLibraryPath            ,+++-- ** repositoryPrependSearchPath+    repositoryPrependSearchPath             ,+++-- ** repositoryRequire+    repositoryRequire                       ,+++-- ** repositoryRequirePrivate+    repositoryRequirePrivate                ,+++++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks+import qualified GI.GObject as GObject++newtype Repository = Repository (ForeignPtr Repository)+foreign import ccall "g_irepository_get_type"+    c_g_irepository_get_type :: IO GType++type instance ParentTypes Repository = RepositoryParentTypes+type RepositoryParentTypes = '[GObject.Object]++instance GObject Repository where+    gobjectIsInitiallyUnowned _ = False+    gobjectType _ = c_g_irepository_get_type+    ++class GObject o => RepositoryK o+instance (GObject o, IsDescendantOf Repository o) => RepositoryK o++toRepository :: RepositoryK o => o -> IO Repository+toRepository = unsafeCastTo Repository++noRepository :: Maybe Repository+noRepository = Nothing++type instance AttributeList Repository = RepositoryAttributeList+type RepositoryAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Repository = RepositorySignalList+type RepositorySignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- method Repository::enumerate_versions+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGList (TBasicType TUTF8)+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_enumerate_versions" g_irepository_enumerate_versions :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO (Ptr (GList CString))+++repositoryEnumerateVersions ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m [T.Text]+repositoryEnumerateVersions _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_enumerate_versions _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_enumerate_versions" result+    result' <- unpackGList result+    result'' <- mapM cstringToText result'+    mapGList freeMem result+    g_list_free result+    touchManagedPtr _obj+    freeMem namespace_'+    return result''++-- method Repository::find_by_error_domain+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "domain", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "domain", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_find_by_error_domain" g_irepository_find_by_error_domain :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    Word32 ->                               -- domain : TBasicType TUInt32+    IO (Ptr BaseInfo)+++repositoryFindByErrorDomain ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    Word32 ->                               -- domain+    m BaseInfo+repositoryFindByErrorDomain _obj domain = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    result <- g_irepository_find_by_error_domain _obj' domain+    checkUnexpectedReturnNULL "g_irepository_find_by_error_domain" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr _obj+    return result'++-- method Repository::find_by_gtype+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "gtype", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "gtype", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_find_by_gtype" g_irepository_find_by_gtype :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CGType ->                               -- gtype : TBasicType TGType+    IO (Ptr BaseInfo)+++repositoryFindByGtype ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    GType ->                                -- gtype+    m BaseInfo+repositoryFindByGtype _obj gtype = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    let gtype' = gtypeToCGType gtype+    result <- g_irepository_find_by_gtype _obj' gtype'+    checkUnexpectedReturnNULL "g_irepository_find_by_gtype" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr _obj+    return result'++-- method Repository::find_by_name+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_find_by_name" g_irepository_find_by_name :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    CString ->                              -- name : TBasicType TUTF8+    IO (Ptr BaseInfo)+++repositoryFindByName ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    T.Text ->                               -- name+    m BaseInfo+repositoryFindByName _obj namespace_ name = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    name' <- textToCString name+    result <- g_irepository_find_by_name _obj' namespace_' name'+    checkUnexpectedReturnNULL "g_irepository_find_by_name" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr _obj+    freeMem namespace_'+    freeMem name'+    return result'++-- method Repository::get_c_prefix+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_c_prefix" g_irepository_get_c_prefix :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO CString+++repositoryGetCPrefix ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m T.Text+repositoryGetCPrefix _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_c_prefix _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_get_c_prefix" result+    result' <- cstringToText result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::get_dependencies+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_dependencies" g_irepository_get_dependencies :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO (Ptr CString)+++repositoryGetDependencies ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m [T.Text]+repositoryGetDependencies _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_dependencies _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_get_dependencies" result+    result' <- unpackZeroTerminatedUTF8CArray result+    mapZeroTerminatedCArray freeMem result+    freeMem result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::get_immediate_dependencies+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_immediate_dependencies" g_irepository_get_immediate_dependencies :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO (Ptr CString)+++repositoryGetImmediateDependencies ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m [T.Text]+repositoryGetImmediateDependencies _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_immediate_dependencies _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_get_immediate_dependencies" result+    result' <- unpackZeroTerminatedUTF8CArray result+    mapZeroTerminatedCArray freeMem result+    freeMem result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::get_info+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_info" g_irepository_get_info :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    Int32 ->                                -- index : TBasicType TInt32+    IO (Ptr BaseInfo)+++repositoryGetInfo ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    Int32 ->                                -- index+    m BaseInfo+repositoryGetInfo _obj namespace_ index = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_info _obj' namespace_' index+    checkUnexpectedReturnNULL "g_irepository_get_info" result+    result' <- (wrapBoxed BaseInfo) result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::get_loaded_namespaces+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_loaded_namespaces" g_irepository_get_loaded_namespaces :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    IO (Ptr CString)+++repositoryGetLoadedNamespaces ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    m [T.Text]+repositoryGetLoadedNamespaces _obj = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    result <- g_irepository_get_loaded_namespaces _obj'+    checkUnexpectedReturnNULL "g_irepository_get_loaded_namespaces" result+    result' <- unpackZeroTerminatedUTF8CArray result+    mapZeroTerminatedCArray freeMem result+    freeMem result+    touchManagedPtr _obj+    return result'++-- method Repository::get_n_infos+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_n_infos" g_irepository_get_n_infos :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO Int32+++repositoryGetNInfos ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m Int32+repositoryGetNInfos _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_n_infos _obj' namespace_'+    touchManagedPtr _obj+    freeMem namespace_'+    return result++-- method Repository::get_shared_library+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_shared_library" g_irepository_get_shared_library :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO CString+++repositoryGetSharedLibrary ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m T.Text+repositoryGetSharedLibrary _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_shared_library _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_get_shared_library" result+    result' <- cstringToText result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::get_typelib_path+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_typelib_path" g_irepository_get_typelib_path :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO CString+++repositoryGetTypelibPath ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m T.Text+repositoryGetTypelibPath _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_typelib_path _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_get_typelib_path" result+    result' <- cstringToText result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::get_version+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_version" g_irepository_get_version :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    IO CString+++repositoryGetVersion ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    m T.Text+repositoryGetVersion _obj namespace_ = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    result <- g_irepository_get_version _obj' namespace_'+    checkUnexpectedReturnNULL "g_irepository_get_version" result+    result' <- cstringToText result+    touchManagedPtr _obj+    freeMem namespace_'+    return result'++-- method Repository::is_registered+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_is_registered" g_irepository_is_registered :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    CString ->                              -- version : TBasicType TUTF8+    IO CInt+++repositoryIsRegistered ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    Maybe (T.Text) ->                       -- version+    m Bool+repositoryIsRegistered _obj namespace_ version = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    maybeVersion <- case version of+        Nothing -> return nullPtr+        Just jVersion -> do+            jVersion' <- textToCString jVersion+            return jVersion'+    result <- g_irepository_is_registered _obj' namespace_' maybeVersion+    let result' = (/= 0) result+    touchManagedPtr _obj+    freeMem namespace_'+    freeMem maybeVersion+    return result'++-- method Repository::load_typelib+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "typelib", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "GIRepository" "RepositoryLoadFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "typelib", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "GIRepository" "RepositoryLoadFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : True+-- Skip return : False++foreign import ccall "g_irepository_load_typelib" g_irepository_load_typelib :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    Ptr Typelib ->                          -- typelib : TInterface "GIRepository" "Typelib"+    CUInt ->                                -- flags : TInterface "GIRepository" "RepositoryLoadFlags"+    Ptr (Ptr GError) ->                     -- error+    IO CString+++repositoryLoadTypelib ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    Typelib ->                              -- typelib+    [RepositoryLoadFlags] ->                -- flags+    m T.Text+repositoryLoadTypelib _obj typelib flags = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    let typelib' = unsafeManagedPtrGetPtr typelib+    let flags' = gflagsToWord flags+    onException (do+        result <- propagateGError $ g_irepository_load_typelib _obj' typelib' flags'+        checkUnexpectedReturnNULL "g_irepository_load_typelib" result+        result' <- cstringToText result+        touchManagedPtr _obj+        touchManagedPtr typelib+        return result'+     ) (do+        return ()+     )++-- method Repository::require+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "GIRepository" "RepositoryLoadFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "GIRepository" "RepositoryLoadFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Typelib"+-- throws : True+-- Skip return : False++foreign import ccall "g_irepository_require" g_irepository_require :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- namespace_ : TBasicType TUTF8+    CString ->                              -- version : TBasicType TUTF8+    CUInt ->                                -- flags : TInterface "GIRepository" "RepositoryLoadFlags"+    Ptr (Ptr GError) ->                     -- error+    IO (Ptr Typelib)+++repositoryRequire ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- namespace_+    Maybe (T.Text) ->                       -- version+    [RepositoryLoadFlags] ->                -- flags+    m Typelib+repositoryRequire _obj namespace_ version flags = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    namespace_' <- textToCString namespace_+    maybeVersion <- case version of+        Nothing -> return nullPtr+        Just jVersion -> do+            jVersion' <- textToCString jVersion+            return jVersion'+    let flags' = gflagsToWord flags+    onException (do+        result <- propagateGError $ g_irepository_require _obj' namespace_' maybeVersion flags'+        checkUnexpectedReturnNULL "g_irepository_require" result+        -- XXX Wrapping a foreign struct/union with no known destructor, leak?+        result' <- (\x -> Typelib <$> newForeignPtr_ x) result+        touchManagedPtr _obj+        freeMem namespace_'+        freeMem maybeVersion+        return result'+     ) (do+        freeMem namespace_'+        freeMem maybeVersion+     )++-- method Repository::require_private+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "typelib_dir", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "GIRepository" "RepositoryLoadFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Repository", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "typelib_dir", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespace_", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "flags", argType = TInterface "GIRepository" "RepositoryLoadFlags", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Typelib"+-- throws : True+-- Skip return : False++foreign import ccall "g_irepository_require_private" g_irepository_require_private :: +    Ptr Repository ->                       -- _obj : TInterface "GIRepository" "Repository"+    CString ->                              -- typelib_dir : TBasicType TUTF8+    CString ->                              -- namespace_ : TBasicType TUTF8+    CString ->                              -- version : TBasicType TUTF8+    CUInt ->                                -- flags : TInterface "GIRepository" "RepositoryLoadFlags"+    Ptr (Ptr GError) ->                     -- error+    IO (Ptr Typelib)+++repositoryRequirePrivate ::+    (MonadIO m, RepositoryK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- typelib_dir+    T.Text ->                               -- namespace_+    Maybe (T.Text) ->                       -- version+    [RepositoryLoadFlags] ->                -- flags+    m Typelib+repositoryRequirePrivate _obj typelib_dir namespace_ version flags = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    typelib_dir' <- textToCString typelib_dir+    namespace_' <- textToCString namespace_+    maybeVersion <- case version of+        Nothing -> return nullPtr+        Just jVersion -> do+            jVersion' <- textToCString jVersion+            return jVersion'+    let flags' = gflagsToWord flags+    onException (do+        result <- propagateGError $ g_irepository_require_private _obj' typelib_dir' namespace_' maybeVersion flags'+        checkUnexpectedReturnNULL "g_irepository_require_private" result+        -- XXX Wrapping a foreign struct/union with no known destructor, leak?+        result' <- (\x -> Typelib <$> newForeignPtr_ x) result+        touchManagedPtr _obj+        freeMem typelib_dir'+        freeMem namespace_'+        freeMem maybeVersion+        return result'+     ) (do+        freeMem typelib_dir'+        freeMem namespace_'+        freeMem maybeVersion+     )++-- method Repository::dump+-- method type : MemberFunction+-- Args : [Arg {argName = "arg", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "arg", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : True+-- Skip return : False++foreign import ccall "g_irepository_dump" g_irepository_dump :: +    CString ->                              -- arg : TBasicType TUTF8+    Ptr (Ptr GError) ->                     -- error+    IO CInt+++repositoryDump ::+    (MonadIO m) =>+    T.Text ->                               -- arg+    m ()+repositoryDump arg = liftIO $ do+    arg' <- textToCString arg+    onException (do+        _ <- propagateGError $ g_irepository_dump arg'+        freeMem arg'+        return ()+     ) (do+        freeMem arg'+     )++-- method Repository::error_quark+-- method type : MemberFunction+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TUInt32+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_error_quark" g_irepository_error_quark :: +    IO Word32+++repositoryErrorQuark ::+    (MonadIO m) =>+    m Word32+repositoryErrorQuark  = liftIO $ do+    result <- g_irepository_error_quark+    return result++-- method Repository::get_default+-- method type : MemberFunction+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "GIRepository" "Repository"+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_default" g_irepository_get_default :: +    IO (Ptr Repository)+++repositoryGetDefault ::+    (MonadIO m) =>+    m Repository+repositoryGetDefault  = liftIO $ do+    result <- g_irepository_get_default+    checkUnexpectedReturnNULL "g_irepository_get_default" result+    result' <- (newObject Repository) result+    return result'++-- method Repository::get_search_path+-- method type : MemberFunction+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TGSList (TBasicType TFileName)+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_get_search_path" g_irepository_get_search_path :: +    IO (Ptr (GSList CString))+++repositoryGetSearchPath ::+    (MonadIO m) =>+    m [[Char]]+repositoryGetSearchPath  = liftIO $ do+    result <- g_irepository_get_search_path+    checkUnexpectedReturnNULL "g_irepository_get_search_path" result+    result' <- unpackGSList result+    result'' <- mapM cstringToString result'+    return result''++-- method Repository::prepend_library_path+-- method type : MemberFunction+-- Args : [Arg {argName = "directory", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "directory", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_prepend_library_path" g_irepository_prepend_library_path :: +    CString ->                              -- directory : TBasicType TUTF8+    IO ()+++repositoryPrependLibraryPath ::+    (MonadIO m) =>+    T.Text ->                               -- directory+    m ()+repositoryPrependLibraryPath directory = liftIO $ do+    directory' <- textToCString directory+    g_irepository_prepend_library_path directory'+    freeMem directory'+    return ()++-- method Repository::prepend_search_path+-- method type : MemberFunction+-- Args : [Arg {argName = "directory", argType = TBasicType TFileName, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "directory", argType = TBasicType TFileName, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "g_irepository_prepend_search_path" g_irepository_prepend_search_path :: +    CString ->                              -- directory : TBasicType TFileName+    IO ()+++repositoryPrependSearchPath ::+    (MonadIO m) =>+    [Char] ->                               -- directory+    m ()+repositoryPrependSearchPath directory = liftIO $ do+    directory' <- stringToCString directory+    g_irepository_prepend_search_path directory'+    freeMem directory'+    return ()++
+ GI/GIRepository/Objects/Repository.hs-boot view
@@ -0,0 +1,13 @@+module GI.GIRepository.Objects.Repository where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Repository = Repository (ForeignPtr Repository)+instance GObject Repository where+class GObject o => RepositoryK o+instance (GObject o, IsDescendantOf Repository o) => RepositoryK o
+ GI/GIRepository/Structs.hs view
@@ -0,0 +1,32 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Structs+    (     module GI.GIRepository.Structs.AttributeIter,+    module GI.GIRepository.Structs.BaseInfo ,+    module GI.GIRepository.Structs.Typelib  ,+    module GI.GIRepository.Structs.UnresolvedInfo,+++    ) where++import GI.GIRepository.Structs.AttributeIter+import GI.GIRepository.Structs.BaseInfo+import GI.GIRepository.Structs.Typelib+import GI.GIRepository.Structs.UnresolvedInfo++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++
+ GI/GIRepository/Structs/AttributeIter.hs view
@@ -0,0 +1,35 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++An opaque structure used to iterate over attributes+in a #GIBaseInfo struct.+-}++module GI.GIRepository.Structs.AttributeIter+    ( ++-- * Exported types+    AttributeIter(..)                       ,+    noAttributeIter                         ,+++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++newtype AttributeIter = AttributeIter (ForeignPtr AttributeIter)+noAttributeIter :: Maybe AttributeIter+noAttributeIter = Nothing++
+ GI/GIRepository/Structs/AttributeIter.hs-boot view
@@ -0,0 +1,10 @@+module GI.GIRepository.Structs.AttributeIter where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttributeIter = AttributeIter (ForeignPtr AttributeIter)
+ GI/GIRepository/Structs/BaseInfo.hs view
@@ -0,0 +1,368 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++GIBaseInfo is the common base struct of all other *Info structs+accessible through the #GIRepository API.+All other structs can be casted to a #GIBaseInfo, for instance:+<example>+<title>Casting a #GIFunctionInfo to #GIBaseInfo</title>+<programlisting>+   GIFunctionInfo *function_info = ...;+   GIBaseInfo *info = (GIBaseInfo*)function_info;+</programlisting>+</example>+Most #GIRepository APIs returning a #GIBaseInfo is actually creating a new struct, in other+words, g_base_info_unref() has to be called when done accessing the data.+GIBaseInfos are normally accessed by calling either+g_irepository_find_by_name(), g_irepository_find_by_gtype() or g_irepository_get_info().++<example>+<title>Getting the Button of the Gtk typelib</title>+<programlisting>+   GIBaseInfo *button_info = g_irepository_find_by_name(NULL, "Gtk", "Button");+   ... use button_info ...+   g_base_info_unref(button_info);+</programlisting>+</example>++<refsect1 id="gi-gibaseinfo.struct-hierarchy" role="struct_hierarchy">+<title role="struct_hierarchy.title">Struct hierarchy</title>+<synopsis>+  GIBaseInfo+   +----<link linkend="gi-GIArgInfo">GIArgInfo</link>+   +----<link linkend="gi-GICallableInfo">GICallableInfo</link>+   +----<link linkend="gi-GIConstantInfo">GIConstantInfo</link>+   +----<link linkend="gi-GIFieldInfo">GIFieldInfo</link>+   +----<link linkend="gi-GIPropertyInfo">GIPropertyInfo</link>+   +----<link linkend="gi-GIRegisteredTypeInfo">GIRegisteredTypeInfo</link>+   +----<link linkend="gi-GITypeInfo">GITypeInfo</link>+</synopsis>+</refsect1>+-}++module GI.GIRepository.Structs.BaseInfo+    ( ++-- * Exported types+    BaseInfo(..)                            ,+    noBaseInfo                              ,+++ -- * Methods+-- ** baseInfoEqual+    baseInfoEqual                           ,+++-- ** baseInfoGetAttribute+    baseInfoGetAttribute                    ,+++-- ** baseInfoGetContainer+    baseInfoGetContainer                    ,+++-- ** baseInfoGetName+    baseInfoGetName                         ,+++-- ** baseInfoGetNamespace+    baseInfoGetNamespace                    ,+++-- ** baseInfoGetType+    baseInfoGetType                         ,+++-- ** baseInfoGetTypelib+    baseInfoGetTypelib                      ,+++-- ** baseInfoIsDeprecated+    baseInfoIsDeprecated                    ,+++-- ** baseInfoIterateAttributes+    baseInfoIterateAttributes               ,+++++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++newtype BaseInfo = BaseInfo (ForeignPtr BaseInfo)+foreign import ccall "g_base_info_gtype_get_type" c_g_base_info_gtype_get_type :: +    IO GType++instance BoxedObject BaseInfo where+    boxedType _ = c_g_base_info_gtype_get_type++noBaseInfo :: Maybe BaseInfo+noBaseInfo = Nothing++-- method BaseInfo::equal+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "info2", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "info2", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_equal" g_base_info_equal :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    Ptr BaseInfo ->                         -- info2 : TInterface "GIRepository" "BaseInfo"+    IO CInt+++baseInfoEqual ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    BaseInfo ->                             -- info2+    m Bool+baseInfoEqual _obj info2 = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    let info2' = unsafeManagedPtrGetPtr info2+    result <- g_base_info_equal _obj' info2'+    let result' = (/= 0) result+    touchManagedPtr _obj+    touchManagedPtr info2+    return result'++-- method BaseInfo::get_attribute+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_get_attribute" g_base_info_get_attribute :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    CString ->                              -- name : TBasicType TUTF8+    IO CString+++baseInfoGetAttribute ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    T.Text ->                               -- name+    m T.Text+baseInfoGetAttribute _obj name = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    name' <- textToCString name+    result <- g_base_info_get_attribute _obj' name'+    checkUnexpectedReturnNULL "g_base_info_get_attribute" result+    result' <- cstringToText result+    touchManagedPtr _obj+    freeMem name'+    return result'++-- method BaseInfo::get_container+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "BaseInfo"+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_get_container" g_base_info_get_container :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    IO (Ptr BaseInfo)+++baseInfoGetContainer ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    m BaseInfo+baseInfoGetContainer _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_base_info_get_container _obj'+    checkUnexpectedReturnNULL "g_base_info_get_container" result+    result' <- (newBoxed BaseInfo) result+    touchManagedPtr _obj+    return result'++-- method BaseInfo::get_name+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_get_name" g_base_info_get_name :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    IO CString+++baseInfoGetName ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    m T.Text+baseInfoGetName _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_base_info_get_name _obj'+    checkUnexpectedReturnNULL "g_base_info_get_name" result+    result' <- cstringToText result+    touchManagedPtr _obj+    return result'++-- method BaseInfo::get_namespace+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_get_namespace" g_base_info_get_namespace :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    IO CString+++baseInfoGetNamespace ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    m T.Text+baseInfoGetNamespace _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_base_info_get_namespace _obj'+    checkUnexpectedReturnNULL "g_base_info_get_namespace" result+    result' <- cstringToText result+    touchManagedPtr _obj+    return result'++-- method BaseInfo::get_type+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "InfoType"+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_get_type" g_base_info_get_type :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    IO CUInt+++baseInfoGetType ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    m InfoType+baseInfoGetType _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_base_info_get_type _obj'+    let result' = (toEnum . fromIntegral) result+    touchManagedPtr _obj+    return result'++-- method BaseInfo::get_typelib+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GIRepository" "Typelib"+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_get_typelib" g_base_info_get_typelib :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    IO (Ptr Typelib)+++baseInfoGetTypelib ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    m Typelib+baseInfoGetTypelib _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_base_info_get_typelib _obj'+    checkUnexpectedReturnNULL "g_base_info_get_typelib" result+    -- XXX Wrapping a foreign struct/union with no known destructor, leak?+    result' <- (\x -> Typelib <$> newForeignPtr_ x) result+    touchManagedPtr _obj+    return result'++-- method BaseInfo::is_deprecated+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_is_deprecated" g_base_info_is_deprecated :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    IO CInt+++baseInfoIsDeprecated ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    m Bool+baseInfoIsDeprecated _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_base_info_is_deprecated _obj'+    let result' = (/= 0) result+    touchManagedPtr _obj+    return result'++-- method BaseInfo::iterate_attributes+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iterator", argType = TInterface "GIRepository" "AttributeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "BaseInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iterator", argType = TInterface "GIRepository" "AttributeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_base_info_iterate_attributes" g_base_info_iterate_attributes :: +    Ptr BaseInfo ->                         -- _obj : TInterface "GIRepository" "BaseInfo"+    Ptr AttributeIter ->                    -- iterator : TInterface "GIRepository" "AttributeIter"+    Ptr CString ->                          -- name : TBasicType TUTF8+    Ptr CString ->                          -- value : TBasicType TUTF8+    IO CInt+++baseInfoIterateAttributes ::+    (MonadIO m) =>+    BaseInfo ->                             -- _obj+    AttributeIter ->                        -- iterator+    m (Bool,T.Text,T.Text)+baseInfoIterateAttributes _obj iterator = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    let iterator' = unsafeManagedPtrGetPtr iterator+    name <- allocMem :: IO (Ptr CString)+    value <- allocMem :: IO (Ptr CString)+    result <- g_base_info_iterate_attributes _obj' iterator' name value+    let result' = (/= 0) result+    name' <- peek name+    name'' <- cstringToText name'+    value' <- peek value+    value'' <- cstringToText value'+    touchManagedPtr _obj+    touchManagedPtr iterator+    freeMem name+    freeMem value+    return (result', name'', value'')++
+ GI/GIRepository/Structs/BaseInfo.hs-boot view
@@ -0,0 +1,11 @@+module GI.GIRepository.Structs.BaseInfo where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype BaseInfo = BaseInfo (ForeignPtr BaseInfo)+instance BoxedObject BaseInfo where
+ GI/GIRepository/Structs/Typelib.hs view
@@ -0,0 +1,130 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++TODO+-}++module GI.GIRepository.Structs.Typelib+    ( ++-- * Exported types+    Typelib(..)                             ,+    noTypelib                               ,+++ -- * Methods+-- ** typelibFree+    typelibFree                             ,+++-- ** typelibGetNamespace+    typelibGetNamespace                     ,+++-- ** typelibSymbol+    typelibSymbol                           ,+++++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++newtype Typelib = Typelib (ForeignPtr Typelib)+noTypelib :: Maybe Typelib+noTypelib = Nothing++-- method Typelib::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "g_typelib_free" g_typelib_free :: +    Ptr Typelib ->                          -- _obj : TInterface "GIRepository" "Typelib"+    IO ()+++typelibFree ::+    (MonadIO m) =>+    Typelib ->                              -- _obj+    m ()+typelibFree _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    g_typelib_free _obj'+    touchManagedPtr _obj+    return ()++-- method Typelib::get_namespace+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "g_typelib_get_namespace" g_typelib_get_namespace :: +    Ptr Typelib ->                          -- _obj : TInterface "GIRepository" "Typelib"+    IO CString+++typelibGetNamespace ::+    (MonadIO m) =>+    Typelib ->                              -- _obj+    m T.Text+typelibGetNamespace _obj = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    result <- g_typelib_get_namespace _obj'+    checkUnexpectedReturnNULL "g_typelib_get_namespace" result+    result' <- cstringToText result+    touchManagedPtr _obj+    return result'++-- method Typelib::symbol+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "symbol_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "symbol", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GIRepository" "Typelib", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "symbol_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "symbol", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "g_typelib_symbol" g_typelib_symbol :: +    Ptr Typelib ->                          -- _obj : TInterface "GIRepository" "Typelib"+    CString ->                              -- symbol_name : TBasicType TUTF8+    Ptr () ->                               -- symbol : TBasicType TVoid+    IO CInt+++typelibSymbol ::+    (MonadIO m) =>+    Typelib ->                              -- _obj+    T.Text ->                               -- symbol_name+    Ptr () ->                               -- symbol+    m Bool+typelibSymbol _obj symbol_name symbol = liftIO $ do+    let _obj' = unsafeManagedPtrGetPtr _obj+    symbol_name' <- textToCString symbol_name+    result <- g_typelib_symbol _obj' symbol_name' symbol+    let result' = (/= 0) result+    touchManagedPtr _obj+    freeMem symbol_name'+    return result'++
+ GI/GIRepository/Structs/Typelib.hs-boot view
@@ -0,0 +1,10 @@+module GI.GIRepository.Structs.Typelib where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Typelib = Typelib (ForeignPtr Typelib)
+ GI/GIRepository/Structs/UnresolvedInfo.hs view
@@ -0,0 +1,34 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++Represents a unresolved type in a typelib.+-}++module GI.GIRepository.Structs.UnresolvedInfo+    ( ++-- * Exported types+    UnresolvedInfo(..)                      ,+    noUnresolvedInfo                        ,+++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++newtype UnresolvedInfo = UnresolvedInfo (ForeignPtr UnresolvedInfo)+noUnresolvedInfo :: Maybe UnresolvedInfo+noUnresolvedInfo = Nothing++
+ GI/GIRepository/Structs/UnresolvedInfo.hs-boot view
@@ -0,0 +1,10 @@+module GI.GIRepository.Structs.UnresolvedInfo where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype UnresolvedInfo = UnresolvedInfo (ForeignPtr UnresolvedInfo)
+ GI/GIRepository/Types.hs view
@@ -0,0 +1,24 @@+module GI.GIRepository.Types+    (     module GI.GIRepository.Objects.Repository,+    module GI.GIRepository.Structs.AttributeIter,+    module GI.GIRepository.Structs.BaseInfo ,+    module GI.GIRepository.Structs.Typelib  ,+    module GI.GIRepository.Structs.UnresolvedInfo,+    module GI.GIRepository.Unions.Argument  ,+    module GI.GIRepository.Enums            ,+    module GI.GIRepository.Flags            ,+++    ) where+++import {-# SOURCE #-} GI.GIRepository.Objects.Repository+import {-# SOURCE #-} GI.GIRepository.Structs.AttributeIter+import {-# SOURCE #-} GI.GIRepository.Structs.BaseInfo+import {-# SOURCE #-} GI.GIRepository.Structs.Typelib+import {-# SOURCE #-} GI.GIRepository.Structs.UnresolvedInfo+import {-# SOURCE #-} GI.GIRepository.Unions.Argument++import GI.GIRepository.Enums+import GI.GIRepository.Flags+
+ GI/GIRepository/Unions.hs view
@@ -0,0 +1,26 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Unions+    (     module GI.GIRepository.Unions.Argument  ,+++    ) where++import GI.GIRepository.Unions.Argument++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++
+ GI/GIRepository/Unions/Argument.hs view
@@ -0,0 +1,228 @@++{- |+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License    : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.GIRepository.Unions.Argument+    ( ++-- * Exported types+    Argument(..)                            ,+    noArgument                              ,+++ -- * Properties+-- ** VBoolean+    argumentReadVBoolean                    ,+++-- ** VDouble+    argumentReadVDouble                     ,+++-- ** VFloat+    argumentReadVFloat                      ,+++-- ** VInt+    argumentReadVInt                        ,+++-- ** VInt16+    argumentReadVInt16                      ,+++-- ** VInt32+    argumentReadVInt32                      ,+++-- ** VInt64+    argumentReadVInt64                      ,+++-- ** VInt8+    argumentReadVInt8                       ,+++-- ** VLong+    argumentReadVLong                       ,+++-- ** VPointer+    argumentReadVPointer                    ,+++-- ** VShort+    argumentReadVShort                      ,+++-- ** VSize+    argumentReadVSize                       ,+++-- ** VSsize+    argumentReadVSsize                      ,+++-- ** VString+    argumentReadVString                     ,+++-- ** VUint+    argumentReadVUint                       ,+++-- ** VUint16+    argumentReadVUint16                     ,+++-- ** VUint32+    argumentReadVUint32                     ,+++-- ** VUint64+    argumentReadVUint64                     ,+++-- ** VUint8+    argumentReadVUint8                      ,+++-- ** VUlong+    argumentReadVUlong                      ,+++-- ** VUshort+    argumentReadVUshort                     ,+++++    ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.GIRepository.Types+import GI.GIRepository.Callbacks++newtype Argument = Argument (ForeignPtr Argument)+noArgument :: Maybe Argument+noArgument = Nothing++argumentReadVBoolean :: Argument -> IO Bool+argumentReadVBoolean s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO CInt+    let val' = (/= 0) val+    return val'++argumentReadVInt8 :: Argument -> IO Int8+argumentReadVInt8 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int8+    return val++argumentReadVUint8 :: Argument -> IO Word8+argumentReadVUint8 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word8+    return val++argumentReadVInt16 :: Argument -> IO Int16+argumentReadVInt16 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int16+    return val++argumentReadVUint16 :: Argument -> IO Word16+argumentReadVUint16 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word16+    return val++argumentReadVInt32 :: Argument -> IO Int32+argumentReadVInt32 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int32+    return val++argumentReadVUint32 :: Argument -> IO Word32+argumentReadVUint32 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word32+    return val++argumentReadVInt64 :: Argument -> IO Int64+argumentReadVInt64 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int64+    return val++argumentReadVUint64 :: Argument -> IO Word64+argumentReadVUint64 s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word64+    return val++argumentReadVFloat :: Argument -> IO Float+argumentReadVFloat s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO CFloat+    let val' = realToFrac val+    return val'++argumentReadVDouble :: Argument -> IO Double+argumentReadVDouble s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO CDouble+    let val' = realToFrac val+    return val'++argumentReadVShort :: Argument -> IO Int16+argumentReadVShort s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int16+    return val++argumentReadVUshort :: Argument -> IO Word16+argumentReadVUshort s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word16+    return val++argumentReadVInt :: Argument -> IO Int32+argumentReadVInt s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int32+    return val++argumentReadVUint :: Argument -> IO Word32+argumentReadVUint s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word32+    return val++argumentReadVLong :: Argument -> IO Int64+argumentReadVLong s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int64+    return val++argumentReadVUlong :: Argument -> IO Word64+argumentReadVUlong s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word64+    return val++argumentReadVSsize :: Argument -> IO Int64+argumentReadVSsize s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Int64+    return val++argumentReadVSize :: Argument -> IO Word64+argumentReadVSize s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO Word64+    return val++argumentReadVString :: Argument -> IO T.Text+argumentReadVString s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO CString+    val' <- cstringToText val+    return val'++argumentReadVPointer :: Argument -> IO (Ptr ())+argumentReadVPointer s = withManagedPtr s $ \ptr -> do+    val <- peek (ptr `plusPtr` 0) :: IO (Ptr ())+    return val++
+ GI/GIRepository/Unions/Argument.hs-boot view
@@ -0,0 +1,10 @@+module GI.GIRepository.Unions.Argument where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Argument = Argument (ForeignPtr Argument)
+ LICENSE view
@@ -0,0 +1,456 @@+                  GNU LESSER GENERAL PUBLIC LICENSE+                       Version 2.1, February 1999++ Copyright (C) 1991, 1999 Free Software Foundation, Inc.+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA+ Everyone is permitted to copy and distribute verbatim copies+ of this license document, but changing it is not allowed.++[This is the first released version of the Lesser GPL.  It also counts+ as the successor of the GNU Library Public License, version 2, hence+ the version number 2.1.]++                            Preamble++  The licenses for most software are designed to take away your+freedom to share and change it.  By contrast, the GNU General Public+Licenses are intended to guarantee your freedom to share and change+free software--to make sure the software is free for all its users.++  This license, the Lesser General Public License, applies to some+specially designated software packages--typically libraries--of the+Free Software Foundation and other authors who decide to use it.  You+can use it too, but we suggest you first think carefully about whether+this license or the ordinary General Public License is the better+strategy to use in any particular case, based on the explanations below.++  When we speak of free software, we are referring to freedom of use,+not price.  Our General Public Licenses are designed to make sure that+you have the freedom to distribute copies of free software (and charge+for this service if you wish); that you receive source code or can get+it if you want it; that you can change the software and use pieces of+it in new free programs; and that you are informed that you can do+these things.++  To protect your rights, we need to make restrictions that forbid+distributors to deny you these rights or to ask you to surrender these+rights.  These restrictions translate to certain responsibilities for+you if you distribute copies of the library or if you modify it.++  For example, if you distribute copies of the library, whether gratis+or for a fee, you must give the recipients all the rights that we gave+you.  You must make sure that they, too, receive or can get the source+code.  If you link other code with the library, you must provide+complete object files to the recipients, so that they can relink them+with the library after making changes to the library and recompiling+it.  And you must show them these terms so they know their rights.++  We protect your rights with a two-step method: (1) we copyright the+library, and (2) we offer you this license, which gives you legal+permission to copy, distribute and/or modify the library.++  To protect each distributor, we want to make it very clear that+there is no warranty for the free library.  Also, if the library is+modified by someone else and passed on, the recipients should know+that what they have is not the original version, so that the original+author's reputation will not be affected by problems that might be+introduced by others.++  Finally, software patents pose a constant threat to the existence of+any free program.  We wish to make sure that a company cannot+effectively restrict the users of a free program by obtaining a+restrictive license from a patent holder.  Therefore, we insist that+any patent license obtained for a version of the library must be+consistent with the full freedom of use specified in this license.++  Most GNU software, including some libraries, is covered by the+ordinary GNU General Public License.  This license, the GNU Lesser+General Public License, applies to certain designated libraries, and+is quite different from the ordinary General Public License.  We use+this license for certain libraries in order to permit linking those+libraries into non-free programs.++  When a program is linked with a library, whether statically or using+a shared library, the combination of the two is legally speaking a+combined work, a derivative of the original library.  The ordinary+General Public License therefore permits such linking only if the+entire combination fits its criteria of freedom.  The Lesser General+Public License permits more lax criteria for linking other code with+the library.++  We call this license the "Lesser" General Public License because it+does Less to protect the user's freedom than the ordinary General+Public License.  It also provides other free software developers Less+of an advantage over competing non-free programs.  These disadvantages+are the reason we use the ordinary General Public License for many+libraries.  However, the Lesser license provides advantages in certain+special circumstances.++  For example, on rare occasions, there may be a special need to+encourage the widest possible use of a certain library, so that it becomes+a de-facto standard.  To achieve this, non-free programs must be+allowed to use the library.  A more frequent case is that a free+library does the same job as widely used non-free libraries.  In this+case, there is little to gain by limiting the free library to free+software only, so we use the Lesser General Public License.++  In other cases, permission to use a particular library in non-free+programs enables a greater number of people to use a large body of+free software.  For example, permission to use the GNU C Library in+non-free programs enables many more people to use the whole GNU+operating system, as well as its variant, the GNU/Linux operating+system.++  Although the Lesser General Public License is Less protective of the+users' freedom, it does ensure that the user of a program that is+linked with the Library has the freedom and the wherewithal to run+that program using a modified version of the Library.++  The precise terms and conditions for copying, distribution and+modification follow.  Pay close attention to the difference between a+"work based on the library" and a "work that uses the library".  The+former contains code derived from the library, whereas the latter must+be combined with the library in order to run.++                  GNU LESSER GENERAL PUBLIC LICENSE+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION++  0. This License Agreement applies to any software library or other+program which contains a notice placed by the copyright holder or+other authorized party saying it may be distributed under the terms of+this Lesser General Public License (also called "this License").+Each licensee is addressed as "you".++  A "library" means a collection of software functions and/or data+prepared so as to be conveniently linked with application programs+(which use some of those functions and data) to form executables.++  The "Library", below, refers to any such software library or work+which has been distributed under these terms.  A "work based on the+Library" means either the Library or any derivative work under+copyright law: that is to say, a work containing the Library or a+portion of it, either verbatim or with modifications and/or translated+straightforwardly into another language.  (Hereinafter, translation is+included without limitation in the term "modification".)++  "Source code" for a work means the preferred form of the work for+making modifications to it.  For a library, complete source code means+all the source code for all modules it contains, plus any associated+interface definition files, plus the scripts used to control compilation+and installation of the library.++  Activities other than copying, distribution and modification are not+covered by this License; they are outside its scope.  The act of+running a program using the Library is not restricted, and output from+such a program is covered only if its contents constitute a work based+on the Library (independent of the use of the Library in a tool for+writing it).  Whether that is true depends on what the Library does+and what the program that uses the Library does.++  1. You may copy and distribute verbatim copies of the Library's+complete source code as you receive it, in any medium, provided that+you conspicuously and appropriately publish on each copy an+appropriate copyright notice and disclaimer of warranty; keep intact+all the notices that refer to this License and to the absence of any+warranty; and distribute a copy of this License along with the+Library.++  You may charge a fee for the physical act of transferring a copy,+and you may at your option offer warranty protection in exchange for a+fee.++  2. You may modify your copy or copies of the Library or any portion+of it, thus forming a work based on the Library, and copy and+distribute such modifications or work under the terms of Section 1+above, provided that you also meet all of these conditions:++    a) The modified work must itself be a software library.++    b) You must cause the files modified to carry prominent notices+    stating that you changed the files and the date of any change.++    c) You must cause the whole of the work to be licensed at no+    charge to all third parties under the terms of this License.++    d) If a facility in the modified Library refers to a function or a+    table of data to be supplied by an application program that uses+    the facility, other than as an argument passed when the facility+    is invoked, then you must make a good faith effort to ensure that,+    in the event an application does not supply such function or+    table, the facility still operates, and performs whatever part of+    its purpose remains meaningful.++    (For example, a function in a library to compute square roots has+    a purpose that is entirely well-defined independent of the+    application.  Therefore, Subsection 2d requires that any+    application-supplied function or table used by this function must+    be optional: if the application does not supply it, the square+    root function must still compute square roots.)++These requirements apply to the modified work as a whole.  If+identifiable sections of that work are not derived from the Library,+and can be reasonably considered independent and separate works in+themselves, then this License, and its terms, do not apply to those+sections when you distribute them as separate works.  But when you+distribute the same sections as part of a whole which is a work based+on the Library, the distribution of the whole must be on the terms of+this License, whose permissions for other licensees extend to the+entire whole, and thus to each and every part regardless of who wrote+it.++Thus, it is not the intent of this section to claim rights or contest+your rights to work written entirely by you; rather, the intent is to+exercise the right to control the distribution of derivative or+collective works based on the Library.++In addition, mere aggregation of another work not based on the Library+with the Library (or with a work based on the Library) on a volume of+a storage or distribution medium does not bring the other work under+the scope of this License.++  3. You may opt to apply the terms of the ordinary GNU General Public+License instead of this License to a given copy of the Library.  To do+this, you must alter all the notices that refer to this License, so+that they refer to the ordinary GNU General Public License, version 2,+instead of to this License.  (If a newer version than version 2 of the+ordinary GNU General Public License has appeared, then you can specify+that version instead if you wish.)  Do not make any other change in+these notices.++  Once this change is made in a given copy, it is irreversible for+that copy, so the ordinary GNU General Public License applies to all+subsequent copies and derivative works made from that copy.++  This option is useful when you wish to copy part of the code of+the Library into a program that is not a library.++  4. You may copy and distribute the Library (or a portion or+derivative of it, under Section 2) in object code or executable form+under the terms of Sections 1 and 2 above provided that you accompany+it with the complete corresponding machine-readable source code, which+must be distributed under the terms of Sections 1 and 2 above on a+medium customarily used for software interchange.++  If distribution of object code is made by offering access to copy+from a designated place, then offering equivalent access to copy the+source code from the same place satisfies the requirement to+distribute the source code, even though third parties are not+compelled to copy the source along with the object code.++  5. A program that contains no derivative of any portion of the+Library, but is designed to work with the Library by being compiled or+linked with it, is called a "work that uses the Library".  Such a+work, in isolation, is not a derivative work of the Library, and+therefore falls outside the scope of this License.++  However, linking a "work that uses the Library" with the Library+creates an executable that is a derivative of the Library (because it+contains portions of the Library), rather than a "work that uses the+library".  The executable is therefore covered by this License.+Section 6 states terms for distribution of such executables.++  When a "work that uses the Library" uses material from a header file+that is part of the Library, the object code for the work may be a+derivative work of the Library even though the source code is not.+Whether this is true is especially significant if the work can be+linked without the Library, or if the work is itself a library.  The+threshold for this to be true is not precisely defined by law.++  If such an object file uses only numerical parameters, data+structure layouts and accessors, and small macros and small inline+functions (ten lines or less in length), then the use of the object+file is unrestricted, regardless of whether it is legally a derivative+work.  (Executables containing this object code plus portions of the+Library will still fall under Section 6.)++  Otherwise, if the work is a derivative of the Library, you may+distribute the object code for the work under the terms of Section 6.+Any executables containing that work also fall under Section 6,+whether or not they are linked directly with the Library itself.++  6. As an exception to the Sections above, you may also combine or+link a "work that uses the Library" with the Library to produce a+work containing portions of the Library, and distribute that work+under terms of your choice, provided that the terms permit+modification of the work for the customer's own use and reverse+engineering for debugging such modifications.++  You must give prominent notice with each copy of the work that the+Library is used in it and that the Library and its use are covered by+this License.  You must supply a copy of this License.  If the work+during execution displays copyright notices, you must include the+copyright notice for the Library among them, as well as a reference+directing the user to the copy of this License.  Also, you must do one+of these things:++    a) Accompany the work with the complete corresponding+    machine-readable source code for the Library including whatever+    changes were used in the work (which must be distributed under+    Sections 1 and 2 above); and, if the work is an executable linked+    with the Library, with the complete machine-readable "work that+    uses the Library", as object code and/or source code, so that the+    user can modify the Library and then relink to produce a modified+    executable containing the modified Library.  (It is understood+    that the user who changes the contents of definitions files in the+    Library will not necessarily be able to recompile the application+    to use the modified definitions.)++    b) Use a suitable shared library mechanism for linking with the+    Library.  A suitable mechanism is one that (1) uses at run time a+    copy of the library already present on the user's computer system,+    rather than copying library functions into the executable, and (2)+    will operate properly with a modified version of the library, if+    the user installs one, as long as the modified version is+    interface-compatible with the version that the work was made with.++    c) Accompany the work with a written offer, valid for at+    least three years, to give the same user the materials+    specified in Subsection 6a, above, for a charge no more+    than the cost of performing this distribution.++    d) If distribution of the work is made by offering access to copy+    from a designated place, offer equivalent access to copy the above+    specified materials from the same place.++    e) Verify that the user has already received a copy of these+    materials or that you have already sent this user a copy.++  For an executable, the required form of the "work that uses the+Library" must include any data and utility programs needed for+reproducing the executable from it.  However, as a special exception,+the materials to be distributed need not include anything that is+normally distributed (in either source or binary form) with the major+components (compiler, kernel, and so on) of the operating system on+which the executable runs, unless that component itself accompanies+the executable.++  It may happen that this requirement contradicts the license+restrictions of other proprietary libraries that do not normally+accompany the operating system.  Such a contradiction means you cannot+use both them and the Library together in an executable that you+distribute.++  7. You may place library facilities that are a work based on the+Library side-by-side in a single library together with other library+facilities not covered by this License, and distribute such a combined+library, provided that the separate distribution of the work based on+the Library and of the other library facilities is otherwise+permitted, and provided that you do these two things:++    a) Accompany the combined library with a copy of the same work+    based on the Library, uncombined with any other library+    facilities.  This must be distributed under the terms of the+    Sections above.++    b) Give prominent notice with the combined library of the fact+    that part of it is a work based on the Library, and explaining+    where to find the accompanying uncombined form of the same work.++  8. You may not copy, modify, sublicense, link with, or distribute+the Library except as expressly provided under this License.  Any+attempt otherwise to copy, modify, sublicense, link with, or+distribute the Library is void, and will automatically terminate your+rights under this License.  However, parties who have received copies,+or rights, from you under this License will not have their licenses+terminated so long as such parties remain in full compliance.++  9. You are not required to accept this License, since you have not+signed it.  However, nothing else grants you permission to modify or+distribute the Library or its derivative works.  These actions are+prohibited by law if you do not accept this License.  Therefore, by+modifying or distributing the Library (or any work based on the+Library), you indicate your acceptance of this License to do so, and+all its terms and conditions for copying, distributing or modifying+the Library or works based on it.++  10. Each time you redistribute the Library (or any work based on the+Library), the recipient automatically receives a license from the+original licensor to copy, distribute, link with or modify the Library+subject to these terms and conditions.  You may not impose any further+restrictions on the recipients' exercise of the rights granted herein.+You are not responsible for enforcing compliance by third parties with+this License.++  11. If, as a consequence of a court judgment or allegation of patent+infringement or for any other reason (not limited to patent issues),+conditions are imposed on you (whether by court order, agreement or+otherwise) that contradict the conditions of this License, they do not+excuse you from the conditions of this License.  If you cannot+distribute so as to satisfy simultaneously your obligations under this+License and any other pertinent obligations, then as a consequence you+may not distribute the Library at all.  For example, if a patent+license would not permit royalty-free redistribution of the Library by+all those who receive copies directly or indirectly through you, then+the only way you could satisfy both it and this License would be to+refrain entirely from distribution of the Library.++If any portion of this section is held invalid or unenforceable under any+particular circumstance, the balance of the section is intended to apply,+and the section as a whole is intended to apply in other circumstances.++It is not the purpose of this section to induce you to infringe any+patents or other property right claims or to contest validity of any+such claims; this section has the sole purpose of protecting the+integrity of the free software distribution system which is+implemented by public license practices.  Many people have made+generous contributions to the wide range of software distributed+through that system in reliance on consistent application of that+system; it is up to the author/donor to decide if he or she is willing+to distribute software through any other system and a licensee cannot+impose that choice.++This section is intended to make thoroughly clear what is believed to+be a consequence of the rest of this License.++  12. If the distribution and/or use of the Library is restricted in+certain countries either by patents or by copyrighted interfaces, the+original copyright holder who places the Library under this License may add+an explicit geographical distribution limitation excluding those countries,+so that distribution is permitted only in or among countries not thus+excluded.  In such case, this License incorporates the limitation as if+written in the body of this License.++  13. The Free Software Foundation may publish revised and/or new+versions of the Lesser General Public License from time to time.+Such new versions will be similar in spirit to the present version,+but may differ in detail to address new problems or concerns.++Each version is given a distinguishing version number.  If the Library+specifies a version number of this License which applies to it and+"any later version", you have the option of following the terms and+conditions either of that version or of any later version published by+the Free Software Foundation.  If the Library does not specify a+license version number, you may choose any version ever published by+the Free Software Foundation.++  14. If you wish to incorporate parts of the Library into other free+programs whose distribution conditions are incompatible with these,+write to the author to ask for permission.  For software which is+copyrighted by the Free Software Foundation, write to the Free+Software Foundation; we sometimes make exceptions for this.  Our+decision will be guided by the two goals of preserving the free status+of all derivatives of our free software and of promoting the sharing+and reuse of software generally.++                            NO WARRANTY++  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.++  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH+DAMAGES.
+ Setup.hs view
@@ -0,0 +1,3 @@+#!/usr/bin/env runhaskell+import Distribution.Simple+main = defaultMain
+ gi-girepository.cabal view
@@ -0,0 +1,42 @@+-- Autogenerated, do not edit.+name:               gi-girepository+version:            0.1.44.12+synopsis:           GIRepository bindings+description:        Bindings for GIRepository, autogenerated by haskell-gi.+homepage:           https://github.com/haskell-gi/haskell-gi+license:            LGPL-2.1+license-file:       LICENSE+author:             Will Thompson, Iñaki García Etxebarria and Jonas Platte+maintainer:         Iñaki García Etxebarria (garetxe@gmail.com)+category:           Bindings+build-type:         Simple+cabal-version:      >=1.10++library+    default-language:   Haskell2010+    default-extensions: OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts+    other-extensions:   PatternSynonyms ScopedTypeVariables, ViewPatterns+    ghc-options:        -fno-warn-unused-imports -fno-warn-warnings-deprecations+    exposed-modules:    GI.GIRepository.Types+                        GI.GIRepository+                        GI.GIRepository.Callbacks+                        GI.GIRepository.Enums+                        GI.GIRepository.Flags+                        GI.GIRepository.Functions+                        GI.GIRepository.Objects+                        GI.GIRepository.Objects.Repository+                        GI.GIRepository.Structs+                        GI.GIRepository.Structs.AttributeIter+                        GI.GIRepository.Structs.BaseInfo+                        GI.GIRepository.Structs.Typelib+                        GI.GIRepository.Structs.UnresolvedInfo+                        GI.GIRepository.Unions+                        GI.GIRepository.Unions.Argument+    pkgconfig-depends:  gobject-introspection-1.0 >= 1.44+    build-depends: base >= 4.7 && <5,+        haskell-gi-base >= 0.12 && < 1,+        gi-gobject >= 0.2.44.12 && < 0.2.45,+        bytestring >= 0.10,+        containers >= 0.5,+        text >= 1.0,+        transformers >= 0.3