cpiSetNextParserClassName

Finalidad

Función opcional para informar a un analizador sobre el siguiente analizador de la cadena. Se invoca durante el proceso de finalización y devuelve al analizador definido por el usuario una serie de caracteres que contiene el nombre de la siguiente clase de analizador de la cadena. Permite a un analizador realizar una acción durante la fase de finalización para modificar el árbol de elementos de sintaxis antes de la fase que produce la serialización de la corriente de bits.

Si especifica el nombre de un analizador proporcionado con WebSphere Message Broker, deberá utilizar el nombre de clase correcto del analizador.

Definida en Tipo Miembro
CPI_VFT Opcional iFpSetNextParserClassName

Sintaxis

void cpiSetNextParserClassName(
  CciParser* parser,
  CciContext* context,
  CciChar* name,
  CciBool parserType);
 

Parámetros

parser
Dirección del objeto de analizador (entrada).
context
Dirección del contexto propiedad del objeto analizador (entrada).
name
Nombre del siguiente analizador en forma de serie de caracteres CciChar.
parserType
Indica si el analizador de referencia es estándar (parserType=0) o no estándar (parserType=non-zero) (entrada). Un analizador estándar espera que el campo Formato de la cabecera anterior de la cadena contenga el nombre de la clase de analizador que viene a continuación. Los analizadores no estándares esperan que el campo Dominio contenga el nombre de clase de analizador.

Valores de retorno

Ninguno.

Ejemplo

Este ejemplo se ha tomado del archivo de analizador de ejemplo BipSampPluginParser.c (líneas 763 a 787):

void cpiSetNextParserClassName(
  CciParser* parser,
  CciContext* context,
  CciChar* name,
  CciBool isHeaderParser
){
  PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ;
  int rc = 0;

  /* Guardar el nombre en mi contexto */
  CciCharNCpy(pc->iNextParserClassName, name, CciCharLen(name));

  if (pc->trace) {
    fprintf(pc->tracefile, "PLUGIN: <- cpiSetNextParserClassName()\n");
    fflush(pc->tracefile);
  }

  return;
}
Conceptos relacionados
Analizadores definidos por el usuario
Extensiones definidas por el usuario
Tareas relacionadas
Creación de un analizador en C
Referencia relacionada
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
as08200_