clean PrettyPrinterVisitor
This commit is contained in:
@@ -13,7 +13,7 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
|
|
||||||
static String INDENT = " ";
|
static String INDENT = " ";
|
||||||
|
|
||||||
//PROGRAM
|
//PROGRAM -----------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitProgram(ProgramImp prog, String indent) {
|
public String visitProgram(ProgramImp prog, String indent) {
|
||||||
@@ -25,7 +25,9 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
//PROTOTYPE
|
|
||||||
|
//FUNCTION -----------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitPrototype(PrototypeImp proto, String indent){
|
public String visitPrototype(PrototypeImp proto, String indent){
|
||||||
String str= indent + "PROTO "+proto.type().accept(this, "")+ " "+ proto.nom() + "(";
|
String str= indent + "PROTO "+proto.type().accept(this, "")+ " "+ proto.nom() + "(";
|
||||||
@@ -38,7 +40,7 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str+")";
|
return str+")";
|
||||||
}
|
}
|
||||||
|
|
||||||
//FUNCTION
|
|
||||||
@Override
|
@Override
|
||||||
public String visitFunction(FunctionImp fun, String indent) {
|
public String visitFunction(FunctionImp fun, String indent) {
|
||||||
String str = indent+"FUNC " + fun.type().accept(this,"")+ " " + fun.nom() +"(";
|
String str = indent+"FUNC " + fun.type().accept(this,"")+ " " + fun.nom() +"(";
|
||||||
@@ -53,7 +55,9 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
//DELCARATION
|
|
||||||
|
//DELCARATION -----------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitDeclaration(DeclarationImp instr, String indent) {
|
public String visitDeclaration(DeclarationImp instr, String indent) {
|
||||||
String str = indent +instr.t().accept(this,"") + " ";
|
String str = indent +instr.t().accept(this,"") + " ";
|
||||||
@@ -74,12 +78,16 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
}
|
}
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
//INSTRUCTION
|
|
||||||
|
|
||||||
|
//INSTRUCTION -----------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitReturn(Return_instrImp instr, String indent) {
|
public String visitReturn(Return_instrImp instr, String indent) {
|
||||||
return indent+"RETURN " + instr.e().accept(this,"");
|
return indent+"RETURN " + instr.e().accept(this,"");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitBloc(BlocImp instr, String indent) {
|
public String visitBloc(BlocImp instr, String indent) {
|
||||||
String str = "{\n";
|
String str = "{\n";
|
||||||
@@ -90,6 +98,7 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitBlocDec(BlocDecImp instr, String indent) {
|
public String visitBlocDec(BlocDecImp instr, String indent) {
|
||||||
String str = "{\n";
|
String str = "{\n";
|
||||||
@@ -104,11 +113,13 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitAssign(AssignImp instr, String indent) {
|
public String visitAssign(AssignImp instr, String indent) {
|
||||||
return indent + instr.t()+ " := " + instr.e().accept(this,"");
|
return indent + instr.t()+ " := " + instr.e().accept(this,"");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitPrint(PrintImp instr, String indent) {
|
public String visitPrint(PrintImp instr, String indent) {
|
||||||
String str = indent + "PRINT ";
|
String str = indent + "PRINT ";
|
||||||
@@ -125,6 +136,18 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String visitRead(ReadImp instr, String indent) {
|
||||||
|
String str = indent+"READ ";
|
||||||
|
for(int i = 0; i<instr.t().size(); i++){
|
||||||
|
str += instr.t().get(i).accept(this,indent);
|
||||||
|
if(i<instr.t().size()-1) str += ", ";
|
||||||
|
}
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitIfThen(IfThenImp instr, String indent) {
|
public String visitIfThen(IfThenImp instr, String indent) {
|
||||||
String str = indent + "IF ";
|
String str = indent + "IF ";
|
||||||
@@ -145,15 +168,6 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public String visitRead(ReadImp instr, String indent) {
|
|
||||||
String str = indent+"READ ";
|
|
||||||
for(int i = 0; i<instr.t().size(); i++){
|
|
||||||
str += instr.t().get(i).accept(this,indent);
|
|
||||||
if(i<instr.t().size()-1) str += ", ";
|
|
||||||
}
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitWhile(WhileImp instr, String indent) {
|
public String visitWhile(WhileImp instr, String indent) {
|
||||||
@@ -178,7 +192,9 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
//EXPRESSION
|
|
||||||
|
//EXPRESSION -----------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitConst(ConstImp e, String indent) {
|
public String visitConst(ConstImp e, String indent) {
|
||||||
return e.c()+"";
|
return e.c()+"";
|
||||||
@@ -198,6 +214,13 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return "(" + e.e1().accept(this,"") +" "+ opStr +" " + e.e2().accept(this,"") + ")";
|
return "(" + e.e1().accept(this,"") +" "+ opStr +" " + e.e2().accept(this,"") + ")";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String visitVar(VarImp e, String h) {
|
||||||
|
return e.name();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitCall(CallImp instr,String indent){
|
public String visitCall(CallImp instr,String indent){
|
||||||
String str = indent + instr.fName() + "(";
|
String str = indent + instr.fName() + "(";
|
||||||
@@ -209,7 +232,7 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//TYPE
|
//TYPE -----------------------------------
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String visitInt(Type_intImp t, String h) {
|
public String visitInt(Type_intImp t, String h) {
|
||||||
@@ -221,9 +244,5 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
|||||||
return "VOID";
|
return "VOID";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public String visitVar(VarImp e, String h) {
|
|
||||||
return e.name();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user