Implemented grammer loading

This commit is contained in:
Nathan Braswell
2013-05-20 19:34:15 -04:00
parent 46d59ac595
commit d2698cf203
11 changed files with 342 additions and 4 deletions

27
src/ParseRule.cpp Normal file
View File

@@ -0,0 +1,27 @@
#include "ParseRule.h"
ParseRule::ParseRule() {
pointerIndex = 0;
leftHandle = NULL;
}
ParseRule::~ParseRule() {
}
void ParseRule::setLeftHandle(Symbol* leftHandle) {
this->leftHandle = leftHandle;
}
void ParseRule::appendToRight(Symbol* appendee) {
rightSide.push_back(appendee);
}
std::string ParseRule::toString() {
std::string concat = leftHandle->toString() + " -> ";
for (int i = 0; i < rightSide.size(); i++) {
concat += rightSide[i]->toString() + " ";
}
return(concat + ";");
}