cpiElementValueValue

Zweck

Diese Funktion ruft das Wertobjekt vom angegebenen Syntaxelement ab. Dieses Wertobjekt ist insofern nicht transparent, als es nicht abgefragt werden kann. Es kann verwendet werden, um mit der Funktion cpiSetElementValueValue den Wert eines Elements festzulegen oder von einem anderen Element abzuleiten, ohne dass sein Typ bekannt ist. Dies kann von Parsern verwendet werden, die das Verhalten außer Kraft setzen, indem sie die Implementierungsfunktionen cpiElementValue und cpiSetElementValue aufrufen.

Syntax

const CciElementValue* cpiElementValueValue(
  int*         returnCode,
  CciElement*  targetElement);

Parameter

returnCode
Empfängt den Rückkehrcode von der Funktion (Ausgabe). Mögliche Rückkehrcodes sind:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
targetElement
Gibt die Adresse des Zielsyntaxelementobjekts an (Eingabe).

Rückgabewerte

Die Adresse des Objekts CciElementValue, das im angegebenen Zielsyntaxelement gespeichert ist, wird zurückgegeben. Wenn ein Fehler auftritt, wird null (CCI_NULL_ADDR) zurückgegeben, und returnCode gibt die Fehlerursache an.

Beispiel

Dieses Beispiel wurde aus der Parser-Beispieldatei BipSampPluginParser.c entnommen (Zeile 705 bis 725):

const CciElementValue* cpiElementValue(
  CciParser*  parser,
  CciElement* element
){
  CciElement* firstChild;
  const CciElementValue* value;
  int         rc;

  if ((cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_VALUE) ||
      (cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME_VALUE)) {
    value = cpiElementValueValue(&rc, element);
  }
  else if (cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME) {
    firstChild = cniFirstChild(&rc, element);
    value = cpiElementValueValue(&rc, firstChild);
  }
  else {
  }

  return(value);
}
Zugehörige Konzepte
Benutzerdefinierte Parser
Benutzerdefinierte Erweiterungen
Zugehörige Tasks
Parser in C erstellen
Zugehörige Verweise
cpiElementName
cpiElementType
cpiElementValue-Gruppe
C-Parser-Dienstprogrammfunktionen
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2005 Letzte Aktualisierung: Nov 17, 2005
as08460_