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.