.TH "include/Zycore/List.h" 3 "Version 1.5.0.0" "Zycore" \" -*- nroff -*- .ad l .nh .SH NAME include/Zycore/List.h .SH SYNOPSIS .br .PP \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br \fC#include \fP .br .SS "Classes" .in +1c .ti -1c .RI "struct \fBZyanListNode_\fP" .br .ti -1c .RI "struct \fBZyanList_\fP" .br .in -1c .SS "Macros" .in +1c .ti -1c .RI "#define \fBZYAN_LIST_INITIALIZER\fP" .br .ti -1c .RI "#define \fBZYAN_LIST_GET\fP(type, node) (*(const type*)\fBZyanListGetNodeData\fP(node))" .br .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef struct \fBZyanListNode_\fP \fBZyanListNode\fP" .br .ti -1c .RI "typedef struct \fBZyanList_\fP \fBZyanList\fP" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZYAN_REQUIRES_LIBC\fP \fBZyanStatus\fP \fBZyanListInit\fP (\fBZyanList\fP *list, ZyanUSize element_size, \fBZyanMemberProcedure\fP destructor)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListInitEx\fP (\fBZyanList\fP *list, ZyanUSize element_size, \fBZyanMemberProcedure\fP destructor, \fBZyanAllocator\fP *allocator)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListInitCustomBuffer\fP (\fBZyanList\fP *list, ZyanUSize element_size, \fBZyanMemberProcedure\fP destructor, void *buffer, ZyanUSize capacity)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListDestroy\fP (\fBZyanList\fP *list)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZYAN_REQUIRES_LIBC\fP \fBZyanStatus\fP \fBZyanListDuplicate\fP (\fBZyanList\fP *destination, const \fBZyanList\fP *source)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListDuplicateEx\fP (\fBZyanList\fP *destination, const \fBZyanList\fP *source, \fBZyanAllocator\fP *allocator)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListDuplicateCustomBuffer\fP (\fBZyanList\fP *destination, const \fBZyanList\fP *source, void *buffer, ZyanUSize capacity)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetHeadNode\fP (const \fBZyanList\fP *list, const \fBZyanListNode\fP **node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetTailNode\fP (const \fBZyanList\fP *list, const \fBZyanListNode\fP **node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetPrevNode\fP (const \fBZyanListNode\fP **node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetNextNode\fP (const \fBZyanListNode\fP **node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP const void * \fBZyanListGetNodeData\fP (const \fBZyanListNode\fP *node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetNodeDataEx\fP (const \fBZyanListNode\fP *node, const void **value)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP void * \fBZyanListGetNodeDataMutable\fP (const \fBZyanListNode\fP *node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetNodeDataMutableEx\fP (const \fBZyanListNode\fP *node, void **value)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListSetNodeData\fP (const \fBZyanList\fP *list, const \fBZyanListNode\fP *node, const void *value)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListPushBack\fP (\fBZyanList\fP *list, const void *item)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListPushFront\fP (\fBZyanList\fP *list, const void *item)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListEmplaceBack\fP (\fBZyanList\fP *list, void **item, \fBZyanMemberFunction\fP constructor)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListEmplaceFront\fP (\fBZyanList\fP *list, void **item, \fBZyanMemberFunction\fP constructor)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListPopBack\fP (\fBZyanList\fP *list)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListPopFront\fP (\fBZyanList\fP *list)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListRemove\fP (\fBZyanList\fP *list, const \fBZyanListNode\fP *node)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListRemoveRange\fP (\fBZyanList\fP *list, const \fBZyanListNode\fP *first, const \fBZyanListNode\fP *last)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListClear\fP (\fBZyanList\fP *list)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListResize\fP (\fBZyanList\fP *list, ZyanUSize size)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListResizeEx\fP (\fBZyanList\fP *list, ZyanUSize size, const void *initializer)" .br .ti -1c .RI "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP \fBZyanListGetSize\fP (const \fBZyanList\fP *list, ZyanUSize *size)" .br .in -1c .SH "Detailed Description" .PP Implements a doubly linked list\&. .SH "Macro Definition Documentation" .PP .SS "#define ZYAN_LIST_GET(type, node) (*(const type*)\fBZyanListGetNodeData\fP(node))" Returns the data value of the given \fCnode\fP\&. .PP \fBParameters\fP .RS 4 \fItype\fP The desired value type\&. .br \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .RE .PP \fBReturns\fP .RS 4 The data value of the given \fCnode\fP\&. .RE .PP Note that this function is unsafe and might dereference a null-pointer\&. .SS "#define ZYAN_LIST_INITIALIZER" \fBValue:\fP.PP .nf { \\ /* allocator */ ZYAN_NULL, \\ /* size */ 0, \\ /* element_size */ 0, \\ /* head */ ZYAN_NULL, \\ /* destructor */ ZYAN_NULL, \\ /* tail */ ZYAN_NULL, \\ /* buffer */ ZYAN_NULL, \\ /* capacity */ 0, \\ /* first_unused */ ZYAN_NULL \\ } .fi Defines an uninitialized \fCZyanList\fP instance\&. .SH "Typedef Documentation" .PP .SS "typedef struct \fBZyanList_\fP \fBZyanList\fP" Defines the \fCZyanList\fP struct\&. .PP All fields in this struct should be considered as 'private'\&. Any changes may lead to unexpected behavior\&. .SS "typedef struct \fBZyanListNode_\fP \fBZyanListNode\fP" Defines the \fCZyanListNode\fP struct\&. .PP All fields in this struct should be considered as 'private'\&. Any changes may lead to unexpected behavior\&. .SH "Function Documentation" .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListClear (\fBZyanList\fP * list)" Erases all elements of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListDestroy (\fBZyanList\fP * list)" Destroys the given \fCZyanList\fP instance\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZYAN_REQUIRES_LIBC\fP \fBZyanStatus\fP ZyanListDuplicate (\fBZyanList\fP * destination, const \fBZyanList\fP * source)" Initializes a new \fCZyanList\fP instance by duplicating an existing list\&. .PP \fBParameters\fP .RS 4 \fIdestination\fP A pointer to the (uninitialized) destination \fCZyanList\fP instance\&. .br \fIsource\fP A pointer to the source list\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP The memory for the list is dynamically allocated by the default allocator\&. .PP Finalization with \fCZyanListDestroy\fP is required for all instances created by this function\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListDuplicateCustomBuffer (\fBZyanList\fP * destination, const \fBZyanList\fP * source, void * buffer, ZyanUSize capacity)" Initializes a new \fCZyanList\fP instance by duplicating an existing list and configures it to use a custom user defined buffer with a fixed size\&. .PP \fBParameters\fP .RS 4 \fIdestination\fP A pointer to the (uninitialized) destination \fCZyanList\fP instance\&. .br \fIsource\fP A pointer to the source list\&. .br \fIbuffer\fP A pointer to the buffer that is used as storage for the elements\&. .br \fIcapacity\fP The maximum capacity (number of bytes) of the buffer including the space required for the list-nodes\&. .RE .PP This function will fail, if the capacity of the buffer is not sufficient to store all elements of the source list\&. .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP The buffer capacity required to store \fCn\fP elements of type \fCT\fP is be calculated by: \fCsize = n * sizeof(ZyanListNode) + n * sizeof(T)\fP .PP Finalization is not required for instances created by this function\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListDuplicateEx (\fBZyanList\fP * destination, const \fBZyanList\fP * source, \fBZyanAllocator\fP * allocator)" Initializes a new \fCZyanList\fP instance by duplicating an existing list and sets a custom \fCallocator\fP\&. .PP \fBParameters\fP .RS 4 \fIdestination\fP A pointer to the (uninitialized) destination \fCZyanList\fP instance\&. .br \fIsource\fP A pointer to the source list\&. .br \fIallocator\fP A pointer to a \fCZyanAllocator\fP instance\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP Finalization with \fCZyanListDestroy\fP is required for all instances created by this function\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListEmplaceBack (\fBZyanList\fP * list, void ** item, \fBZyanMemberFunction\fP constructor)" Constructs an \fCitem\fP in-place at the end of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIitem\fP Receives a pointer to the new item\&. .br \fIconstructor\fP The constructor callback or \fCZYAN_NULL\fP\&. The new item will be in undefined state, if no constructor was passed\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListEmplaceFront (\fBZyanList\fP * list, void ** item, \fBZyanMemberFunction\fP constructor)" Constructs an \fCitem\fP in-place at the beginning of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIitem\fP Receives a pointer to the new item\&. .br \fIconstructor\fP The constructor callback or \fCZYAN_NULL\fP\&. The new item will be in undefined state, if no constructor was passed\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetHeadNode (const \fBZyanList\fP * list, const \fBZyanListNode\fP ** node)" Returns a pointer to the first \fCZyanListNode\fP struct of the given list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fInode\fP Receives a pointer to the first \fCZyanListNode\fP struct of the list\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetNextNode (const \fBZyanListNode\fP ** node)" Receives a pointer to the next \fCZyanListNode\fP struct linked to the passed one\&. .PP \fBParameters\fP .RS 4 \fInode\fP Receives a pointer to the next \fCZyanListNode\fP struct linked to the passed one\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP const void * ZyanListGetNodeData (const \fBZyanListNode\fP * node)" Returns a constant pointer to the data of the given \fCnode\fP\&. .PP \fBParameters\fP .RS 4 \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .RE .PP \fBReturns\fP .RS 4 A constant pointer to the the data of the given \fCnode\fP or \fCZYAN_NULL\fP, if an error occured\&. .RE .PP Take a look at \fCZyanListGetNodeDataEx\fP, if you need a function that returns a zyan status code\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetNodeDataEx (const \fBZyanListNode\fP * node, const void ** value)" Returns a constant pointer to the data of the given \fCnode\fP\&.\&. .PP \fBParameters\fP .RS 4 \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .br \fIvalue\fP Receives a constant pointer to the data of the given \fCnode\fP\&. .RE .PP Take a look at \fCZyanListGetNodeData\fP, if you need a function that directly returns a pointer\&. .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP void * ZyanListGetNodeDataMutable (const \fBZyanListNode\fP * node)" Returns a mutable pointer to the data of the given \fCnode\fP\&. .PP \fBParameters\fP .RS 4 \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .RE .PP \fBReturns\fP .RS 4 A mutable pointer to the the data of the given \fCnode\fP or \fCZYAN_NULL\fP, if an error occured\&. .RE .PP Take a look at \fCZyanListGetPointerMutableEx\fP instead, if you need a function that returns a zyan status code\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetNodeDataMutableEx (const \fBZyanListNode\fP * node, void ** value)" Returns a mutable pointer to the data of the given \fCnode\fP\&.\&. .PP \fBParameters\fP .RS 4 \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .br \fIvalue\fP Receives a mutable pointer to the data of the given \fCnode\fP\&. .RE .PP Take a look at \fCZyanListGetNodeDataMutable\fP, if you need a function that directly returns a pointer\&. .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetPrevNode (const \fBZyanListNode\fP ** node)" Receives a pointer to the previous \fCZyanListNode\fP struct linked to the passed one\&. .PP \fBParameters\fP .RS 4 \fInode\fP Receives a pointer to the previous \fCZyanListNode\fP struct linked to the passed one\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetSize (const \fBZyanList\fP * list, ZyanUSize * size)" Returns the current size of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIsize\fP Receives the size of the list\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListGetTailNode (const \fBZyanList\fP * list, const \fBZyanListNode\fP ** node)" Returns a pointer to the last \fCZyanListNode\fP struct of the given list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fInode\fP Receives a pointer to the last \fCZyanListNode\fP struct of the list\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZYAN_REQUIRES_LIBC\fP \fBZyanStatus\fP ZyanListInit (\fBZyanList\fP * list, ZyanUSize element_size, \fBZyanMemberProcedure\fP destructor)" Initializes the given \fCZyanList\fP instance\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIelement_size\fP The size of a single element in bytes\&. .br \fIdestructor\fP A destructor callback that is invoked every time an item is deleted, or \fCZYAN_NULL\fP if not needed\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP The memory for the list elements is dynamically allocated by the default allocator\&. .PP Finalization with \fCZyanListDestroy\fP is required for all instances created by this function\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListInitCustomBuffer (\fBZyanList\fP * list, ZyanUSize element_size, \fBZyanMemberProcedure\fP destructor, void * buffer, ZyanUSize capacity)" Initializes the given \fCZyanList\fP instance and configures it to use a custom user defined buffer with a fixed size\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIelement_size\fP The size of a single element in bytes\&. .br \fIdestructor\fP A destructor callback that is invoked every time an item is deleted, or \fCZYAN_NULL\fP if not needed\&. .br \fIbuffer\fP A pointer to the buffer that is used as storage for the elements\&. .br \fIcapacity\fP The maximum capacity (number of bytes) of the buffer including the space required for the list-nodes\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP The buffer capacity required to store \fCn\fP elements of type \fCT\fP is be calculated by: \fCsize = n * sizeof(ZyanListNode) + n * sizeof(T)\fP .PP Finalization is not required for instances created by this function\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListInitEx (\fBZyanList\fP * list, ZyanUSize element_size, \fBZyanMemberProcedure\fP destructor, \fBZyanAllocator\fP * allocator)" Initializes the given \fCZyanList\fP instance and sets a custom \fCallocator\fP\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIelement_size\fP The size of a single element in bytes\&. .br \fIdestructor\fP A destructor callback that is invoked every time an item is deleted, or \fCZYAN_NULL\fP if not needed\&. .br \fIallocator\fP A pointer to a \fCZyanAllocator\fP instance\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP Finalization with \fCZyanListDestroy\fP is required for all instances created by this function\&. .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListPopBack (\fBZyanList\fP * list)" Removes the last element of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListPopFront (\fBZyanList\fP * list)" Removes the firstelement of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListPushBack (\fBZyanList\fP * list, const void * item)" Adds a new \fCitem\fP to the end of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIitem\fP A pointer to the item to add\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListPushFront (\fBZyanList\fP * list, const void * item)" Adds a new \fCitem\fP to the beginning of the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIitem\fP A pointer to the item to add\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListRemove (\fBZyanList\fP * list, const \fBZyanListNode\fP * node)" Removes the given \fCnode\fP from the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListRemoveRange (\fBZyanList\fP * list, const \fBZyanListNode\fP * first, const \fBZyanListNode\fP * last)" Removes multiple nodes from the list\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIfirst\fP A pointer to the first node\&. .br \fIlast\fP A pointer to the last node\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListResize (\fBZyanList\fP * list, ZyanUSize size)" Resizes the given \fCZyanList\fP instance\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIsize\fP The new size of the list\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListResizeEx (\fBZyanList\fP * list, ZyanUSize size, const void * initializer)" Resizes the given \fCZyanList\fP instance\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fIsize\fP The new size of the list\&. .br \fIinitializer\fP A pointer to a value to be used as initializer for new items\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SS "\fBZYCORE_EXPORT\fP \fBZyanStatus\fP ZyanListSetNodeData (const \fBZyanList\fP * list, const \fBZyanListNode\fP * node, const void * value)" Assigns a new data value to the given \fCnode\fP\&. .PP \fBParameters\fP .RS 4 \fIlist\fP A pointer to the \fCZyanList\fP instance\&. .br \fInode\fP A pointer to the \fCZyanListNode\fP struct\&. .br \fIvalue\fP The value to assign\&. .RE .PP \fBReturns\fP .RS 4 A zyan status code\&. .RE .PP .SH "Author" .PP Generated automatically by Doxygen for Zycore from the source code\&.