.. _man5-pmix_envar_t: pmix_envar_t ============ .. include_body `pmix_envar_t` |mdash| Specifies a modification to an environment variable SYNTAX ------ C Syntax ^^^^^^^^ .. code-block:: c #include typedef struct { char *envar; char *value; char separator; } pmix_envar_t; DESCRIPTION ----------- The `pmix_envar_t` structure specifies a modification to be made to an environment variable. Standard environment variables (e.g., ``PATH``, ``LD_LIBRARY_PATH``, and ``LD_PRELOAD``) take multiple arguments separated by delimiters. Unfortunately, the delimiters depend upon the variable itself |mdash| some use semi-colons, some colons, etc. Thus, the operation requires not only the name of the variable to be modified and the value to be inserted, but also the separator to be used when composing the aggregate value. The fields are: ``envar`` The name of the environment variable to be modified, given as a string. ``value`` The value to be inserted into the named environment variable. ``separator`` The single character used as the delimiter when composing the aggregate value of the environment variable from its constituent arguments. STATIC INITIALIZER ------------------ A statically declared ``pmix_envar_t`` may be initialized with the ``PMIX_ENVAR_STATIC_INIT`` macro, which sets ``envar`` and ``value`` to ``NULL`` and ``separator`` to the null character ``'\0'``: .. code-block:: c pmix_envar_t envar = PMIX_ENVAR_STATIC_INIT; .. seealso:: :ref:`pmix_value_t(5) `, :ref:`pmix_info_t(5) `