src/parser/TokenSource.h

00001 #ifndef TOKENSOURCE_H_
00002 #define TOKENSOURCE_H_
00003 
00004 #include <string>
00005 #include <list>
00006 #include "lexer.h"
00007 
00008 
00009 class Token;
00010 
00011 
00012 typedef std::list<Token>::iterator TokenIterator;
00013 
00014 
00018 class TokenSource
00019         {
00020         private:
00021                 int sourceType; //0-not init yet  1-file  2-string
00022                 std::list<Token> tokenList;
00023 
00024         public:
00032                 TokenSource();
00040                 ~TokenSource();
00041 
00049                 void setFileInput(std::string& fileName);
00057                 TokenIterator getIterator();
00065                 TokenIterator getEndIterator();
00066 
00067                 static void assertTokenType(int correctType,TokenIterator& curToken,char* errorStr);
00068                 static void assertTokenNotEnd(TokenIterator& curToken);
00069         };
00070 
00071 
00072 #endif

Generated on Fri Apr 27 10:27:38 2007 for Green Engine by  doxygen 1.5.1