blocks en cours
This commit is contained in:
@@ -29,12 +29,9 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
||||
|
||||
@Override
|
||||
public String visitFunction(FunctionImp fun, String indent) {
|
||||
String str = indent+"FUNC " + fun.type().accept(this,"")+ " " + fun.nom() +"(){\n";
|
||||
for(int i = 0; i<fun.instructions().size(); i++){
|
||||
str += fun.instructions().get(i).accept(this,indent+INDENT)+"\n";
|
||||
}
|
||||
str+= indent+"}";
|
||||
return str;
|
||||
String str = indent+"FUNC " + fun.type().accept(this,"")+ " " + fun.nom() +"() ";
|
||||
str += fun.instruction().accept(this,indent)+"\n";
|
||||
return str;
|
||||
}
|
||||
|
||||
//DELCARATION
|
||||
@@ -56,6 +53,30 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
||||
return indent+"RETURN " + instr.e().accept(this,"");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String visitBloc(BlocImp instr, String indent) {
|
||||
String str = "{";
|
||||
for(int i = 0; i<instr.instrs().size(); i++){
|
||||
str+=instr.instrs().get(i).accept(this, indent+INDENT)+"\n";
|
||||
}
|
||||
str += indent+"}";
|
||||
return str;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String visitBlocDec(BlocDecImp instr, String indent) {
|
||||
String str = "{";
|
||||
|
||||
for(int i = 0; i<instr.decls().size(); i++){
|
||||
str+=instr.decls().get(i).accept(this, indent+INDENT)+"\n";
|
||||
}
|
||||
for(int i = 0; i<instr.instrs().size(); i++){
|
||||
str+=instr.instrs().get(i).accept(this, indent+INDENT)+"\n";
|
||||
}
|
||||
str += indent+"}";
|
||||
return str;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String visitAssign(AssignImp instr, String indent) {
|
||||
return indent + instr.t()+ " := " + instr.e().accept(this,"");
|
||||
@@ -81,7 +102,10 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
||||
public String visitIfThen(IfThenImp instr, String indent) {
|
||||
String str = indent + "IF ";
|
||||
str +=(instr.e().accept(this, ""));
|
||||
str +=" THEN " + (instr.i1().accept(this, ""));
|
||||
str +=" THEN ";
|
||||
for(int i=0; i<instr.i1().size();i++){
|
||||
str+= instr.i1().get(i).accept(this, "");
|
||||
}
|
||||
return str;
|
||||
}
|
||||
|
||||
@@ -89,8 +113,14 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
||||
public String visitIfThenElse(IfThenElseImp instr, String indent) {
|
||||
String str = indent + "IF ";
|
||||
str +=(instr.e().accept(this, ""));
|
||||
str +=" THEN " + (instr.i1().accept(this, ""));
|
||||
str +=" ELSE "+ (instr.i2().accept(this, ""));
|
||||
str +=" THEN ";
|
||||
for(int i=0; i<instr.i1().size();i++){
|
||||
str+= instr.i1().get(i).accept(this, "");
|
||||
}
|
||||
str +=" ELSE ";
|
||||
for(int i=0; i<instr.i2().size();i++){
|
||||
str+= instr.i2().get(i).accept(this, "");
|
||||
}
|
||||
return str;
|
||||
}
|
||||
|
||||
@@ -108,7 +138,10 @@ public class PrettyprinterVisitor implements ProgramVisitor<String,String>,
|
||||
public String visitWhile(WhileImp instr, String indent) {
|
||||
String str = indent+"WHILE ";
|
||||
str += (instr.e().accept(this, ""));
|
||||
str+= " DO "+ (instr.i1().accept(this, ""));
|
||||
str+= " DO ";
|
||||
for(int i=0; i<instr.i1().size();i++){
|
||||
str+= instr.i1().get(i).accept(this, "");
|
||||
}
|
||||
str+= " DONE";
|
||||
return str;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user