Si la serialización no es necesaria, por ejemplo cuando la salida se basa en una corriente de bits de entrada y no se ha modificado el árbol, el intermediario no invocará esta función de implementación.
Si esta función de implementación se proporciona en la estructura CPI_VFT, no se puede especificar cpiWriteBuffer() ni cpiWriteBufferEncoded(), porque la función cpiDefineParserClass() fallará con un código de retorno de CCI_INVALID_IMPL_FUNCTION.
Definida en | Tipo | Miembro |
CPI_VFT | Condicional | iFpWriteBufferFormatted |
int cpiWriteBufferFormatted( CciParser* parser, CciContext* context, int encoding, int ccsid, CciChar* set, CciChar* type, CciChar* format);
Tamaño en bytes de los datos añadidos a la corriente de bits del almacenamiento intermedio.
int cpiWriteBufferFormatted( CciParser* parser, CciContext* context, int encoding, int ccsid CciChar* set, CciChar* type, CciChar* format ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int initialSize = 0; int rc = 0; const void* a; CciByte b; initialSize = cpiBufferSize(&rc, parser); a = cpiBufferPointer(&rc, parser); b = cpiBufferByte(&rc, parser, 0); cpiAppendToBuffer(&rc, parser, (char *)"Algunos datos de prueba", 14); return cpiBufferSize(0, parser) - initialSize; }