cpiWriteBuffer

Finalidad

Graba un árbol de elementos de sintaxis en el almacenamiento intermedio de mensajes asociado con un analizador. Añade datos a la corriente de bits del almacenamiento intermedio de mensajes asociado con el objeto de analizador, utilizando el árbol de elementos de sintaxis actual como origen. Durante la ejecución de esta función de implementación, no se deberá modificar el árbol de elementos. Se puede utilizar la función de utilidad cpiAppendToBuffer para añadir en el almacenamiento intermedio de mensajes (corriente de bits) los datos del árbol de elementos.

Si esta función de implementación se proporciona en la estructura CPI_VFT, no se puede especificar cpiWriteBufferEncoded() ni cpiWriteBufferFormatted(), porque la función cpiDefineParserClass() fallará con un código de retorno de CCI_INVALID_IMPL_FUNCTION.

Definida en Tipo Miembro
CPI_VFT Condicional iFpWriteBuffer

Sintaxis

int cpiWriteBuffer(
  CciParser*  parser,
  CciContext*  context);

Parámetros

parser
Dirección del objeto de analizador (entrada).
context
Dirección del contexto propiedad del objeto analizador (entrada).

Valores de retorno

Tamaño en bytes de los datos añadidos a la corriente de bits del almacenamiento intermedio.

Ejemplo

int cpiWriteBuffer(
  CciParser*  parser,
  CciContext* context
){
  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;
}
Conceptos relacionados
Analizadores definidos por el usuario
Extensiones definidas por el usuario
Tareas relacionadas
Creación de un analizador en C
Referencia relacionada
cpiWriteBufferEncoded
cpiWriteBufferFormatted
Funciones de implementación de analizador en C
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
as08210_