cpiAddBefore

Scopo

Aggiunge un elemento di sintassi nuovo (e non collegato attualmente) alla struttura ad albero dell'elemento di sintassi prima dell'elemento di destinazione specificato. L'elemento aggiunto di nuovo diviene l'elemento associato precedente dell'elemento di destinazione.

Sintassi

void cpiAddBefore(
  int*      returnCode,
  CciElement*     targetElement,
  CciElement*  newElement);

Parametri

returnCode
Riceve il codice di ritorno dalla funzione (output).
I codici di ritorno possibili sono:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
targetElement
Specifica l'indirizzo dell'oggetto elemento di sintassi di destinazione (input).
newElement
Specifica l'indirizzo del nuovo oggetto elemento di sintassi che deve essere aggiunto alla struttura ad albero (input).

Valori di restituzione

Nessuno. Se si verifica un errore, il parametro returnCode indica il motivo dell'errore.

Esempio

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) {
    /* Crea un nuovo elemento valore, lo aggiunge prima dell'elemento valore corrente
			e ne imposta il valore */
    newElement = cpiCreateElement(&rc, parser);
    cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_VALUE);
    cpiSetElementValueValue(&rc, newElement, value);
    cpiAddBefore(&rc, element, newElement);
  }
  else {
  }

  return;
}
Concetti correlati
Programmi di analisi definiti dall'utente
Estensioni definite dall'utente
Attività correlate
Creazione di un programma di analisi in C
Riferimenti correlati
cpiAddAfter
Funzioni di utilità del programma di analisi in C
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
as08360_