core: import edu.neu.ccs.demeter.*; add: class TraceVisitor extends UniversalVisitor { protected int indent; public int get_indent() {{ return indent; }} public void set_indent(int new_indent) {{ indent = new_indent; }} public constructor TraceVisitor() {{ super(); }} public constructor TraceVisitor(int indent) {{ super(); set_indent(indent); }} {{ protected java.io.PrintWriter out = new java.io.PrintWriter(System.out, true); java.io.PrintWriter get_out() { return out; } void set_out(java.io.PrintWriter new_out) { out = new_out; } TraceVisitor(java.io.PrintWriter out) { set_out(out); } TraceVisitor(java.io.PrintStream out) { set_out(new java.io.PrintWriter(out, true)); } }} public void finish() {{ out.flush(); }} public void before(ShoeOrder host) {{ out.println("before ShoeOrder"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(ShoeOrder host) {{ out.println("after ShoeOrder"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_id(ShoeOrder source, String dest) {{ out.println("before -> ShoeOrder, id, String "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_id(ShoeOrder source, String dest) {{ out.println("after -> ShoeOrder, id, String "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_style(ShoeOrder source, String dest) {{ out.println("before -> ShoeOrder, style, String "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_style(ShoeOrder source, String dest) {{ out.println("after -> ShoeOrder, style, String "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_color(ShoeOrder source, Ident dest) {{ out.println("before -> ShoeOrder, color, Ident "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_color(ShoeOrder source, Ident dest) {{ out.println("after -> ShoeOrder, color, Ident "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_size(ShoeOrder source, String dest) {{ out.println("before -> ShoeOrder, size, String "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_size(ShoeOrder source, String dest) {{ out.println("after -> ShoeOrder, size, String "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_width(ShoeOrder source, Width dest) {{ out.println("before -> ShoeOrder, width, Width "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_width(ShoeOrder source, Width dest) {{ out.println("after -> ShoeOrder, width, Width "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_stores(ShoeOrder source, Store_List dest) {{ out.println("before -> ShoeOrder, stores, Store_List "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_stores(ShoeOrder source, Store_List dest) {{ out.println("after -> ShoeOrder, stores, Store_List "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(Width host) {{ out.println("before Width"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(Width host) {{ out.println("after Width"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_w(Width source, W dest) {{ out.println("before -> Width, w, W "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_w(Width source, W dest) {{ out.println("after -> Width, w, W "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(W host) {{ out.println("before W"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(W host) {{ out.println("after W"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(AA host) {{ out.println("before AA"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(AA host) {{ out.println("after AA"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(EE host) {{ out.println("before EE"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(EE host) {{ out.println("after EE"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(Store host) {{ out.println("before Store"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(Store host) {{ out.println("after Store"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_name(Store source, Ident dest) {{ out.println("before -> Store, name, Ident "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_name(Store source, Ident dest) {{ out.println("after -> Store, name, Ident "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_howManySuchShoes(Store source, Quantity dest) {{ out.println("before -> Store, howManySuchShoes, Quantity "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_howManySuchShoes(Store source, Quantity dest) {{ out.println("after -> Store, howManySuchShoes, Quantity "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(Quantity host) {{ out.println("before Quantity"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(Quantity host) {{ out.println("after Quantity"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_number(Quantity source, Number dest) {{ out.println("before -> Quantity, number, Number "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_number(Quantity source, Number dest) {{ out.println("after -> Quantity, number, Number "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(Main host) {{ out.println("before Main"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(Main host) {{ out.println("after Main"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(SummingVisitor host) {{ out.println("before SummingVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(SummingVisitor host) {{ out.println("after SummingVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_total(SummingVisitor source, int dest) {{ out.println("before -> SummingVisitor, total, int "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_total(SummingVisitor source, int dest) {{ out.println("after -> SummingVisitor, total, int "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(PrintVisitor host) {{ out.println("before PrintVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(PrintVisitor host) {{ out.println("after PrintVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_indent(PrintVisitor source, int dest) {{ out.println("before -> PrintVisitor, indent, int "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_indent(PrintVisitor source, int dest) {{ out.println("after -> PrintVisitor, indent, int "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_needSpace(PrintVisitor source, boolean dest) {{ out.println("before -> PrintVisitor, needSpace, boolean "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_needSpace(PrintVisitor source, boolean dest) {{ out.println("after -> PrintVisitor, needSpace, boolean "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(CopyVisitor host) {{ out.println("before CopyVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(CopyVisitor host) {{ out.println("after CopyVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_copy(CopyVisitor source, Object dest) {{ out.println("before -> CopyVisitor, copy, Object "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_copy(CopyVisitor source, Object dest) {{ out.println("after -> CopyVisitor, copy, Object "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(SubgraphVisitor host) {{ out.println("before SubgraphVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(SubgraphVisitor host) {{ out.println("after SubgraphVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_is_equal(SubgraphVisitor source, boolean dest) {{ out.println("before -> SubgraphVisitor, is_equal, boolean "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_is_equal(SubgraphVisitor source, boolean dest) {{ out.println("after -> SubgraphVisitor, is_equal, boolean "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(EqualVisitor host) {{ out.println("before EqualVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(EqualVisitor host) {{ out.println("after EqualVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_is_equal(EqualVisitor source, boolean dest) {{ out.println("before -> EqualVisitor, is_equal, boolean "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_is_equal(EqualVisitor source, boolean dest) {{ out.println("after -> EqualVisitor, is_equal, boolean "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(DisplayVisitor host) {{ out.println("before DisplayVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(DisplayVisitor host) {{ out.println("after DisplayVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_indent(DisplayVisitor source, int dest) {{ out.println("before -> DisplayVisitor, indent, int "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_indent(DisplayVisitor source, int dest) {{ out.println("after -> DisplayVisitor, indent, int "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(TraceVisitor host) {{ out.println("before TraceVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(TraceVisitor host) {{ out.println("after TraceVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_indent(TraceVisitor source, int dest) {{ out.println("before -> TraceVisitor, indent, int "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_indent(TraceVisitor source, int dest) {{ out.println("after -> TraceVisitor, indent, int "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(UniversalVisitor host) {{ out.println("before UniversalVisitor"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(UniversalVisitor host) {{ out.println("after UniversalVisitor"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(Store_List host) {{ out.println("before Store_List"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(Store_List host) {{ out.println("after Store_List"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_first(Store_List source, Nonempty_Store_List dest) {{ out.println("before -> Store_List, first, Nonempty_Store_List "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_first(Store_List source, Nonempty_Store_List dest) {{ out.println("after -> Store_List, first, Nonempty_Store_List "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before(Nonempty_Store_List host) {{ out.println("before Nonempty_Store_List"); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after(Nonempty_Store_List host) {{ out.println("after Nonempty_Store_List"); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_it(Nonempty_Store_List source, Store dest) {{ out.println("before -> Nonempty_Store_List, it, Store "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_it(Nonempty_Store_List source, Store dest) {{ out.println("after -> Nonempty_Store_List, it, Store "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} public void before_next(Nonempty_Store_List source, Nonempty_Store_List dest) {{ out.println("before -> Nonempty_Store_List, next, Nonempty_Store_List "); indent++; for (int i = 0; i < indent; i++) out.print(" "); }} public void after_next(Nonempty_Store_List source, Nonempty_Store_List dest) {{ out.println("after -> Nonempty_Store_List, next, Nonempty_Store_List "); indent--; for (int i = 0; i < indent; i++) out.print(" "); }} {{ void universal_trv0_bef(UniversalVisitor _v_) { super.universal_trv0_bef(_v_); } }} {{ void universal_trv0_aft(UniversalVisitor _v_) { super.universal_trv0_aft(_v_); } }} {{ void universal_trv0(UniversalVisitor _v_) { universal_trv0_bef(_v_); super.universal_trv0(_v_); universal_trv0_aft(_v_); } }} }