cpiSetElementCompleteNext

Zweck

Diese Funktion legt für das Flag 'next child complete' (nächstes untergeordnetes Element vollständig) im Zielsyntaxelement den angegebenen Wert fest.

Syntax

void cpiSetElementCompleteNext(
int*         returnCode,
CciElement*  targetElement,
CciBool      value);

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).
value
Der Wert, der in dem Flag festgelegt werden soll (Eingabe).

Rückgabewerte

Keine. Wenn ein Fehler auftritt, gibt returnCode die Fehlerursache an.

Beispiel

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

/* Rufen Sie einen Zeiger zum Start des Tags ab */
startMarker = (char*)pc->iBuffer+(int)pc->iIndex;
/* Überspringen Sie den Tag */
goToNameEnd( (PARSER_CONTEXT_ST *)context, parser );
/* Rufen Sie einen Zeiger zum Tagende ab */
endMarker = (char*)pc->iBuffer+(int)pc->iIndex;
/* Berechnen Sie die Größe des Tags */
markedSize = (size_t)endMarker-(int)startMarker;
/* Konvertieren Sie den Tag ins Brokerformat */
data = CciNString((char *)startMarker, markedSize, pc->iCcsid);
/* Erstellen Sie einen neues Namenselement für den Tag */
newElement = cpiCreateElement(&rc, parser);
cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_NAME);
cpiSetElementName(&rc, newElement, data);
cpiSetElementCompletePrevious(&rc, newElement, 0);
cpiSetElementCompleteNext(&rc, newElement, 0);
if (pc->trace) {
const char * mbData = mbString(data, pc->iCcsid);
fprintf(pc->tracefile, "PLUGIN: New tag found\n");
fprintf(pc->tracefile, "PLUGIN: Created new NAME element;
object=0x%x type=0x%x name=",
newElement, CCI_ELEMENT_TYPE_NAME);
fprintf(pc->tracefile, "%s\n", mbData);
fflush(pc->tracefile);
free((void *)mbData);
}
/* Geben Sie den Speicherplatz frei, der in 'CciNString()' zugeordnet ist */
free((void *)data);
/* Fügen Sie das Element hinzu*/
cpiAddAsLastChild(&rc, element, newElement);
cpiSetElementCompletePrevious(&rc, element, 1);
Zugehörige Konzepte
Benutzerdefinierte Parser
Benutzerdefinierte Erweiterungen
Zugehörige Tasks
Parser in C erstellen
Zugehörige Verweise
cpiSetElementCompletePrevious
C-Parser-Dienstprogrammfunktionen
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 18.05.2006
as08480_