An instance for a custom memory allocator
Setting the pointers of this structure allows the developer to implement
custom memory allocators. The global memory allocator can be set by using
"GIT_OPT_SET_ALLOCATOR" with the git_libgit2_opts function. Keep in mind
that all fields need to be set to a proper function.
Allocate n bytes of memory
Allocate memory for an array of nelem elements, where each element has a size of elsize. Returned memory shall be initialized to all-zeroes
Allocate memory for the string str and duplicate its contents.
Equivalent to the gstrdup function, but only duplicating at most n + 1 bytes
Equivalent to gstrndup, but will always duplicate exactly n bytes of str. Thus, out of bounds reads at str may happen.
This function shall deallocate the old object ptr and return a pointer to a new object that has the size specified by size. In case ptr is NULL, a new array shall be allocated.
This function shall be equivalent to grealloc, but allocating neleme * elsize bytes.
This function shall allocate a new array of nelem elements, where each element has a size of elsize bytes.
This function shall free the memory pointed to by ptr. In case ptr is NULL, this shall be a no-op.