// This file is automatically generated by DemeterJ. PrintVisitor { {{ 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; } PrintVisitor(java.io.PrintWriter out) { set_out(out); } PrintVisitor(java.io.PrintStream out) { set_out(new java.io.PrintWriter(out, true)); } }} finish {{ out.flush(); }} protected void space() {{ if (needSpace) out.print(" "); needSpace = false; }} before -> HistoryPcd, newstrategy, NewStrategy {{ space(); out.print("history"); needSpace = true; out.print("("); needSpace = false; }} after -> HistoryPcd, newstrategy, NewStrategy {{ out.print(")"); needSpace = false; }} before -> Entry, pointcut, Pointcut {{ space(); out.print("entry"); needSpace = true; out.print("("); needSpace = false; }} after -> Entry, pointcut, Pointcut {{ out.print(")"); needSpace = false; }} before -> Exit, pointcut, Pointcut {{ space(); out.print("exit"); needSpace = true; out.print("("); needSpace = false; }} after -> Exit, pointcut, Pointcut {{ out.print(")"); needSpace = false; }} before -> Pointcut, pointcutname, PointcutName {{ space(); out.print("pointcut"); needSpace = true; }} before AbstractNewStrategy {{ space(); out.print("abstract"); needSpace = true; }} before -> AbstractNewStrategy, newstrategyname, NewStrategyName {{ space(); out.print("pattern"); needSpace = true; }} before -> AbstractNewStrategy, formals, Formals {{ out.print("("); needSpace = false; }} after -> AbstractNewStrategy, formals, Formals {{ out.print(")"); needSpace = false; }} before ConcreteNewStrategy {{ space(); out.print("concrete"); needSpace = true; }} before -> ConcreteNewStrategy, newstrategyname, NewStrategyName {{ space(); out.print("pattern"); needSpace = true; }} before -> ConcreteNewStrategy, formals, Formals {{ out.print("("); needSpace = false; }} before -> ConcreteNewStrategy, orderednewstrategy_barlist, OrderedNewStrategy_BarList {{ out.print(")"); needSpace = false; out.print("::="); needSpace = false; }} before -> NamedNewStrategyRef, newstrategyname, NewStrategyName {{ space(); out.print("call"); needSpace = true; }} before -> NamedNewStrategyRef, actuals, Actuals {{ out.print("("); needSpace = false; }} after -> NamedNewStrategyRef, actuals, Actuals {{ out.print(")"); needSpace = false; }} before -> OrderedNewStrategy, newstrategy_plist, NewStrategy_PList {{ space(); out.print("ordered"); needSpace = true; }} before -> OptionalNewStrategy, newstrategy, NewStrategy {{ out.print("["); needSpace = false; }} after -> OptionalNewStrategy, newstrategy, NewStrategy {{ out.print("]"); needSpace = false; }} before -> ZeroOrMoreNewStrategy, newstrategy, NewStrategy {{ out.print("{"); needSpace = false; }} after -> ZeroOrMoreNewStrategy, newstrategy, NewStrategy {{ out.print("}"); needSpace = false; }} before Modifiers {{ space(); out.print("modifiers"); needSpace = true; }} before -> TypeName, ident, Ident {{ space(); out.print(source.get_ident()); needSpace = true; }} before -> VariableName, ident, Ident {{ space(); out.print(source.get_ident()); needSpace = true; }} before Actuals {{ space(); out.print("actuals"); needSpace = true; }} before -> NewStrategyName, ident, Ident {{ space(); out.print(source.get_ident()); needSpace = true; }} before -> PointcutName, ident, Ident {{ space(); out.print(source.get_ident()); needSpace = true; }} after -> PointcutName, ident, Ident {{ out.print("()"); needSpace = false; }} before -> PrintVisitor, indent, int {{ space(); out.print(source.get_indent()); needSpace = true; }} before -> PrintVisitor, needSpace, boolean {{ space(); out.print(source.get_needSpace()); needSpace = true; }} before -> CopyVisitor, copy, Object {{ space(); out.print(source.get_copy()); needSpace = true; }} before -> SubgraphVisitor, is_equal, boolean {{ space(); out.print(source.get_is_equal()); needSpace = true; }} before -> EqualVisitor, is_equal, boolean {{ space(); out.print(source.get_is_equal()); needSpace = true; }} before -> DisplayVisitor, indent, int {{ space(); out.print(source.get_indent()); needSpace = true; }} before -> TraceVisitor, indent, int {{ space(); out.print(source.get_indent()); needSpace = true; }} before NewStrategy_PList {{ out.print("("); needSpace = false; }} after NewStrategy_PList {{ out.print(")"); needSpace = false; }} before HistoryPcd_PList {{ out.print("("); needSpace = false; }} after HistoryPcd_PList {{ out.print(")"); needSpace = false; }} before -> OrderedNewStrategy_BarList, first, Nonempty_OrderedNewStrategy_BarList {{ out.print("("); needSpace = false; }} after -> OrderedNewStrategy_BarList, first, Nonempty_OrderedNewStrategy_BarList {{ out.print(")"); needSpace = false; }} before -> Nonempty_OrderedNewStrategy_BarList, next, Nonempty_OrderedNewStrategy_BarList {{ out.print("|"); needSpace = false; }} before -> Nonempty_Pair_CList, next, Nonempty_Pair_CList {{ out.print(","); needSpace = false; }} }