CciElement* cpiCreateAndInitializeElement( int* returnCode, CciParser* parser, CciElementType type, const CciChar* name, CciBool firstChildComplete, CciBool lastChildComplete);
Si la función se ejecuta correctamente, se devuelve la dirección del nuevo objeto de elemento. De lo contrario, se devuelve el valor cero (CCI_NULL_ADDR), y returnCode indica la causa del error.
/* Avanzar hacia el final del valor */ while (pc->iCurrentCharacter != quoteChar) { advance( (PARSER_CONTEXT_ST *)context, parser ); } /* Obtener un puntero al final del código */ endMarker = (char*)pc->iBuffer+(int)pc->iIndex; /* Calcular el tamaño del código */ markedSize = (size_t)endMarker-(int)startMarker; /* 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 = cpiCreateAndInitializeElement(&rc, parser, type, name); cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_NAME_VALUE); cpiSetElementName(&rc, newElement, data); if (pc->trace) { const char * mbData = mbString(data, pc->iCcsid); fprintf(pc->tracefile, "PLUGIN: Created new NAMEVALUE 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);
Conceptos relacionados
Analizadores definidos por el usuario
Extensiones definidas por el usuario
Tareas relacionadas
Creación de un analizador en C
Referencia relacionada
cpiCreateElement
Funciones de programa de utilidad de analizador
Avisos |
Marcas registradas |
Descargas |
Biblioteca |
Soporte |
Información de retorno (feedback)
![]() ![]() |
as08390_ |