gi-gobject-0.2.44.12: GI/GObject/Interfaces/TypePlugin.hs
{- |
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.GObject.Interfaces.TypePlugin
(
-- * Exported types
TypePlugin(..) ,
noTypePlugin ,
TypePluginK ,
-- * Methods
-- ** typePluginCompleteInterfaceInfo
typePluginCompleteInterfaceInfo ,
-- ** typePluginCompleteTypeInfo
typePluginCompleteTypeInfo ,
-- ** typePluginUnuse
typePluginUnuse ,
-- ** typePluginUse
typePluginUse ,
) 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.GObject.Types
import GI.GObject.Callbacks
-- interface TypePlugin
newtype TypePlugin = TypePlugin (ForeignPtr TypePlugin)
noTypePlugin :: Maybe TypePlugin
noTypePlugin = Nothing
type instance AttributeList TypePlugin = TypePluginAttributeList
type TypePluginAttributeList = ('[ ] :: [(Symbol, *)])
type instance SignalList TypePlugin = TypePluginSignalList
type TypePluginSignalList = ('[ ] :: [(Symbol, *)])
class ForeignPtrNewtype a => TypePluginK a
instance (ForeignPtrNewtype o, IsDescendantOf TypePlugin o) => TypePluginK o
type instance ParentTypes TypePlugin = TypePluginParentTypes
type TypePluginParentTypes = '[]
-- method TypePlugin::complete_interface_info
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "instance_type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "interface_type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "info", argType = TInterface "GObject" "InterfaceInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "instance_type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "interface_type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "info", argType = TInterface "GObject" "InterfaceInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_type_plugin_complete_interface_info" g_type_plugin_complete_interface_info ::
Ptr TypePlugin -> -- _obj : TInterface "GObject" "TypePlugin"
CGType -> -- instance_type : TBasicType TGType
CGType -> -- interface_type : TBasicType TGType
Ptr InterfaceInfo -> -- info : TInterface "GObject" "InterfaceInfo"
IO ()
typePluginCompleteInterfaceInfo ::
(MonadIO m, TypePluginK a) =>
a -> -- _obj
GType -> -- instance_type
GType -> -- interface_type
InterfaceInfo -> -- info
m ()
typePluginCompleteInterfaceInfo _obj instance_type interface_type info = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let instance_type' = gtypeToCGType instance_type
let interface_type' = gtypeToCGType interface_type
let info' = unsafeManagedPtrGetPtr info
g_type_plugin_complete_interface_info _obj' instance_type' interface_type' info'
touchManagedPtr _obj
touchManagedPtr info
return ()
-- method TypePlugin::complete_type_info
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "g_type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "info", argType = TInterface "GObject" "TypeInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value_table", argType = TInterface "GObject" "TypeValueTable", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "g_type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "info", argType = TInterface "GObject" "TypeInfo", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value_table", argType = TInterface "GObject" "TypeValueTable", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_type_plugin_complete_type_info" g_type_plugin_complete_type_info ::
Ptr TypePlugin -> -- _obj : TInterface "GObject" "TypePlugin"
CGType -> -- g_type : TBasicType TGType
Ptr TypeInfo -> -- info : TInterface "GObject" "TypeInfo"
Ptr TypeValueTable -> -- value_table : TInterface "GObject" "TypeValueTable"
IO ()
typePluginCompleteTypeInfo ::
(MonadIO m, TypePluginK a) =>
a -> -- _obj
GType -> -- g_type
TypeInfo -> -- info
TypeValueTable -> -- value_table
m ()
typePluginCompleteTypeInfo _obj g_type info value_table = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let g_type' = gtypeToCGType g_type
let info' = unsafeManagedPtrGetPtr info
let value_table' = unsafeManagedPtrGetPtr value_table
g_type_plugin_complete_type_info _obj' g_type' info' value_table'
touchManagedPtr _obj
touchManagedPtr info
touchManagedPtr value_table
return ()
-- method TypePlugin::unuse
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_type_plugin_unuse" g_type_plugin_unuse ::
Ptr TypePlugin -> -- _obj : TInterface "GObject" "TypePlugin"
IO ()
typePluginUnuse ::
(MonadIO m, TypePluginK a) =>
a -> -- _obj
m ()
typePluginUnuse _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
g_type_plugin_unuse _obj'
touchManagedPtr _obj
return ()
-- method TypePlugin::use
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GObject" "TypePlugin", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_type_plugin_use" g_type_plugin_use ::
Ptr TypePlugin -> -- _obj : TInterface "GObject" "TypePlugin"
IO ()
typePluginUse ::
(MonadIO m, TypePluginK a) =>
a -> -- _obj
m ()
typePluginUse _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
g_type_plugin_use _obj'
touchManagedPtr _obj
return ()