1 /* 2 * OpenBOR - http://www.LavaLit.com 3 * ----------------------------------------------------------------------- 4 * All rights reserved, see LICENSE in OpenBOR root for details. 5 * 6 * Copyright (c) 2004 - 2011 OpenBOR Team 7 */ 8 9 #ifndef PARSERSET_H 10 #define PARSERSET_H 11 12 #include "Lexer.h" 13 #include "Productions.h" 14 15 typedef struct ParserSet{ 16 MY_TOKEN_TYPE* FirstSet[NUMPRODUCTIONS] ; 17 MY_TOKEN_TYPE* FollowSet[NUMPRODUCTIONS] ; 18 }ParserSet; 19 20 21 void ParserSet_Buildup(ParserSet* pset); 22 void ParserSet_Clear(ParserSet* pset); 23 BOOL ParserSet_First(ParserSet* pset, PRODUCTION theProduction, MY_TOKEN_TYPE theToken); 24 BOOL ParserSet_Follow(ParserSet* pset, PRODUCTION theProduction, MY_TOKEN_TYPE theToken); 25 MY_TOKEN_TYPE LookupValue( CHAR* theToken); 26 #endif 27