gi-glib-0.2.44.12: GI/GLib/Structs/HookList.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)
The #GHookList struct represents a list of hook functions.
-}
module GI.GLib.Structs.HookList
(
-- * Exported types
HookList(..) ,
noHookList ,
-- * Methods
-- ** hookListClear
hookListClear ,
-- ** hookListInit
hookListInit ,
-- ** hookListInvoke
hookListInvoke ,
-- ** hookListInvokeCheck
hookListInvokeCheck ,
-- * Properties
-- ** Dummy3
hookListReadDummy3 ,
-- ** HookSize
hookListReadHookSize ,
-- ** Hooks
hookListReadHooks ,
-- ** IsSetup
hookListReadIsSetup ,
-- ** SeqId
hookListReadSeqId ,
) 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.GLib.Types
import GI.GLib.Callbacks
newtype HookList = HookList (ForeignPtr HookList)
noHookList :: Maybe HookList
noHookList = Nothing
hookListReadSeqId :: HookList -> IO Word64
hookListReadSeqId s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO Word64
return val
hookListReadHookSize :: HookList -> IO Word32
hookListReadHookSize s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 8) :: IO Word32
return val
hookListReadIsSetup :: HookList -> IO Word32
hookListReadIsSetup s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 12) :: IO Word32
return val
hookListReadHooks :: HookList -> IO Hook
hookListReadHooks s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 16) :: IO (Ptr Hook)
val' <- (newPtr 64 Hook) val
return val'
hookListReadDummy3 :: HookList -> IO (Ptr ())
hookListReadDummy3 s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 24) :: IO (Ptr ())
return val
-- XXX Skipped getter for "HookList:finalize_hook" :: Not implemented: "Wrapping foreign callbacks is not supported yet"
-- XXX Skipped getter for "HookList:dummy" :: Not implemented: "Don't know how to unpack C array of type TCArray False 2 (-1) (TBasicType TVoid)"
-- method HookList::clear
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_hook_list_clear" g_hook_list_clear ::
Ptr HookList -> -- _obj : TInterface "GLib" "HookList"
IO ()
hookListClear ::
(MonadIO m) =>
HookList -> -- _obj
m ()
hookListClear _obj = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_hook_list_clear _obj'
touchManagedPtr _obj
return ()
-- method HookList::init
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hook_size", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hook_size", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_hook_list_init" g_hook_list_init ::
Ptr HookList -> -- _obj : TInterface "GLib" "HookList"
Word32 -> -- hook_size : TBasicType TUInt32
IO ()
hookListInit ::
(MonadIO m) =>
HookList -> -- _obj
Word32 -> -- hook_size
m ()
hookListInit _obj hook_size = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
g_hook_list_init _obj' hook_size
touchManagedPtr _obj
return ()
-- method HookList::invoke
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "may_recurse", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "may_recurse", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_hook_list_invoke" g_hook_list_invoke ::
Ptr HookList -> -- _obj : TInterface "GLib" "HookList"
CInt -> -- may_recurse : TBasicType TBoolean
IO ()
hookListInvoke ::
(MonadIO m) =>
HookList -> -- _obj
Bool -> -- may_recurse
m ()
hookListInvoke _obj may_recurse = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let may_recurse' = (fromIntegral . fromEnum) may_recurse
g_hook_list_invoke _obj' may_recurse'
touchManagedPtr _obj
return ()
-- method HookList::invoke_check
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "may_recurse", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "GLib" "HookList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "may_recurse", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_hook_list_invoke_check" g_hook_list_invoke_check ::
Ptr HookList -> -- _obj : TInterface "GLib" "HookList"
CInt -> -- may_recurse : TBasicType TBoolean
IO ()
hookListInvokeCheck ::
(MonadIO m) =>
HookList -> -- _obj
Bool -> -- may_recurse
m ()
hookListInvokeCheck _obj may_recurse = liftIO $ do
let _obj' = unsafeManagedPtrGetPtr _obj
let may_recurse' = (fromIntegral . fromEnum) may_recurse
g_hook_list_invoke_check _obj' may_recurse'
touchManagedPtr _obj
return ()