Next: , Previous: , Up: Event coincidence of symbol instances   [Contents][Index]


25.12.5 Completed and expected symbol instances

A symbol instance cannot trigger both a MARPA_EVENT_SYMBOL_COMPLETED and a MARPA_EVENT_SYMBOL_EXPECTED event at the same location. The reasoning is much the same as for the case of MARPA_EVENT_SYMBOL_COMPLETED and MARPA_EVENT_SYMBOL_PREDICTED events. See Completed and predicted symbol instances.

Call the location, j. Coincident events with the types MARPA_EVENT_SYMBOL_COMPLETED and MARPA_EVENT_SYMBOL_PREDICTED cannot be triggered by a single symbol instance because the symbol instances for MARPA_EVENT_SYMBOL_COMPLETED and MARPA_EVENT_SYMBOL_EXPECTED cannot be zero-length; the symbol instance for the MARPA_EVENT_SYMBOL_COMPLETED must end at j; and the symbol instance for the MARPA_EVENT_SYMBOL_EXPECTED must start at j. That is, if the MARPA_EVENT_SYMBOL_COMPLETED symbol instance is sym@c1-c2 and the MARPA_EVENT_SYMBOL_EXPECTED symbol instance is sym@e1-e2 we must have all of

so that c1 < e1 and the two instances sym@c1-c2 and sym@e1-e2 must be distinct.