cpiAddBefore

Finalidad

Esta función añade un nuevo elemento de sintaxis (separado actualmente) al árbol de elementos de sintaxis antes del elemento de destino especificado. El elemento acabado de añadir pasa a ser el elemento igual anterior del elemento de destino.

Sintaxis

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

Parámetros

returnCode
Recibe el código de retorno de la función (salida).
targetElement
Especifica la dirección del objeto de elemento de sintaxis de destino (entrada).
newElement
Especifica la dirección del nuevo objeto de elemento de sintaxis que se a añadir a la estructura del árbol (entrada).

Valores de retorno

Ninguno. Si se produce un error, returnCode indica la causa de dicho error.

Ejemplo

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) {
    /* Crear un nuevo elemento de valor, añadirlo antes del elemento de */
			 /* valor actual y establecer el valor                               */
    newElement = cpiCreateElement(&rc, parser);
    cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_VALUE);
    cpiSetElementValueValue(&rc, newElement, value);
    cpiAddBefore(&rc, element, newElement);
  }
  else {
  }

  return;
}

Conceptos relacionados
Analizadores definidos por el usuario
Extensiones definidas por el usuario

Tareas relacionadas
Creación de un analizador en C

Referencia relacionada
cpiAddAfter
Funciones de programa de utilidad de analizador