Separate the toString and toDOT methods.
This commit is contained in:
@@ -22,6 +22,14 @@ std::string ParseRule::toString() {
|
||||
for (int i = 0; i < rightSide.size(); i++) {
|
||||
concat += rightSide[i]->toString() + " ";
|
||||
}
|
||||
return(concat + ";");
|
||||
return(concat);
|
||||
}
|
||||
|
||||
std::string ParseRule::toDOT() {
|
||||
std::string concat = "";
|
||||
for (int i = 0; i < rightSide.size(); i++) {
|
||||
concat += leftHandle->toString() + " -> " + rightSide[i]->toString() + ";\n";
|
||||
}
|
||||
return(concat);
|
||||
}
|
||||
|
||||
|
||||
@@ -57,8 +57,18 @@ std::string Parser::grammerToString() {
|
||||
std::cout << "About to toString\n";
|
||||
std::string concat = "";
|
||||
for (int i = 0; i < loadedGrammer.size(); i++) {
|
||||
concat += loadedGrammer[i]->toString() + "\n";//->toString();// + std::endl;
|
||||
concat += loadedGrammer[i]->toString() + "\n";
|
||||
}
|
||||
return(concat);
|
||||
}
|
||||
|
||||
std::string Parser::grammerToDOT() {
|
||||
//Iterate through the vector, adding DOT representation of each grammer rule
|
||||
std::cout << "About to DOT export\n";
|
||||
std::string concat = "";
|
||||
for (int i = 0; i < loadedGrammer.size(); i++) {
|
||||
concat += loadedGrammer[i]->toDOT();
|
||||
}
|
||||
return("digraph Kraken_Grammer { \n" + concat + "}");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user