cpiElementValueValue

Zweck

Ruft das Wertobjekt vom angegebenen Syntaxelement ab. Dieses Wertobjekt ist insofern nicht transparent, als es nicht abgefragt werden kann. Es kann dazu verwendet werden, den Wert eines Elements mit Hilfe eines anderen festzulegen oder von diesem abzuleiten, ohne dessen Typ zu kennen, indem die Funktion cpiSetElementValueValue verwendet wird. Diese kann von Parsern verwendet werden, die ein bestimmtes Verhalten außer Kraft setzen, indem sie die Implementierungsfunktionen cpiElementValue und cpiSetElementValue aufrufen.

Syntax

const CciElementValue* cpiElementValueValue(
  int*         Rückkehrcode,
  CciElement*  Zielelement);

Parameter

Rückkehrcode
Empfängt den Rückkehrcode von der Funktion (Ausgabe).
Mögliche Rückkehrcodes sind:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
Zielelement
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 der Rückkehrcode gibt den Grund für den Fehler an.

Beispielprogramm

Dieses Beispiel stammt aus der Musterparserdatei BipSampPluginParser.c (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, 2006 Letzte Aktualisierung: 23. Aug. 2006
as08460_