Obtém o objeto de valor do elemento de sintaxe especificado. Esse objeto de valor é opaco no sentido de que ele não pode ser interrogado. Ele pode ser utilizado para definir ou derivar o valor de um elemento a partir de outro, sem conhecer seu tipo, utilizando a função cpiSetElementValueValue. Isso pode ser utilizado por analisadores que substituem comportamento chamando as funções de implementação cpiElementValue e cpiSetElementValue.
const CciElementValue* cpiElementValueValue( int* returnCode, CciElement* targetElement);
O endereço do objeto CciElementValue armazenado no elemento de sintaxe de destino especificado é retornado. Se um erro ocorrer, zero (CCI_NULL_ADDR) é retornado e returnCode indica a razão do erro.
Este exemplo foi tirado do arquivo do analizador de amostra BipSampPluginParser.c (linhas 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); }