partial void ProductionEnd(ENonTerminal production) { switch (production) { case ENonTerminal.String: PushString(CurrentToken); break; case ENonTerminal.Number: PushNumber(CurrentToken); break; case ENonTerminal.True: PushTrue(); break; case ENonTerminal.False: PushFalse(); break; case ENonTerminal.Null: PushEmpty(); break; case ENonTerminal.ObjectItem: AddItemToObject(); break; case ENonTerminal.ArrayItem: AddItemToArray(); break; } }
partial void ProductionBegin(ENonTerminal production) { switch (production) { case ENonTerminal.Object: PushEmptyOBject(); break; case ENonTerminal.Array: PushEmptyArray(); break; } }
partial void ProductionEnd(ENonTerminal production);
partial void ProductionBegin(ENonTerminal production);