logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Author

       Generated automatically by Doxygen for Zycore from the source code.

Zycore                                           Version 1.5.2.0                                    ZyanList_(3)

Detailed Description

       Defines the ZyanList struct.

       All fields in this struct should be considered as 'private'. Any changes may lead to unexpected behavior.

Member Data Documentation

ZyanAllocator*ZyanList_::allocator
       The memory allocator.

   void*ZyanList_::buffer
       The data buffer.

       Only used for instances created by ZyanListInitCustomBuffer.

   ZyanUSizeZyanList_::capacity
       The data buffer capacity (number of bytes).

       Only used for instances created by ZyanListInitCustomBuffer.

   ZyanMemberProcedureZyanList_::destructor
       The element destructor callback.

   ZyanUSizeZyanList_::element_size
       The size of a single element in bytes.

   ZyanListNode*ZyanList_::first_unused
       The first unused node.

       When removing a node, the first-unused value is updated to point at the removed node and the next node of
       the removed node will be updated to point at the old first-unused node.

       When appending the memory of the first unused-node is recycled to store the new node. The value of the
       first-unused node is then updated to point at the reused nodes next node.

       If the first-unused value is ZYAN_NULL, any new node will be 'allocated' behind the tail node (if there
       is enough space left in the fixed size buffer).

       Only used for instances created by ZyanListInitCustomBuffer.

   ZyanListNode*ZyanList_::head
       The head node.

   ZyanUSizeZyanList_::size
       The current number of elements in the list.

   ZyanListNode*ZyanList_::tail
       The tail node.

Name

       ZyanList_

Synopsis

       #include <List.h>

   PublicAttributesZyanAllocator * allocator
       ZyanUSize size
       ZyanUSize element_sizeZyanMemberProceduredestructorZyanListNode * headZyanListNode * tail
       void * buffer
       ZyanUSize capacityZyanListNode * first_unused

See Also