Scroll to navigation

PMIX_REGATTR_DESTRUCT(3) OpenPMIx PMIX_REGATTR_DESTRUCT(3)

PMIx_Regattr_destruct — Release the contents of a pmix_regattr_t(5) <#man5-pmix-regattr-t> structure.

SYNOPSIS

#include <pmix.h>
void PMIx_Regattr_destruct(pmix_regattr_t *p);


Python Syntax

No Python equivalent

INPUT PARAMETERS

•
p: Pointer to the pmix_regattr_t(5) <#man5-pmix-regattr-t> structure whose contents are to be released.

DESCRIPTION

Release the dynamically allocated contents of a pmix_regattr_t <#man5-pmix-regattr-t> structure. The function frees the name string (if present) and frees the description string array (if present), resetting both pointers to NULL. The fixed-size string key and the type field require no separate release.

PMIx_Regattr_destruct releases only the payload the structure references; it does not free the storage of the pmix_regattr_t structure itself. It is therefore the correct counterpart to PMIx_Regattr_construct(3) <#man3-pmix-regattr-construct> for structures whose storage was supplied by the caller (stack or embedded).

If p is NULL, the function does nothing.

RETURN VALUE

PMIx_Regattr_destruct returns no value (void).

NOTES

The PMIX_REGATTR_DESTRUCT convenience macro is a direct wrapper for this function.

To release an array of registration-attribute structures allocated by PMIx_Regattr_create(3) <#man3-pmix-regattr-create> — including the array storage itself — use PMIx_Regattr_free(3) <#man3-pmix-regattr-free> instead.

See also:

PMIx_Regattr_construct(3) <#man3-pmix-regattr-construct>, PMIx_Regattr_create(3) <#man3-pmix-regattr-create>, PMIx_Regattr_free(3) <#man3-pmix-regattr-free>, PMIx_Regattr_load(3) <#man3-pmix-regattr-load>, PMIx_Regattr_xfer(3) <#man3-pmix-regattr-xfer>, pmix_regattr_t(5) <#man5-pmix-regattr-t>


Copyright

2014-2026, OpenPMIx Community

September 27, 2026