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

include/Zycore/Allocator.h

Author

       Generated automatically by Doxygen for Zycore from the source code.

Zycore                                           Version 1.5.2.0                   include/Zycore/Allocator.h(3)

Function Documentation

ZYCORE_EXPORTZYAN_REQUIRES_LIBCZyanAllocator*ZyanAllocatorDefault(void)
       Returns the default ZyanAllocator instance.

       Returns
           A pointer to the default ZyanAllocator instance.

       The default allocator uses the default memory manager to allocate memory on the heap.

       You should in no case modify the returned allocator instance to avoid unexpected behavior.

   ZYCORE_EXPORTZyanStatusZyanAllocatorInit(ZyanAllocator*allocator,ZyanAllocatorAllocateallocate,ZyanAllocatorAllocatereallocate,ZyanAllocatorDeallocatedeallocate)
       Initializes the given ZyanAllocator instance.

       Parametersallocator A pointer to the ZyanAllocator instance.
           allocate The allocate function.
           reallocate The reallocate function.
           deallocate The deallocate function.

       Returns
           A zyan status code.

Name

       include/Zycore/Allocator.h

Synopsis

       #include <Zycore/Status.h>
       #include <Zycore/Types.h>

   Classes
       struct ZyanAllocator_Typedefs
       typedef ZyanStatus(* ZyanAllocatorAllocate) (struct ZyanAllocator_ *allocator, void **p, ZyanUSize
           element_size, ZyanUSize n)
       typedef ZyanStatus(* ZyanAllocatorDeallocate) (struct ZyanAllocator_ *allocator, void *p, ZyanUSize
           element_size, ZyanUSize n)
       typedef struct ZyanAllocator_ZyanAllocatorFunctionsZYCORE_EXPORTZyanStatusZyanAllocatorInit (ZyanAllocator *allocator, ZyanAllocatorAllocate allocate,
           ZyanAllocatorAllocate reallocate, ZyanAllocatorDeallocate deallocate)
       ZYCORE_EXPORTZYAN_REQUIRES_LIBCZyanAllocator * ZyanAllocatorDefault (void)

Typedef Documentation

typedefstructZyanAllocator_ZyanAllocator
       Defines the ZyanAllocator struct.

       This is the base class for all custom allocator implementations.

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

   typedefZyanStatus(*ZyanAllocatorAllocate)(structZyanAllocator_*allocator,void**p,ZyanUSizeelement_size,ZyanUSizen)
       Defines the ZyanAllocatorAllocate function prototype.

       Parametersallocator A pointer to the ZyanAllocator instance.
           p Receives a pointer to the first memory block sufficient to hold an array of n elements with a size
           of element_size.
           element_size The size of a single element.
           n The number of elements to allocate storage for.

       Returns
           A zyan status code.

       This prototype is used for the allocate() and reallocate() functions.

       The result of the reallocate() function is undefined, if p does not point to a memory block previously
       obtained by (re-)allocate().

   typedefZyanStatus(*ZyanAllocatorDeallocate)(structZyanAllocator_*allocator,void*p,ZyanUSizeelement_size,ZyanUSizen)
       Defines the ZyanAllocatorDeallocate function prototype.

       Parametersallocator A pointer to the ZyanAllocator instance.
           p The pointer obtained from (re-)allocate().
           element_size The size of a single element.
           n The number of elements earlier passed to (re-)allocate().

       Returns
           A zyan status code.

See Also