18.2.177. PMIx_Byte_object_free

PMIx_Byte_object_free — Release an array of pmix_byte_object_t(5) structures and its storage.

18.2.177.1. SYNOPSIS

#include <pmix.h>

void PMIx_Byte_object_free(pmix_byte_object_t *g, size_t n);

18.2.177.1.1. Python Syntax

No Python equivalent

18.2.177.2. INPUT PARAMETERS

18.2.177.3. DESCRIPTION

Release an array of pmix_byte_object_t structures that was allocated by PMIx_Byte_object_create(3). Each of the n elements is destructed (freeing any bytes payload it holds), and then the storage for the array itself is freed.

If g is NULL the function does nothing.

18.2.177.4. RETURN VALUE

PMIx_Byte_object_free returns no value (void).

18.2.177.5. NOTES

PMIx_Byte_object_free frees the array storage itself, so it must only be used on arrays obtained from PMIx_Byte_object_create(3). To release only the payload of a caller-provided (stack or embedded) object without freeing its storage, use PMIx_Byte_object_destruct(3) instead.

The convenience macro PMIX_BYTE_OBJECT_FREE wraps this function and additionally sets the caller’s pointer to NULL.