gi-glib-2.0.12: 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.Queue

Contents

Description

Contains the public fields of a [Queue][glib-Double-ended-Queues].

Synopsis

Exported types

newtype Queue #

Constructors

Queue (ManagedPtr Queue) 

Instances

WrappedPtr Queue # 
(~) AttrOpTag tag AttrSet => Constructible Queue tag # 

Methods

new :: MonadIO m => (ManagedPtr Queue -> Queue) -> [AttrOp Queue tag] -> m Queue #

((~) * info (ResolveQueueMethod t Queue), MethodInfo * info Queue p) => IsLabel t (Queue -> p) # 

Methods

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

((~) * info (ResolveQueueMethod t Queue), MethodInfo * info Queue p) => IsLabelProxy t (Queue -> p) # 

Methods

fromLabelProxy :: Proxy Symbol t -> Queue -> p #

HasAttributeList * Queue # 
((~) * signature (m ()), MonadIO m) => MethodInfo * QueueReverseMethodInfo Queue signature # 
((~) * signature (Ptr () -> m Word32), MonadIO m) => MethodInfo * QueueRemoveAllMethodInfo Queue signature # 
((~) * signature (Ptr () -> m Bool), MonadIO m) => MethodInfo * QueueRemoveMethodInfo Queue signature # 
((~) * signature (Ptr () -> m ()), MonadIO m) => MethodInfo * QueuePushTailMethodInfo Queue signature # 
((~) * signature (Ptr () -> Int32 -> m ()), MonadIO m) => MethodInfo * QueuePushNthMethodInfo Queue signature # 
((~) * signature (Ptr () -> m ()), MonadIO m) => MethodInfo * QueuePushHeadMethodInfo Queue signature # 
((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePopTailMethodInfo Queue signature # 
((~) * signature (Word32 -> m (Ptr ())), MonadIO m) => MethodInfo * QueuePopNthMethodInfo Queue signature # 
((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePopHeadMethodInfo Queue signature # 
((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePeekTailMethodInfo Queue signature # 
((~) * signature (Word32 -> m (Ptr ())), MonadIO m) => MethodInfo * QueuePeekNthMethodInfo Queue signature # 
((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePeekHeadMethodInfo Queue signature # 
((~) * signature (m Bool), MonadIO m) => MethodInfo * QueueIsEmptyMethodInfo Queue signature # 
((~) * signature (m ()), MonadIO m) => MethodInfo * QueueInitMethodInfo Queue signature # 
((~) * signature (Ptr () -> m Int32), MonadIO m) => MethodInfo * QueueIndexMethodInfo Queue signature # 
((~) * signature (m Word32), MonadIO m) => MethodInfo * QueueGetLengthMethodInfo Queue signature # 
((~) * signature (DestroyNotify -> m ()), MonadIO m) => MethodInfo * QueueFreeFullMethodInfo Queue signature # 
((~) * signature (m ()), MonadIO m) => MethodInfo * QueueFreeMethodInfo Queue signature # 
((~) * signature (m ()), MonadIO m) => MethodInfo * QueueClearMethodInfo Queue signature # 
type AttributeList Queue # 

newZeroQueue :: MonadIO m => m Queue #

Construct a Queue struct initialized to zero.

Methods

clear

data QueueClearMethodInfo #

Instances

((~) * signature (m ()), MonadIO m) => MethodInfo * QueueClearMethodInfo Queue signature # 

queueClear #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m () 

Removes all the elements in queue. If queue elements contain dynamically-allocated memory, they should be freed first.

Since: 2.14

free

data QueueFreeMethodInfo #

Instances

((~) * signature (m ()), MonadIO m) => MethodInfo * QueueFreeMethodInfo Queue signature # 

queueFree #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m () 

Frees the memory allocated for the Queue. Only call this function if queue was created with g_queue_new(). If queue elements contain dynamically-allocated memory, they should be freed first.

If queue elements contain dynamically-allocated memory, you should either use queueFreeFull or free them manually first.

freeFull

data QueueFreeFullMethodInfo #

Instances

((~) * signature (DestroyNotify -> m ()), MonadIO m) => MethodInfo * QueueFreeFullMethodInfo Queue signature # 

queueFreeFull #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a pointer to a Queue

-> DestroyNotify

freeFunc: the function to be called to free each element's data

-> m () 

Convenience method, which frees all the memory used by a Queue, and calls the specified destroy function on every element's data.

Since: 2.32

getLength

data QueueGetLengthMethodInfo #

Instances

((~) * signature (m Word32), MonadIO m) => MethodInfo * QueueGetLengthMethodInfo Queue signature # 

queueGetLength #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m Word32

Returns: the number of items in queue

Returns the number of items in queue.

Since: 2.4

index

data QueueIndexMethodInfo #

Instances

((~) * signature (Ptr () -> m Int32), MonadIO m) => MethodInfo * QueueIndexMethodInfo Queue signature # 

queueIndex #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Ptr ()

data: the data to find

-> m Int32

Returns: the position of the first element in queue which contains data, or -1 if no element in queue contains data

Returns the position of the first element in queue which contains data.

Since: 2.4

init

data QueueInitMethodInfo #

Instances

((~) * signature (m ()), MonadIO m) => MethodInfo * QueueInitMethodInfo Queue signature # 

queueInit #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: an uninitialized Queue

-> m () 

A statically-allocated Queue must be initialized with this function before it can be used. Alternatively you can initialize it with G_QUEUE_INIT. It is not necessary to initialize queues created with g_queue_new().

Since: 2.14

isEmpty

data QueueIsEmptyMethodInfo #

Instances

((~) * signature (m Bool), MonadIO m) => MethodInfo * QueueIsEmptyMethodInfo Queue signature # 

queueIsEmpty #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue.

-> m Bool

Returns: True if the queue is empty

Returns True if the queue is empty.

peekHead

data QueuePeekHeadMethodInfo #

Instances

((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePeekHeadMethodInfo Queue signature # 

queuePeekHead #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m (Ptr ())

Returns: the data of the first element in the queue, or Nothing if the queue is empty

Returns the first element of the queue.

peekNth

data QueuePeekNthMethodInfo #

Instances

((~) * signature (Word32 -> m (Ptr ())), MonadIO m) => MethodInfo * QueuePeekNthMethodInfo Queue signature # 

queuePeekNth #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Word32

n: the position of the element

-> m (Ptr ())

Returns: the data for the n'th element of queue, or Nothing if n is off the end of queue

Returns the n'th element of queue.

Since: 2.4

peekTail

data QueuePeekTailMethodInfo #

Instances

((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePeekTailMethodInfo Queue signature # 

queuePeekTail #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m (Ptr ())

Returns: the data of the last element in the queue, or Nothing if the queue is empty

Returns the last element of the queue.

popHead

data QueuePopHeadMethodInfo #

Instances

((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePopHeadMethodInfo Queue signature # 

queuePopHead #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m (Ptr ())

Returns: the data of the first element in the queue, or Nothing if the queue is empty

Removes the first element of the queue and returns its data.

popNth

data QueuePopNthMethodInfo #

Instances

((~) * signature (Word32 -> m (Ptr ())), MonadIO m) => MethodInfo * QueuePopNthMethodInfo Queue signature # 

queuePopNth #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Word32

n: the position of the element

-> m (Ptr ())

Returns: the element's data, or Nothing if n is off the end of queue

Removes the n'th element of queue and returns its data.

Since: 2.4

popTail

data QueuePopTailMethodInfo #

Instances

((~) * signature (m (Ptr ())), MonadIO m) => MethodInfo * QueuePopTailMethodInfo Queue signature # 

queuePopTail #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m (Ptr ())

Returns: the data of the last element in the queue, or Nothing if the queue is empty

Removes the last element of the queue and returns its data.

pushHead

data QueuePushHeadMethodInfo #

Instances

((~) * signature (Ptr () -> m ()), MonadIO m) => MethodInfo * QueuePushHeadMethodInfo Queue signature # 

queuePushHead #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue.

-> Ptr ()

data: the data for the new element.

-> m () 

Adds a new element at the head of the queue.

pushNth

data QueuePushNthMethodInfo #

Instances

((~) * signature (Ptr () -> Int32 -> m ()), MonadIO m) => MethodInfo * QueuePushNthMethodInfo Queue signature # 

queuePushNth #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Ptr ()

data: the data for the new element

-> Int32

n: the position to insert the new element. If n is negative or larger than the number of elements in the queue, the element is added to the end of the queue.

-> m () 

Inserts a new element into queue at the given position.

Since: 2.4

pushTail

data QueuePushTailMethodInfo #

Instances

((~) * signature (Ptr () -> m ()), MonadIO m) => MethodInfo * QueuePushTailMethodInfo Queue signature # 

queuePushTail #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Ptr ()

data: the data for the new element

-> m () 

Adds a new element at the tail of the queue.

remove

data QueueRemoveMethodInfo #

Instances

((~) * signature (Ptr () -> m Bool), MonadIO m) => MethodInfo * QueueRemoveMethodInfo Queue signature # 

queueRemove #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Ptr ()

data: the data to remove

-> m Bool

Returns: True if data was found and removed from queue

Removes the first element in queue that contains data.

Since: 2.4

removeAll

data QueueRemoveAllMethodInfo #

Instances

((~) * signature (Ptr () -> m Word32), MonadIO m) => MethodInfo * QueueRemoveAllMethodInfo Queue signature # 

queueRemoveAll #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> Ptr ()

data: the data to remove

-> m Word32

Returns: the number of elements removed from queue

Remove all elements whose data equals data from queue.

Since: 2.4

reverse

data QueueReverseMethodInfo #

Instances

((~) * signature (m ()), MonadIO m) => MethodInfo * QueueReverseMethodInfo Queue signature # 

queueReverse #

Arguments

:: (HasCallStack, MonadIO m) 
=> Queue

queue: a Queue

-> m () 

Reverses the order of the items in queue.

Since: 2.4

Properties

head

clearQueueHead :: MonadIO m => Queue -> m () #

getQueueHead :: MonadIO m => Queue -> m [Ptr ()] #

setQueueHead :: MonadIO m => Queue -> Ptr (GList (Ptr ())) -> m () #

length

setQueueLength :: MonadIO m => Queue -> Word32 -> m () #

tail

clearQueueTail :: MonadIO m => Queue -> m () #

getQueueTail :: MonadIO m => Queue -> m [Ptr ()] #

setQueueTail :: MonadIO m => Queue -> Ptr (GList (Ptr ())) -> m () #