Diese optionale Funktion legt den Wert eines angegebenen Elements fest.
Sie wird vom Broker aufgerufen, wenn der Wert eines Syntaxelements festgelegt werden soll. Sie bietet einem benutzerdefinierten Parser die Möglichkeit, das Verhalten beim Festlegen von Elementwerten außer Kraft zu setzen.
Definiert in | Typ | Mitglied |
---|---|---|
CPI_VFT | Optional | iFpSetElementValue |
void cpiSetElementValue(
CciParser* parser,
CciElement* currentElement,
CciElementValue* value);
Keine.
Das folgende Beispiel stammt aus der Musterparserdatei BipSampPluginParser.c:
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) {
/* Erstellen Sie ein neues Wertelement, fügen Sie es als erstes untergeordnetes Element hinzu und legen Sie den Wert fest */
newElement = cpiCreateElement(&rc, parser);
cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_VALUE);
cpiSetElementValueValue(&rc, newElement, value);
cpiAddAsFirstChild(&rc, element, newElement);
}
else {
}
return;
}