gi-glib-2.0.17: GLib bindings

Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com)
Safe Haskell | None
Language | Haskell2010

GI.GLib.Structs.HookList

Contents

- Exported types
- Methods
  - clear
  - init
  - invoke
  - invokeCheck
- Properties
  - dummy3
  - finalizeHook
  - hookSize
  - hooks
  - isSetup
  - seqId

Description

The `HookList` struct represents a list of hook functions.

Synopsis

- newtype HookList = HookList (ManagedPtr HookList)
- newZeroHookList :: MonadIO m => m HookList
- noHookList :: Maybe HookList
- hookListClear :: (HasCallStack, MonadIO m) => HookList -> m ()
- hookListInit :: (HasCallStack, MonadIO m) => HookList -> Word32 -> m ()
- hookListInvoke :: (HasCallStack, MonadIO m) => HookList -> Bool -> m ()
- hookListInvokeCheck :: (HasCallStack, MonadIO m) => HookList -> Bool -> m ()
- clearHookListDummy3 :: MonadIO m => HookList -> m ()
- getHookListDummy3 :: MonadIO m => HookList -> m (Ptr ())
- setHookListDummy3 :: MonadIO m => HookList -> Ptr () -> m ()
- clearHookListFinalizeHook :: MonadIO m => HookList -> m ()
- getHookListFinalizeHook :: MonadIO m => HookList -> m (Maybe HookFinalizeFunc)
- setHookListFinalizeHook :: MonadIO m => HookList -> FunPtr C_HookFinalizeFunc -> m ()
- getHookListHookSize :: MonadIO m => HookList -> m Word32
- setHookListHookSize :: MonadIO m => HookList -> Word32 -> m ()
- clearHookListHooks :: MonadIO m => HookList -> m ()
- getHookListHooks :: MonadIO m => HookList -> m (Maybe Hook)
- setHookListHooks :: MonadIO m => HookList -> Ptr Hook -> m ()
- getHookListIsSetup :: MonadIO m => HookList -> m Word32
- setHookListIsSetup :: MonadIO m => HookList -> Word32 -> m ()
- getHookListSeqId :: MonadIO m => HookList -> m CULong
- setHookListSeqId :: MonadIO m => HookList -> CULong -> m ()

# Exported types

newtype HookList Source #

Memory-managed wrapper type.

Constructors

HookList (ManagedPtr HookList) |

Instances

WrappedPtr HookList Source # |
Instance details Defined in GI.GLib.Structs.HookList Methods wrappedPtrCalloc :: IO (Ptr HookList) Source # wrappedPtrCopy :: HookList -> IO HookList Source # wrappedPtrFree :: Maybe (FunPtr (Ptr HookList -> IO ())) Source #
tag ~ AttrSet => Constructible HookList tag Source # |
Instance details Defined in GI.GLib.Structs.HookList Methods new :: MonadIO m => (ManagedPtr HookList -> HookList) -> [AttrOp HookList tag] -> m HookList Source #

newZeroHookList :: MonadIO m => m HookList Source #

Construct a `HookList` struct initialized to zero.

noHookList :: Maybe HookList Source #

A convenience alias for `Nothing` :: `Maybe` `HookList`.

# Methods

## clear

hookListClear Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> HookList | `hookList`: a `HookList`
-> m () |

Removes all the `Hook` elements from a `HookList`.

## init

hookListInit Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> HookList | `hookList`: a `HookList`
-> Word32 | `hookSize`: the size of each element in the `HookList`, typically `sizeof (GHook)`.
-> m () |

Initializes a `HookList`. This must be called before the `HookList` is used.

## invoke

hookListInvoke Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> HookList | `hookList`: a `HookList`
-> Bool | `mayRecurse`: `True` if functions which are already running (e.g. in another thread) can be called. If set to `False`, these are skipped
-> m () |

Calls all of the `Hook` functions in a `HookList`.

## invokeCheck

hookListInvokeCheck Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> HookList | `hookList`: a `HookList`
-> Bool | `mayRecurse`: `True` if functions which are already running (e.g. in another thread) can be called. If set to `False`, these are skipped
-> m () |

Calls all of the `Hook` functions in a `HookList`. Any function which returns `False` is removed from the `HookList`.

# Properties

## dummy3

unused

clearHookListDummy3 :: MonadIO m => HookList -> m () Source #

Set the value of the “`dummy3`” field to `Nothing`. When overloading is enabled, this is equivalent to

    clear #dummy3

getHookListDummy3 :: MonadIO m => HookList -> m (Ptr ()) Source #

Get the value of the “`dummy3`” field. When overloading is enabled, this is equivalent to

    get hookList #dummy3

setHookListDummy3 :: MonadIO m => HookList -> Ptr () -> m () Source #

Set the value of the “`dummy3`” field. When overloading is enabled, this is equivalent to

    set hookList [ #dummy3 := value ]

## finalizeHook

the function to call to finalize a `Hook` element. The default behaviour is to call the hooks `destroy` function

clearHookListFinalizeHook :: MonadIO m => HookList -> m () Source #

Set the value of the “`finalize_hook`” field to `Nothing`. When overloading is enabled, this is equivalent to

    clear #finalizeHook

getHookListFinalizeHook :: MonadIO m => HookList -> m (Maybe HookFinalizeFunc) Source #

Get the value of the “`finalize_hook`” field. When overloading is enabled, this is equivalent to

    get hookList #finalizeHook

setHookListFinalizeHook :: MonadIO m => HookList -> FunPtr C_HookFinalizeFunc -> m () Source #

Set the value of the “`finalize_hook`” field. When overloading is enabled, this is equivalent to

    set hookList [ #finalizeHook := value ]

## hookSize

the size of the `HookList` elements, in bytes

getHookListHookSize :: MonadIO m => HookList -> m Word32 Source #

Get the value of the “`hook_size`” field. When overloading is enabled, this is equivalent to

    get hookList #hookSize

setHookListHookSize :: MonadIO m => HookList -> Word32 -> m () Source #

Set the value of the “`hook_size`” field. When overloading is enabled, this is equivalent to

    set hookList [ #hookSize := value ]

## hooks

the first `Hook` element in the list

clearHookListHooks :: MonadIO m => HookList -> m () Source #

Set the value of the “`hooks`” field to `Nothing`. When overloading is enabled, this is equivalent to

    clear #hooks

getHookListHooks :: MonadIO m => HookList -> m (Maybe Hook) Source #

Get the value of the “`hooks`” field. When overloading is enabled, this is equivalent to

    get hookList #hooks

setHookListHooks :: MonadIO m => HookList -> Ptr Hook -> m () Source #

Set the value of the “`hooks`” field. When overloading is enabled, this is equivalent to

    set hookList [ #hooks := value ]

## isSetup

1 if the `HookList` has been initialized

getHookListIsSetup :: MonadIO m => HookList -> m Word32 Source #

Get the value of the “`is_setup`” field. When overloading is enabled, this is equivalent to

    get hookList #isSetup

setHookListIsSetup :: MonadIO m => HookList -> Word32 -> m () Source #

Set the value of the “`is_setup`” field. When overloading is enabled, this is equivalent to

    set hookList [ #isSetup := value ]

## seqId

the next free `Hook` id

getHookListSeqId :: MonadIO m => HookList -> m CULong Source #

Get the value of the “`seq_id`” field. When overloading is enabled, this is equivalent to

    get hookList #seqId

setHookListSeqId :: MonadIO m => HookList -> CULong -> m () Source #

Set the value of the “`seq_id`” field. When overloading is enabled, this is equivalent to

    set hookList [ #seqId := value ]