This function adds a new (and currently unattached) syntax element to the syntax element tree before the specified target element. The newly added element becomes the previous sibling of the target element.
void cpiAddBefore(
int* returnCode,
CciElement* targetElement,
CciElement* newElement);
None. If an error occurs, returnCode indicates the reason for the error.
void cpiSetElementValue(
CciParser* parser,
CciElement* element,
CciElementValue* value
){
CciElement* newElement;
int rc;
if ((cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_VALUE) ||
(cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME_VALUE)) {
cpiSetElementValueValue(&rc, element, value);
}
else if (cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME) {
/* Create a new value element, add before the current value element,
and set the value */
newElement = cpiCreateElement(&rc, parser);
cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_VALUE);
cpiSetElementValueValue(&rc, newElement, value);
cpiAddBefore(&rc, element, newElement);
}
else {
}
return;
}