gi-glib-2.0.2: GLib bindings

CopyrightWill Thompson, Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria (garetxe@gmail.com)
Safe HaskellNone
LanguageHaskell2010

GI.GLib.Structs.Once

Contents

Description

A #GOnce struct controls a one-time initialization function. Any one-time initialization function must have its own unique #GOnce struct.

Synopsis

Exported types

newtype Once Source #

Constructors

Once (ForeignPtr Once) 

Instances

WrappedPtr Once Source # 

Methods

wrappedPtrCalloc :: IO (Ptr Once)

wrappedPtrCopy :: Ptr Once -> IO (Ptr Once)

wrappedPtrFree :: Maybe (FunPtr (Ptr Once -> IO ()))

(~) AttrOpTag tag AttrSet => Constructible Once tag Source # 

Methods

new :: MonadIO m => (ForeignPtr Once -> Once) -> [AttrOp Once tag] -> m Once

((~) * info (ResolveOnceMethod t Once), MethodInfo * info Once p) => IsLabel t (Once -> p) Source # 

Methods

fromLabel :: Proxy# Symbol t -> Once -> p

((~) * info (ResolveOnceMethod t Once), MethodInfo * info Once p) => IsLabelProxy t (Once -> p) Source # 

Methods

fromLabelProxy :: Proxy Symbol t -> Once -> p

type AttributeList Once Source # 
type AttributeList Once

newZeroOnce :: MonadIO m => m Once Source #

Construct a Once struct initialized to zero.

noOnce :: Maybe Once Source #

Methods

onceInitEnter

onceInitEnter :: MonadIO m => Ptr () -> m Bool Source #

onceInitLeave

onceInitLeave :: MonadIO m => Ptr () -> Word64 -> m () Source #

Properties

Retval

onceClearRetval :: MonadIO m => Once -> m () Source #

onceReadRetval :: MonadIO m => Once -> m (Ptr ()) Source #

onceRetval :: AttrLabelProxy "retval" Source #

onceWriteRetval :: MonadIO m => Once -> Ptr () -> m () Source #

Status

onceReadStatus :: MonadIO m => Once -> m OnceStatus Source #

onceStatus :: AttrLabelProxy "status" Source #

onceWriteStatus :: MonadIO m => Once -> OnceStatus -> m () Source #