core: import edu.neu.ccs.demeter.dj.*; import java.util.*; import java.lang.reflect.*; import edu.neu.ccs.demeter.*; add: class DisplayVisitor extends UniversalVisitor { protected int indent; public int get_indent() {{ return indent; }} public void set_indent(int new_indent) {{ indent = new_indent; }} public constructor DisplayVisitor() {{ super(); }} public constructor DisplayVisitor(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; } DisplayVisitor(java.io.PrintWriter out) { set_out(out); } DisplayVisitor(java.io.PrintStream out) { set_out(new java.io.PrintWriter(out, true)); } }} public void finish() {{ out.flush(); }} public void before(Main host) {{ out.print(": Main ("); indent++; }} public void after(Main host) {{ out.print(" )"); indent--; }} public void before(Schema host) {{ out.print(": Schema ("); indent++; }} public void after(Schema host) {{ out.print(" )"); indent--; }} public void before_string(Schema source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before_parts_list(Schema source, Parts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(ComplexType host) {{ out.print(": ComplexType ("); indent++; }} public void after(ComplexType host) {{ out.print(" )"); indent--; }} public void before_name(ComplexType source, Name dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_sequence(ComplexType source, Sequence dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_attribute(ComplexType source, Attribute dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Attribute host) {{ out.print(": Attribute ("); indent++; }} public void after(Attribute host) {{ out.print(" )"); indent--; }} public void before_name(Attribute source, Name dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_type(Attribute source, Type dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_endpart(Attribute source, EndPart dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Sequence host) {{ out.print(": Sequence ("); indent++; }} public void after(Sequence host) {{ out.print(" )"); indent--; }} public void before_parts_list(Sequence source, Parts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Element host) {{ out.print(": Element ("); indent++; }} public void after(Element host) {{ out.print(" )"); indent--; }} public void before_nameref(Element source, NameRef dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_elementparts_list(Element source, ElementParts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_elementendparts(Element source, ElementEndParts dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(SimpleElementEnd host) {{ out.print(": SimpleElementEnd ("); indent++; }} public void after(SimpleElementEnd host) {{ out.print(" )"); indent--; }} public void before_endpart(SimpleElementEnd source, EndPart dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(ComplexElementEnd host) {{ out.print(": ComplexElementEnd ("); indent++; }} public void after(ComplexElementEnd host) {{ out.print(" )"); indent--; }} public void before_types_list(ComplexElementEnd source, Types_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(SimpleType host) {{ out.print(": SimpleType ("); indent++; }} public void after(SimpleType host) {{ out.print(" )"); indent--; }} public void before_name(SimpleType source, Name dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_restriction(SimpleType source, Restriction dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Restriction host) {{ out.print(": Restriction ("); indent++; }} public void after(Restriction host) {{ out.print(" )"); indent--; }} public void before_base(Restriction source, Base dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_simpleparts_list(Restriction source, SimpleParts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Name host) {{ out.print(": Name ("); indent++; }} public void after(Name host) {{ out.print(" )"); indent--; }} public void before_string(Name source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(Ref host) {{ out.print(": Ref ("); indent++; }} public void after(Ref host) {{ out.print(" )"); indent--; }} public void before_string(Ref source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(Base host) {{ out.print(": Base ("); indent++; }} public void after(Base host) {{ out.print(" )"); indent--; }} public void before_string(Base source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(Type host) {{ out.print(": Type ("); indent++; }} public void after(Type host) {{ out.print(" )"); indent--; }} public void before_string(Type source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(MinOccurs host) {{ out.print(": MinOccurs ("); indent++; }} public void after(MinOccurs host) {{ out.print(" )"); indent--; }} public void before_string(MinOccurs source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(MaxOccurs host) {{ out.print(": MaxOccurs ("); indent++; }} public void after(MaxOccurs host) {{ out.print(" )"); indent--; }} public void before_string(MaxOccurs source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(MinExclusive host) {{ out.print(": MinExclusive ("); indent++; }} public void after(MinExclusive host) {{ out.print(" )"); indent--; }} public void before_value(MinExclusive source, Value dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_endpart(MinExclusive source, EndPart dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(MaxExclusive host) {{ out.print(": MaxExclusive ("); indent++; }} public void after(MaxExclusive host) {{ out.print(" )"); indent--; }} public void before_value(MaxExclusive source, Value dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_endpart(MaxExclusive source, EndPart dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(MinInclusive host) {{ out.print(": MinInclusive ("); indent++; }} public void after(MinInclusive host) {{ out.print(" )"); indent--; }} public void before_value(MinInclusive source, Value dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_endpart(MinInclusive source, EndPart dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(MaxInclusive host) {{ out.print(": MaxInclusive ("); indent++; }} public void after(MaxInclusive host) {{ out.print(" )"); indent--; }} public void before_value(MaxInclusive source, Value dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_endpart(MaxInclusive source, EndPart dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Value host) {{ out.print(": Value ("); indent++; }} public void after(Value host) {{ out.print(" )"); indent--; }} public void before_string(Value source, String dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} public void before(EndPart host) {{ out.print(": EndPart ("); indent++; }} public void after(EndPart host) {{ out.print(" )"); indent--; }} public void before(PrintVisitor host) {{ out.print(": PrintVisitor ("); indent++; }} public void after(PrintVisitor host) {{ out.print(" )"); indent--; }} public void before_indent(PrintVisitor source, int dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : int \"" + dest + "\""); }} public void before_needSpace(PrintVisitor source, boolean dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : boolean \"" + dest + "\""); }} public void before(CopyVisitor host) {{ out.print(": CopyVisitor ("); indent++; }} public void after(CopyVisitor host) {{ out.print(" )"); indent--; }} public void before_copy(CopyVisitor source, Object dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(SubgraphVisitor host) {{ out.print(": SubgraphVisitor ("); indent++; }} public void after(SubgraphVisitor host) {{ out.print(" )"); indent--; }} public void before_is_equal(SubgraphVisitor source, boolean dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : boolean \"" + dest + "\""); }} public void before(EqualVisitor host) {{ out.print(": EqualVisitor ("); indent++; }} public void after(EqualVisitor host) {{ out.print(" )"); indent--; }} public void before_is_equal(EqualVisitor source, boolean dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : boolean \"" + dest + "\""); }} public void before(DisplayVisitor host) {{ out.print(": DisplayVisitor ("); indent++; }} public void after(DisplayVisitor host) {{ out.print(" )"); indent--; }} public void before_indent(DisplayVisitor source, int dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : int \"" + dest + "\""); }} public void before(TraceVisitor host) {{ out.print(": TraceVisitor ("); indent++; }} public void after(TraceVisitor host) {{ out.print(" )"); indent--; }} public void before_indent(TraceVisitor source, int dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : int \"" + dest + "\""); }} public void before(Parts_List host) {{ out.print(": Parts_List {"); indent++; }} public void after(Parts_List host) {{ out.print(" }"); indent--; }} public void before_first(Parts_List source, Nonempty_Parts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(ElementParts_List host) {{ out.print(": ElementParts_List {"); indent++; }} public void after(ElementParts_List host) {{ out.print(" }"); indent--; }} public void before_first(ElementParts_List source, Nonempty_ElementParts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Types_List host) {{ out.print(": Types_List {"); indent++; }} public void after(Types_List host) {{ out.print(" }"); indent--; }} public void before_first(Types_List source, Nonempty_Types_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(SimpleParts_List host) {{ out.print(": SimpleParts_List {"); indent++; }} public void after(SimpleParts_List host) {{ out.print(" }"); indent--; }} public void before_first(SimpleParts_List source, Nonempty_SimpleParts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Nonempty_Parts_List host) {{ out.print(": Nonempty_Parts_List ("); indent++; }} public void after(Nonempty_Parts_List host) {{ out.print(" )"); indent--; }} public void before_it(Nonempty_Parts_List source, Parts dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_next(Nonempty_Parts_List source, Nonempty_Parts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Nonempty_ElementParts_List host) {{ out.print(": Nonempty_ElementParts_List ("); indent++; }} public void after(Nonempty_ElementParts_List host) {{ out.print(" )"); indent--; }} public void before_it(Nonempty_ElementParts_List source, ElementParts dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_next(Nonempty_ElementParts_List source, Nonempty_ElementParts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Nonempty_Types_List host) {{ out.print(": Nonempty_Types_List ("); indent++; }} public void after(Nonempty_Types_List host) {{ out.print(" )"); indent--; }} public void before_it(Nonempty_Types_List source, Types dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_next(Nonempty_Types_List source, Nonempty_Types_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before(Nonempty_SimpleParts_List host) {{ out.print(": Nonempty_SimpleParts_List ("); indent++; }} public void after(Nonempty_SimpleParts_List host) {{ out.print(" )"); indent--; }} public void before_it(Nonempty_SimpleParts_List source, SimpleParts dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} public void before_next(Nonempty_SimpleParts_List source, Nonempty_SimpleParts_List dest) {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); 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_); } }} }