Commit 2a33bda9 authored by Bram Kohlen's avatar Bram Kohlen
Browse files

Reimplemented indentation

parent f52709ca
Pipeline #60760 passed with stages
in 1 minute and 7 seconds
......@@ -27,6 +27,7 @@ public class MathPrettyPrinter implements AstPrettyPrinter<ASTMathCompilationUni
public MathPrettyPrinter() {
this.printer = new IndentPrinter();
this.printer.setIndentLength(4);
this.importVisited = false;
this.inMatrixEnvironment = false;
}
......@@ -151,10 +152,13 @@ public class MathPrettyPrinter implements AstPrettyPrinter<ASTMathCompilationUni
this.printScript();
this.printSpace();
this.printer.print(node.getName());
this.printer.println();
this.printer.indent();
}
@Override
public void endVisit(ASTMathScript node) {
this.printer.unindent();
this.printEnd();
}
......@@ -232,7 +236,6 @@ public class MathPrettyPrinter implements AstPrettyPrinter<ASTMathCompilationUni
@Override
public void visit(ASTMathForLoopHead node) {
this.printer.println();
this.printFor();
this.printSpace();
this.printer.print(node.getName());
......@@ -241,24 +244,38 @@ public class MathPrettyPrinter implements AstPrettyPrinter<ASTMathCompilationUni
this.printSpace();
}
@Override
public void endVisit(ASTMathForLoopHead node) {
this.printer.println();
this.printer.indent();
}
@Override
public void endVisit(ASTMathForLoopExpression node) {
this.printer.unindent();
this.printEnd();
this.printSemicolon();
this.printer.println(2);
}
@Override
public void visit(ASTMathIfExpression node) {
this.printer.println();
this.printIf();
this.printSpace();
}
public void revisit(ASTMathIfExpression node) {
this.printer.println();
this.printer.indent();
}
@Override
public void endVisit(ASTMathIfExpression node) {
this.printer.unindent();
}
@Override
public void endVisit(ASTMathIfStatement node) {
this.printEnd();
this.printSemicolon();
this.printer.println(2);
}
......@@ -296,9 +313,27 @@ public class MathPrettyPrinter implements AstPrettyPrinter<ASTMathCompilationUni
this.printSpace();
}
@Override
public void revisit(ASTMathElseIfExpression node) {
this.printer.println();
this.printer.indent();
}
@Override
public void endVisit(ASTMathElseIfExpression node) {
this.printer.unindent();
}
@Override
public void visit(ASTMathElseExpression node) {
this.printElse();
this.printer.println();
this.printer.indent();
}
@Override
public void endVisit(ASTMathElseExpression node) {
this.printer.unindent();
}
@Override
......
......@@ -494,4 +494,78 @@ public interface MathStructuredVisitor extends MathVisitor {
}
default void revisit(ASTMathArithmeticMatrixEELeftDivideExpression node) {}
@Override
default void handle(ASTMathIfExpression node) {
this.getRealThis().visit(node);
this.getRealThis().traversePartOne(node);
this.getRealThis().revisit(node);
this.getRealThis().traversePartTwo(node);
this.getRealThis().endVisit(node);
}
default void traversePartOne(ASTMathIfExpression node) {
if (null != node.getCondition()) {
node.getCondition().accept(this.getRealThis());
}
}
default void traversePartTwo(ASTMathIfExpression node) {
Iterator iter_bodys = node.getBodyList().iterator();
while(iter_bodys.hasNext()) {
((ASTStatement)iter_bodys.next()).accept(this.getRealThis());
}
}
default void revisit(ASTMathIfExpression node)
{
}
@Override
default void handle(ASTMathElseIfExpression node) {
this.getRealThis().visit(node);
this.getRealThis().traversePartOne(node);
this.getRealThis().revisit(node);
this.getRealThis().traversePartTwo(node);
this.getRealThis().endVisit(node);
}
default void traversePartOne(ASTMathElseIfExpression node) {
if (null != node.getCondition()) {
node.getCondition().accept(this.getRealThis());
}
}
default void traversePartTwo(ASTMathElseIfExpression node) {
Iterator iter_bodys = node.getBodyList().iterator();
while(iter_bodys.hasNext()) {
((ASTStatement)iter_bodys.next()).accept(this.getRealThis());
}
}
default void revisit(ASTMathElseIfExpression node)
{
}
/*@Override
default void handle(ASTMathElseExpression node) {
this.getRealThis().visit(node);
this.getRealThis().traversePartOne(node);
this.getRealThis().revisit(node);
this.getRealThis().traversePartTwo(node);
this.getRealThis().endVisit(node);
}
default void traverse(ASTMathElseExpression node) {
Iterator iter_bodys = node.getBodyList().iterator();
while(iter_bodys.hasNext()) {
((ASTStatement)iter_bodys.next()).accept(this.getRealThis());
}
}*/
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment