cpiSetElementNamespace

Finalidad

Esta función establece el atributo "espacio de nombres" para el elemento de sintaxis especificado.

Definida en Tipo Miembro
CPI_VFT Opcional iFpSetElementValue

Sintaxis

void             cpiSetElementNamespace(
		int*            returnCode,
		CciElement*     targetElement,
		const CciChar*  nameSpace);

Parámetros

returnCode
Una entrada de puntero NULL significa que el nodo de plug-in no desea gestionar errores. Las excepciones emitidas durante la ejecución de esta llamada volverán a emitirse en el siguiente nodo en sentido ascendente del flujo. Si la entrada no es NULL, la salida indicará que el estado de la llamada es correcto. Si se produce una excepción durante la ejecución, *returnCode se establecerá en CCI_EXCEPTION en la salida. Una llamada a CciGetLastExceptionData proporcionará información detallada de la excepción (entrada).
currentElement
Dirección del elemento de sintaxis actual (entrada).
targetElement
Especifica la dirección del objeto de elemento de sintaxis de destino.
value
Especifica la dirección de una serie de caracteres terminada por nulo de CciChars que representa el valor del espacio de nombres. Una serie de caracteres vacía es un valor válido para un espacio de nombres. De hecho, los elementos se crean por omisión en el espacio de nombres de la serie de caracteres vacía, así que la especificación de una serie de caracteres vacía como espacio de nombres a través de esta API sólo tendrá efecto si el elemento estaba anteriormente en otro espacio de nombres y el efecto deseado es cambiar el valor del espacio de nombres por una serie de caracteres vacía.

Valores de retorno

Ninguno.

Ejemplo

/* Convertir el valor de atributo   */
/* en formato de intermediario                                           */
          data = CciNString((char *)startMarker, markedSize, pc->iCcsid);

/* Crear un nuevo elemento nombre-valor para el atributo                 */
          newElement = cpiCreateElement(&rc, parser);
          cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_NAME_VALUE);
          cpiSetElementName(&rc, newElement, data);
          cpiSetElementNamespace(&rc, newElement, data);
          if (pc->trace) {
            const char * mbData = mbString(data, pc->iCcsid);
            fprintf(pc->tracefile, "PLUGIN: Created new NAMESPACEVALUE element; 
                    object=0x%x type=0x%x name=",
                    newElement, CCI_ELEMENT_TYPE_NAME_VALUE);
            fprintf(pc->tracefile, "%s\n", mbData);
            fflush(pc->tracefile);
            free((void *)mbData);
          }
          /* Liberar la memoria creada en CciNString()                   */
          free((void *)data);

          /* Añadir el elemento                                          */
          cpiAddAsLastChild(&rc, element, newElement);

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

Tareas relacionadas
Creación de un analizador en C

Referencia relacionada
cpiElementNameSpace
Funciones de implementación de analizador