public static void displaySyntaxTree(astNode n) { StringBuilder sb = new StringBuilder(); displaySyntaxTree(n, "", sb); Console.Out.Write(sb.ToString()); }
public static void displaySyntaxTree(astNode n, String prefix, StringBuilder sb) { if (n.children != null && n.children.Count > 0) { sb.AppendLine(prefix + " " + n.type + " " + n.name + " " + n.val); for (int i = 0; i < n.children.Count; i++) { displaySyntaxTree(n.children[i], prefix + "| ", sb); } sb.AppendLine(prefix + " -" + n.type + " " + n.name + " " + n.val); } else { sb.AppendLine(prefix + " " + n.type + " " + n.name + " " + n.val); } }