18.2.139. PMIx_Data_array_destruct

PMIx_Data_array_destruct — Release the element storage of a pmix_data_array_t(5).

18.2.139.1. SYNOPSIS

#include <pmix.h>

void PMIx_Data_array_destruct(pmix_data_array_t *d);

18.2.139.1.1. Python Syntax

No Python equivalent

18.2.139.2. INPUT PARAMETERS

18.2.139.3. DESCRIPTION

Release the backing element array referenced by the array field of a pmix_data_array_t. The release is type-aware: based on the type field, each of the size elements has its own payload released using the appropriate per-type routine (for example, string elements are individually freed, and PMIX_INFO, PMIX_VALUE, PMIX_APP, and similar complex element types are freed via their type-specific free routines) before the element array itself is freed. On return, array is set to NULL, type is set to PMIX_UNDEF, and size is set to zero.

PMIx_Data_array_destruct does not free the storage of the pmix_data_array_t structure itself; it releases only the element storage it references.

18.2.139.4. RETURN VALUE

PMIx_Data_array_destruct returns no value (void).

18.2.139.5. NOTES

PMIx_Data_array_destruct is the counterpart of PMIx_Data_array_construct(3). To release a pmix_data_array_t structure that was itself heap-allocated by PMIx_Data_array_create(3), use PMIx_Data_array_free(3), which destructs the elements and then frees the structure.