Explorar el Código

LibJS: Add indentation to sections in SwitchCase::dump()

This now matches the output of

Program
  (Variables)
    ...
  (Children)
    ...

or

FunctionDeclaration 'foo'
  (Parameters)
    ...
  (Body)
    ...

etc.

Also don't print each consequent statement index, it doesn't add any
value.
Linus Groh hace 5 años
padre
commit
d4bfcea570
Se han modificado 1 ficheros con 5 adiciones y 9 borrados
  1. 5 9
      Libraries/LibJS/AST.cpp

+ 5 - 9
Libraries/LibJS/AST.cpp

@@ -1384,21 +1384,17 @@ void SwitchStatement::dump(int indent) const
 void SwitchCase::dump(int indent) const
 {
     ASTNode::dump(indent);
-    print_indent(indent);
+    print_indent(indent + 1);
     if (m_test) {
         printf("(Test)\n");
-        m_test->dump(indent + 1);
+        m_test->dump(indent + 2);
     } else {
         printf("(Default)\n");
     }
-    print_indent(indent);
+    print_indent(indent + 1);
     printf("(Consequent)\n");
-    int i = 0;
-    for (auto& statement : m_consequent) {
-        print_indent(indent);
-        printf("[%d]\n", i++);
-        statement.dump(indent + 1);
-    }
+    for (auto& statement : m_consequent)
+        statement.dump(indent + 2);
 }
 
 Value ConditionalExpression::execute(Interpreter& interpreter) const