Added EOF symbol, making the getTable() saner for ACCEPT and lookahead support in ParseRule

This commit is contained in:
Nathan Braswell
2013-06-13 14:25:10 -04:00
parent 949dbc532a
commit 0c651a5d9e
9 changed files with 68 additions and 20 deletions

24
src/Lexer.cpp Normal file
View File

@@ -0,0 +1,24 @@
#include "Lexer.h"
Lexer::Lexer() {
//Do nothing
}
Lexer::Lexer(std::string inputString) {
reader.setString(inputString);
}
Lexer::~Lexer() {
//No cleanup necessary
}
void Lexer::setInput(std::string inputString) {
reader.setString(inputString);
}
Symbol* Lexer::next() {
std::string token = reader.word();
if (token != "")
return new Symbol("\""+token+"\"", true);
return new Symbol("$EOF$", false);
}