定義されている場所 | タイプ | メンバー |
CPI_VFT | 必須 | iFpParseLastChild |
void cpiParseLastChild( CciParser* parser, CciContext* context, CciElement* currentElement);
なし。
この例は、サンプル・パーサー・ファイル BipSampPluginParser.c から取られています (515 行から 544 行)。
void cpiParseLastChild( CciParser* parser, CciContext* context, CciElement* element ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc; if ((cpiElementType(&rc, element) == CCI_ELEMENT_TYPE_NAME)) { while ((!cpiElementCompleteNext(&rc, element)) && (pc->iCurrentElement)) { pc->iCurrentElement = parseNextItem(parser, context, pc->iCurrentElement); } } if (pc->trace) { fprintf(pc->tracefile, "PLUGIN: <- cpiParseLastChild()¥n"); fflush(pc->tracefile); } return; }
このコードの目的は、エレメントの子を、最後の子に達するまで構文解析することです。 エレメントの最後の子のビット・ストリーム内における正確なオフセットがまだ分からないパーサーでは、この種の構造を使用できます。