Scroll to navigation

PMIX_REGATTR_FREE(3) OpenPMIx PMIX_REGATTR_FREE(3)

PMIx_Regattr_free — Release an array of pmix_regattr_t(5) <#man5-pmix-regattr-t> structures and their contents.

SYNOPSIS

#include <pmix.h>
void PMIx_Regattr_free(pmix_regattr_t *p, size_t n);


Python Syntax

No Python equivalent

INPUT PARAMETERS

  • p: Pointer to the array of pmix_regattr_t(5) <#man5-pmix-regattr-t> structures to be released.
  • n: Number of structures in the array.

DESCRIPTION

Release an array of pmix_regattr_t <#man5-pmix-regattr-t> structures that was allocated by PMIx_Regattr_create(3) <#man3-pmix-regattr-create>. The function first destructs each of the n elements — freeing their name and description contents, exactly as PMIx_Regattr_destruct(3) <#man3-pmix-regattr-destruct> would — and then frees the storage of the array itself.

If p is NULL or n is zero, the function does nothing.

RETURN VALUE

PMIx_Regattr_free returns no value (void).

NOTES

The PMIX_REGATTR_FREE convenience macro is a direct wrapper for this function; in addition to calling it, the macro sets the caller’s pointer to NULL.

Use PMIx_Regattr_free only on storage obtained from PMIx_Regattr_create(3) <#man3-pmix-regattr-create>. For a caller-provided (stack or embedded) structure, use PMIx_Regattr_destruct(3) <#man3-pmix-regattr-destruct> instead, which releases the contents without freeing the structure storage.

See also:

PMIx_Regattr_construct(3) <#man3-pmix-regattr-construct>, PMIx_Regattr_destruct(3) <#man3-pmix-regattr-destruct>, PMIx_Regattr_create(3) <#man3-pmix-regattr-create>, 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