Obtiene el objeto de valor del elemento de sintaxis especificado. El objeto de valor es opaco en el sentido que no se puede interrogar. Se puede utilizar para establecer o derivar el valor de un elemento a partir de otro, sin conocer su tipo, utilizando la función cpiSetElementValueValue. La pueden utilizar los analizadores que alteran temporalmente el comportamiento invocando las funciones de implementación cpiElementValue y cpiSetElementValue.
const CciElementValue* cpiElementValueValue( int* returnCode, CciElement* targetElement);
Se devuelve la dirección del objeto CciElementValue almacenado en el elemento de sintaxis de destino especificado. Si se produce un error, se devuelve cero (CCI_NULL_ADDR) y returnCode indica la razón del error.
Este ejemplo se ha tomado del archivo de analizador de ejemplo BipSampPluginParser.c (líneas 705 a 725):
const CciElementValue* cpiElementValue( CciParser* parser, CciElement* element ){ CciElement* firstChild; const CciElementValue* value; int rc; if ((cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_VALUE) || (cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME_VALUE)) { value = cpiElementValueValue(&rc, element); } else if (cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME) { firstChild = cniFirstChild(&rc, element); value = cpiElementValueValue(&rc, firstChild); } else { } return(value); }