Parse the previous (left) sibling of a specified syntax element. It is invoked by the broker when the previous (left) sibling element of the current syntax element is required.
Defined In | Type | Member |
CPI_VFT | Mandatory | iFpParsePreviousSibling |
void cpiParsePreviousSibling( CciParser* parser, CciContext* context, CciElement* currentElement);
None.
void cpiParsePreviousSibling( CciParser* parser, CciContext* context, CciElement* element ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc; while ((!cpiElementCompletePrevious(&rc, cpiParent(&rc, element))) && (!cpiPreviousSibling(&rc, element)) && (pc->iCurrentElement)) { pc->iCurrentElement = parsePreviousItem(parser, context, pc->iCurrentElement); } if (pc->trace) { fprintf(pc->tracefile, "PLUGIN: <- cpiParsePreviousSibling()\n"); fflush(pc->tracefile); } return; }
The code sample is similar to that used for cpiParseNextSibling. Use cpiParsePreviousSibling in the context shown above when you are parsing the bit-stream right to left.