// This file is automatically generated by DemeterJ. CopyVisitor { {{ private java.util.Stack history = new java.util.Stack(); public CopyVisitor(Class firstClass) { try { history.push(firstClass.newInstance()); } catch(Exception e) { e.printStackTrace(); } } }} get copy {{ return history.peek(); }} return Object {{ get_copy() }} before -> Main, s, String {{ Main it = (Main) history.peek(); it.set_s(dest); }} before -> TraversalPaths, tracematch_list, TraceMatch_List {{ TraversalPaths it = (TraversalPaths) history.peek(); TraceMatch_List p = new TraceMatch_List(); it.set_tracematch_list(p); history.push(p); }} after -> TraversalPaths, tracematch_list, TraceMatch_List {{ history.pop(); }} before -> TraceMatch, decls, VariableDeclaration_CList {{ TraceMatch it = (TraceMatch) history.peek(); VariableDeclaration_CList p = new VariableDeclaration_CList(); it.set_decls(p); history.push(p); }} after -> TraceMatch, decls, VariableDeclaration_CList {{ history.pop(); }} before -> TraceMatch, SymbolDeclaration, Symbol_List {{ TraceMatch it = (TraceMatch) history.peek(); Symbol_List p = new Symbol_List(); it.set_SymbolDeclaration(p); history.push(p); }} after -> TraceMatch, SymbolDeclaration, Symbol_List {{ history.pop(); }} before -> TraceMatch, regex, RegEx {{ TraceMatch it = (TraceMatch) history.peek(); RegEx p = new RegEx(); it.set_regex(p); history.push(p); }} after -> TraceMatch, regex, RegEx {{ history.pop(); }} before -> VariableDeclaration, classname, ClassName {{ VariableDeclaration it = (VariableDeclaration) history.peek(); ClassName p = new ClassName(); it.set_classname(p); history.push(p); }} after -> VariableDeclaration, classname, ClassName {{ history.pop(); }} before -> VariableDeclaration, variablename, VariableName {{ VariableDeclaration it = (VariableDeclaration) history.peek(); VariableName p = new VariableName(); it.set_variablename(p); history.push(p); }} after -> VariableDeclaration, variablename, VariableName {{ history.pop(); }} before -> Symbol, name, Name {{ Symbol it = (Symbol) history.peek(); Name p = new Name(); it.set_name(p); history.push(p); }} after -> Symbol, name, Name {{ history.pop(); }} before -> Symbol, kind, Kind {{ Symbol it = (Symbol) history.peek(); Class c = dest.getClass(); Object p = null; try { p = c.newInstance(); } catch(Exception e) { e.printStackTrace(); } it.set_kind((Kind) p); history.push(p); }} after -> Symbol, kind, Kind {{ history.pop(); }} before -> Symbol, pointcutexp, PointcutExp {{ Symbol it = (Symbol) history.peek(); Class c = dest.getClass(); Object p = null; try { p = c.newInstance(); } catch(Exception e) { e.printStackTrace(); } it.set_pointcutexp((PointcutExp) p); history.push(p); }} after -> Symbol, pointcutexp, PointcutExp {{ history.pop(); }} before -> Call, classname, ClassName {{ Call it = (Call) history.peek(); ClassName p = new ClassName(); it.set_classname(p); history.push(p); }} after -> Call, classname, ClassName {{ history.pop(); }} before -> Call, methodname, MethodName {{ Call it = (Call) history.peek(); MethodName p = new MethodName(); it.set_methodname(p); history.push(p); }} after -> Call, methodname, MethodName {{ history.pop(); }} before -> Target, variablename, VariableName {{ Target it = (Target) history.peek(); VariableName p = new VariableName(); it.set_variablename(p); history.push(p); }} after -> Target, variablename, VariableName {{ history.pop(); }} before -> This, variablename, VariableName {{ This it = (This) history.peek(); VariableName p = new VariableName(); it.set_variablename(p); history.push(p); }} after -> This, variablename, VariableName {{ history.pop(); }} before -> Compound, op, Op {{ Compound it = (Compound) history.peek(); Class c = dest.getClass(); Object p = null; try { p = c.newInstance(); } catch(Exception e) { e.printStackTrace(); } it.set_op((Op) p); history.push(p); }} after -> Compound, op, Op {{ history.pop(); }} before -> Compound, args, PointcutExp_List {{ Compound it = (Compound) history.peek(); PointcutExp_List p = new PointcutExp_List(); it.set_args(p); history.push(p); }} after -> Compound, args, PointcutExp_List {{ history.pop(); }} before -> Name, ident, Ident {{ Name it = (Name) history.peek(); it.set_ident(dest); }} before -> ClassName, ident, Ident {{ ClassName it = (ClassName) history.peek(); it.set_ident(dest); }} before -> MethodName, ident, Ident {{ MethodName it = (MethodName) history.peek(); it.set_ident(dest); }} before -> VariableName, ident, Ident {{ VariableName it = (VariableName) history.peek(); it.set_ident(dest); }} before -> PrintVisitor, indent, int {{ PrintVisitor it = (PrintVisitor) history.peek(); it.set_indent(dest); }} before -> PrintVisitor, needSpace, boolean {{ PrintVisitor it = (PrintVisitor) history.peek(); it.set_needSpace(dest); }} before -> SubgraphVisitor, is_equal, boolean {{ SubgraphVisitor it = (SubgraphVisitor) history.peek(); it.set_is_equal(dest); }} before -> EqualVisitor, is_equal, boolean {{ EqualVisitor it = (EqualVisitor) history.peek(); it.set_is_equal(dest); }} before -> DisplayVisitor, indent, int {{ DisplayVisitor it = (DisplayVisitor) history.peek(); it.set_indent(dest); }} before -> TraceVisitor, indent, int {{ TraceVisitor it = (TraceVisitor) history.peek(); it.set_indent(dest); }} before -> TraceMatch_List, first, Nonempty_TraceMatch_List {{ TraceMatch_List it = (TraceMatch_List) history.peek(); Nonempty_TraceMatch_List p = new Nonempty_TraceMatch_List(); it.set_first(p); history.push(p); }} after -> TraceMatch_List, first, Nonempty_TraceMatch_List {{ history.pop(); }} before -> VariableDeclaration_CList, first, Nonempty_VariableDeclaration_CList {{ VariableDeclaration_CList it = (VariableDeclaration_CList) history.peek(); Nonempty_VariableDeclaration_CList p = new Nonempty_VariableDeclaration_CList(); it.set_first(p); history.push(p); }} after -> VariableDeclaration_CList, first, Nonempty_VariableDeclaration_CList {{ history.pop(); }} before -> Symbol_List, first, Nonempty_Symbol_List {{ Symbol_List it = (Symbol_List) history.peek(); Nonempty_Symbol_List p = new Nonempty_Symbol_List(); it.set_first(p); history.push(p); }} after -> Symbol_List, first, Nonempty_Symbol_List {{ history.pop(); }} before -> PointcutExp_List, first, Nonempty_PointcutExp_List {{ PointcutExp_List it = (PointcutExp_List) history.peek(); Nonempty_PointcutExp_List p = new Nonempty_PointcutExp_List(); it.set_first(p); history.push(p); }} after -> PointcutExp_List, first, Nonempty_PointcutExp_List {{ history.pop(); }} before -> Nonempty_TraceMatch_List, it, TraceMatch {{ Nonempty_TraceMatch_List it = (Nonempty_TraceMatch_List) history.peek(); TraceMatch p = new TraceMatch(); it.set_it(p); history.push(p); }} after -> Nonempty_TraceMatch_List, it, TraceMatch {{ history.pop(); }} before -> Nonempty_TraceMatch_List, next, Nonempty_TraceMatch_List {{ Nonempty_TraceMatch_List it = (Nonempty_TraceMatch_List) history.peek(); Nonempty_TraceMatch_List p = new Nonempty_TraceMatch_List(); it.set_next(p); history.push(p); }} after -> Nonempty_TraceMatch_List, next, Nonempty_TraceMatch_List {{ history.pop(); }} before -> Nonempty_VariableDeclaration_CList, it, VariableDeclaration {{ Nonempty_VariableDeclaration_CList it = (Nonempty_VariableDeclaration_CList) history.peek(); VariableDeclaration p = new VariableDeclaration(); it.set_it(p); history.push(p); }} after -> Nonempty_VariableDeclaration_CList, it, VariableDeclaration {{ history.pop(); }} before -> Nonempty_VariableDeclaration_CList, next, Nonempty_VariableDeclaration_CList {{ Nonempty_VariableDeclaration_CList it = (Nonempty_VariableDeclaration_CList) history.peek(); Nonempty_VariableDeclaration_CList p = new Nonempty_VariableDeclaration_CList(); it.set_next(p); history.push(p); }} after -> Nonempty_VariableDeclaration_CList, next, Nonempty_VariableDeclaration_CList {{ history.pop(); }} before -> Nonempty_Symbol_List, it, Symbol {{ Nonempty_Symbol_List it = (Nonempty_Symbol_List) history.peek(); Symbol p = new Symbol(); it.set_it(p); history.push(p); }} after -> Nonempty_Symbol_List, it, Symbol {{ history.pop(); }} before -> Nonempty_Symbol_List, next, Nonempty_Symbol_List {{ Nonempty_Symbol_List it = (Nonempty_Symbol_List) history.peek(); Nonempty_Symbol_List p = new Nonempty_Symbol_List(); it.set_next(p); history.push(p); }} after -> Nonempty_Symbol_List, next, Nonempty_Symbol_List {{ history.pop(); }} before -> Nonempty_PointcutExp_List, it, PointcutExp {{ Nonempty_PointcutExp_List it = (Nonempty_PointcutExp_List) history.peek(); Class c = dest.getClass(); Object p = null; try { p = c.newInstance(); } catch(Exception e) { e.printStackTrace(); } it.set_it((PointcutExp) p); history.push(p); }} after -> Nonempty_PointcutExp_List, it, PointcutExp {{ history.pop(); }} before -> Nonempty_PointcutExp_List, next, Nonempty_PointcutExp_List {{ Nonempty_PointcutExp_List it = (Nonempty_PointcutExp_List) history.peek(); Nonempty_PointcutExp_List p = new Nonempty_PointcutExp_List(); it.set_next(p); history.push(p); }} after -> Nonempty_PointcutExp_List, next, Nonempty_PointcutExp_List {{ history.pop(); }} }