// This file is automatically generated by DemeterJ. DisplayVisitor { {{ 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)); } }} finish {{ out.flush(); }} before Main {{ out.print(": Main ("); indent++; }} after Main {{ out.print(" )"); indent--; }} before Input {{ out.print(": Input ("); indent++; }} after Input {{ out.print(" )"); indent--; }} before -> Input, classgraphh, ClassGraphh {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Input, syntaxenhancement, SyntaxEnhancement {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassGraphh {{ out.print(": ClassGraphh ("); indent++; }} after ClassGraphh {{ out.print(" )"); indent--; }} before -> ClassGraphh, classes, Definition_DList {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassDef {{ out.print(": ClassDef ("); indent++; }} after ClassDef {{ out.print(" )"); indent--; }} before -> ClassDef, paramclassname, ParamClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ClassDef, classparts, ClassParts {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ParamClassName {{ out.print(": ParamClassName ("); indent++; }} after ParamClassName {{ out.print(" )"); indent--; }} before -> ParamClassName, classname, ClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ParamClassName, parameters, ClassName_Commalist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ConstOrAltClass, parts, ClassElementWithSyntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before SandwichedClassElement {{ out.print(": SandwichedClassElement ("); indent++; }} after SandwichedClassElement {{ out.print(" )"); indent--; }} before -> SandwichedClassElement, classelement_psandwich, ClassElement_PSandwich {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Part {{ out.print(": Part ("); indent++; }} after Part {{ out.print(" )"); indent--; }} before -> Part, partname, PartName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Part, classspec, ClassSpec {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before OptionalPart {{ out.print(": OptionalPart ("); indent++; }} after OptionalPart {{ out.print(" )"); indent--; }} before -> OptionalPart, part, Part_Sandwich {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ConstructionClass {{ out.print(": ConstructionClass ("); indent++; }} after ConstructionClass {{ out.print(" )"); indent--; }} before AlternationClass {{ out.print(": AlternationClass ("); indent++; }} after AlternationClass {{ out.print(" )"); indent--; }} before -> AlternationClass, subclasses, ClassSpec_Barlist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before RepetitionClass {{ out.print(": RepetitionClass ("); indent++; }} after RepetitionClass {{ out.print(" )"); indent--; }} before -> RepetitionClass, sandwiched, RepeatedPart_Sandwich {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before RepeatedPart {{ out.print(": RepeatedPart ("); indent++; }} after RepeatedPart {{ out.print(" )"); indent--; }} before -> RepeatedPart, nonempty, ClassSpec {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> RepeatedPart, repeated, ClassSpec_Sandwich {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassSpec {{ out.print(": ClassSpec ("); indent++; }} after ClassSpec {{ out.print(" )"); indent--; }} before -> ClassSpec, classname, ClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ClassSpec, actual_parameters, ClassSpec_Commalist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before SyntaxToken {{ out.print(": SyntaxToken ("); indent++; }} after SyntaxToken {{ out.print(" )"); indent--; }} before -> SyntaxToken, string, String {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : String"); out.print(" \"" + source.get_string() + "\" "); }} before PrintIndent {{ out.print(": PrintIndent ("); indent++; }} after PrintIndent {{ out.print(" )"); indent--; }} before PrintUnindent {{ out.print(": PrintUnindent ("); indent++; }} after PrintUnindent {{ out.print(" )"); indent--; }} before PrintSkip {{ out.print(": PrintSkip ("); indent++; }} after PrintSkip {{ out.print(" )"); indent--; }} before PrintSpace {{ out.print(": PrintSpace ("); indent++; }} after PrintSpace {{ out.print(" )"); indent--; }} before ClassName {{ out.print(": ClassName ("); indent++; }} after ClassName {{ out.print(" )"); indent--; }} before -> ClassName, ident, Ident {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : Ident"); out.print(" \"" + source.get_ident() + "\""); }} before PartName {{ out.print(": PartName ("); indent++; }} after PartName {{ out.print(" )"); indent--; }} before -> PartName, name, Ident {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : Ident"); out.print(" \"" + source.get_name() + "\""); }} before SyntaxEnhancement {{ out.print(": SyntaxEnhancement ("); indent++; }} after SyntaxEnhancement {{ out.print(" )"); indent--; }} before -> SyntaxEnhancement, enhancement_list, Enhancement_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Enhancement {{ out.print(": Enhancement ("); indent++; }} after Enhancement {{ out.print(" )"); indent--; }} before -> Enhancement, where, Where {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Enhancement, enhancementbody, EnhancementBody {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> EnhancementBody, syntaxtoken, SyntaxToken {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before PartCoordinate {{ out.print(": PartCoordinate ("); indent++; }} after PartCoordinate {{ out.print(" )"); indent--; }} before -> PartCoordinate, syntaxclassname, SyntaxClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> PartCoordinate, syntaxpartname, SyntaxPartName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before OptionalPartCoordinate {{ out.print(": OptionalPartCoordinate ("); indent++; }} after OptionalPartCoordinate {{ out.print(" )"); indent--; }} before -> OptionalPartCoordinate, syntaxclassname, SyntaxClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> OptionalPartCoordinate, syntaxpartname, SyntaxPartName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassBody {{ out.print(": ClassBody ("); indent++; }} after ClassBody {{ out.print(" )"); indent--; }} before -> ClassBody, syntaxclassname, SyntaxClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before CollectionCoordinate {{ out.print(": CollectionCoordinate ("); indent++; }} after CollectionCoordinate {{ out.print(" )"); indent--; }} before -> CollectionCoordinate, syntaxclassname, SyntaxClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> CollectionCoordinate, curlybracket, CurlyBracket {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Left {{ out.print(": Left ("); indent++; }} after Left {{ out.print(" )"); indent--; }} before Right {{ out.print(": Right ("); indent++; }} after Right {{ out.print(" )"); indent--; }} before SyntaxClassName {{ out.print(": SyntaxClassName ("); indent++; }} after SyntaxClassName {{ out.print(" )"); indent--; }} before -> SyntaxClassName, ident, Ident {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : Ident"); out.print(" \"" + source.get_ident() + "\""); }} before SyntaxPartName {{ out.print(": SyntaxPartName ("); indent++; }} after SyntaxPartName {{ out.print(" )"); indent--; }} before -> SyntaxPartName, ident, Ident {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : Ident"); out.print(" \"" + source.get_ident() + "\""); }} before Before {{ out.print(": Before ("); indent++; }} after Before {{ out.print(" )"); indent--; }} before After {{ out.print(": After ("); indent++; }} after After {{ out.print(" )"); indent--; }} before ClassGraphVisitor {{ out.print(": ClassGraphVisitor ("); indent++; }} after ClassGraphVisitor {{ out.print(" )"); indent--; }} before CommandVisitor {{ out.print(": CommandVisitor ("); indent++; }} after CommandVisitor {{ out.print(" )"); indent--; }} before ClassCommandVisitor {{ out.print(": ClassCommandVisitor ("); indent++; }} after ClassCommandVisitor {{ out.print(" )"); indent--; }} before CollectionCommandVisitor {{ out.print(": CollectionCommandVisitor ("); indent++; }} after CollectionCommandVisitor {{ out.print(" )"); indent--; }} before PartCommandVisitor {{ out.print(": PartCommandVisitor ("); indent++; }} after PartCommandVisitor {{ out.print(" )"); indent--; }} before PrintVisitor {{ out.print(": PrintVisitor ("); indent++; }} after PrintVisitor {{ out.print(" )"); indent--; }} before -> PrintVisitor, indent, int {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : int \"" + dest + "\""); }} before -> PrintVisitor, needSpace, boolean {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : boolean \"" + dest + "\""); }} before CopyVisitor {{ out.print(": CopyVisitor ("); indent++; }} after CopyVisitor {{ out.print(" )"); indent--; }} before -> CopyVisitor, copy, Object {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before SubgraphVisitor {{ out.print(": SubgraphVisitor ("); indent++; }} after SubgraphVisitor {{ out.print(" )"); indent--; }} before -> SubgraphVisitor, is_equal, boolean {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : boolean \"" + dest + "\""); }} before EqualVisitor {{ out.print(": EqualVisitor ("); indent++; }} after EqualVisitor {{ out.print(" )"); indent--; }} before -> EqualVisitor, is_equal, boolean {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : boolean \"" + dest + "\""); }} before DisplayVisitor {{ out.print(": DisplayVisitor ("); indent++; }} after DisplayVisitor {{ out.print(" )"); indent--; }} before -> DisplayVisitor, indent, int {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : int \"" + dest + "\""); }} before TraceVisitor {{ out.print(": TraceVisitor ("); indent++; }} after TraceVisitor {{ out.print(" )"); indent--; }} before -> TraceVisitor, indent, int {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); out.print(" : int \"" + dest + "\""); }} before Definition_DList {{ out.print(": Definition_DList {"); indent++; }} after Definition_DList {{ out.print(" }"); indent--; }} before -> Definition_DList, first, Nonempty_Definition_DList {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassName_Commalist {{ out.print(": ClassName_Commalist {"); indent++; }} after ClassName_Commalist {{ out.print(" }"); indent--; }} before -> ClassName_Commalist, first, Nonempty_ClassName_Commalist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassElementWithSyntax_List {{ out.print(": ClassElementWithSyntax_List {"); indent++; }} after ClassElementWithSyntax_List {{ out.print(" }"); indent--; }} before -> ClassElementWithSyntax_List, first, Nonempty_ClassElementWithSyntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassElement_PSandwich {{ out.print(": ClassElement_PSandwich ("); indent++; }} after ClassElement_PSandwich {{ out.print(" )"); indent--; }} before -> ClassElement_PSandwich, s, ClassElement_Sandwich {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassElement_Sandwich {{ out.print(": ClassElement_Sandwich ("); indent++; }} after ClassElement_Sandwich {{ out.print(" )"); indent--; }} before -> ClassElement_Sandwich, first, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ClassElement_Sandwich, inner, ClassElement {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ClassElement_Sandwich, second, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Part_Sandwich {{ out.print(": Part_Sandwich ("); indent++; }} after Part_Sandwich {{ out.print(" )"); indent--; }} before -> Part_Sandwich, first, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Part_Sandwich, inner, Part {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Part_Sandwich, second, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassSpec_Barlist {{ out.print(": ClassSpec_Barlist {"); indent++; }} after ClassSpec_Barlist {{ out.print(" }"); indent--; }} before -> ClassSpec_Barlist, first, Nonempty_ClassSpec_Barlist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before RepeatedPart_Sandwich {{ out.print(": RepeatedPart_Sandwich ("); indent++; }} after RepeatedPart_Sandwich {{ out.print(" )"); indent--; }} before -> RepeatedPart_Sandwich, first, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> RepeatedPart_Sandwich, inner, RepeatedPart {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> RepeatedPart_Sandwich, second, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassSpec_Sandwich {{ out.print(": ClassSpec_Sandwich ("); indent++; }} after ClassSpec_Sandwich {{ out.print(" )"); indent--; }} before -> ClassSpec_Sandwich, first, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ClassSpec_Sandwich, inner, ClassSpec {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> ClassSpec_Sandwich, second, Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Syntax_List {{ out.print(": Syntax_List {"); indent++; }} after Syntax_List {{ out.print(" }"); indent--; }} before -> Syntax_List, first, Nonempty_Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before ClassSpec_Commalist {{ out.print(": ClassSpec_Commalist {"); indent++; }} after ClassSpec_Commalist {{ out.print(" }"); indent--; }} before -> ClassSpec_Commalist, first, Nonempty_ClassSpec_Commalist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Enhancement_List {{ out.print(": Enhancement_List {"); indent++; }} after Enhancement_List {{ out.print(" }"); indent--; }} before -> Enhancement_List, first, Nonempty_Enhancement_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_Definition_DList {{ out.print(": Nonempty_Definition_DList ("); indent++; }} after Nonempty_Definition_DList {{ out.print(" )"); indent--; }} before -> Nonempty_Definition_DList, it, Definition {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_Definition_DList, next, Nonempty_Definition_DList {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_ClassName_Commalist {{ out.print(": Nonempty_ClassName_Commalist ("); indent++; }} after Nonempty_ClassName_Commalist {{ out.print(" )"); indent--; }} before -> Nonempty_ClassName_Commalist, it, ClassName {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_ClassName_Commalist, next, Nonempty_ClassName_Commalist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_ClassElementWithSyntax_List {{ out.print(": Nonempty_ClassElementWithSyntax_List ("); indent++; }} after Nonempty_ClassElementWithSyntax_List {{ out.print(" )"); indent--; }} before -> Nonempty_ClassElementWithSyntax_List, it, ClassElementWithSyntax {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_ClassElementWithSyntax_List, next, Nonempty_ClassElementWithSyntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_ClassSpec_Barlist {{ out.print(": Nonempty_ClassSpec_Barlist ("); indent++; }} after Nonempty_ClassSpec_Barlist {{ out.print(" )"); indent--; }} before -> Nonempty_ClassSpec_Barlist, it, ClassSpec {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_ClassSpec_Barlist, next, Nonempty_ClassSpec_Barlist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_Syntax_List {{ out.print(": Nonempty_Syntax_List ("); indent++; }} after Nonempty_Syntax_List {{ out.print(" )"); indent--; }} before -> Nonempty_Syntax_List, it, Syntax {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_Syntax_List, next, Nonempty_Syntax_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_ClassSpec_Commalist {{ out.print(": Nonempty_ClassSpec_Commalist ("); indent++; }} after Nonempty_ClassSpec_Commalist {{ out.print(" )"); indent--; }} before -> Nonempty_ClassSpec_Commalist, it, ClassSpec {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_ClassSpec_Commalist, next, Nonempty_ClassSpec_Commalist {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before Nonempty_Enhancement_List {{ out.print(": Nonempty_Enhancement_List ("); indent++; }} after Nonempty_Enhancement_List {{ out.print(" )"); indent--; }} before -> Nonempty_Enhancement_List, it, Enhancement {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} before -> Nonempty_Enhancement_List, next, Nonempty_Enhancement_List {{ out.println(); for (int i = 0; i < indent; i++) out.print("\t"); out.print(" "); }} }