// 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 -> Program, exps, Outcome_PList {{ Program it = (Program) history.peek(); Outcome_PList p = new Outcome_PList(); it.set_exps(p); history.push(p); }} after -> Program, exps, Outcome_PList {{ history.pop(); }} before -> Outcome, assignment, Assignment {{ Outcome it = (Outcome) history.peek(); Assignment p = new Assignment(); it.set_assignment(p); history.push(p); }} after -> Outcome, assignment, Assignment {{ history.pop(); }} before -> Outcome, cnf, CNF {{ Outcome it = (Outcome) history.peek(); CNF p = new CNF(); it.set_cnf(p); history.push(p); }} after -> Outcome, cnf, CNF {{ history.pop(); }} before -> Assignment, literals, Literal_PList {{ Assignment it = (Assignment) history.peek(); Literal_PList p = new Literal_PList(); it.set_literals(p); history.push(p); }} after -> Assignment, literals, Literal_PList {{ history.pop(); }} before -> CNF, clauses, Clause_PList {{ CNF it = (CNF) history.peek(); Clause_PList p = new Clause_PList(); it.set_clauses(p); history.push(p); }} after -> CNF, clauses, Clause_PList {{ history.pop(); }} before -> CNF, sat, ClauseCount {{ CNF it = (CNF) history.peek(); ClauseCount p = new ClauseCount(); it.set_sat(p); history.push(p); }} after -> CNF, sat, ClauseCount {{ history.pop(); }} before -> CNF, unsat, ClauseCount {{ CNF it = (CNF) history.peek(); ClauseCount p = new ClauseCount(); it.set_unsat(p); history.push(p); }} after -> CNF, unsat, ClauseCount {{ history.pop(); }} before -> Clause, weight, Weight {{ Clause it = (Clause) history.peek(); Weight p = new Weight(); it.set_weight(p); history.push(p); }} after -> Clause, weight, Weight {{ history.pop(); }} before -> Clause, literals, Literal_PList {{ Clause it = (Clause) history.peek(); Literal_PList p = new Literal_PList(); it.set_literals(p); history.push(p); }} after -> Clause, literals, Literal_PList {{ history.pop(); }} before -> Literal, variable, Variable {{ Literal it = (Literal) history.peek(); Variable p = new Variable(); it.set_variable(p); history.push(p); }} after -> Literal, variable, Variable {{ history.pop(); }} before -> Variable, v, Ident {{ Variable it = (Variable) history.peek(); it.set_v(dest); }} before -> Weight, v, int {{ Weight it = (Weight) history.peek(); it.set_v(dest); }} before -> ClauseCount, v, int {{ ClauseCount it = (ClauseCount) history.peek(); it.set_v(dest); }} before -> Main, s, String {{ Main it = (Main) history.peek(); it.set_s(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 -> Outcome_PList, first, Nonempty_Outcome_PList {{ Outcome_PList it = (Outcome_PList) history.peek(); Nonempty_Outcome_PList p = new Nonempty_Outcome_PList(); it.set_first(p); history.push(p); }} after -> Outcome_PList, first, Nonempty_Outcome_PList {{ history.pop(); }} before -> Literal_PList, first, Nonempty_Literal_PList {{ Literal_PList it = (Literal_PList) history.peek(); Nonempty_Literal_PList p = new Nonempty_Literal_PList(); it.set_first(p); history.push(p); }} after -> Literal_PList, first, Nonempty_Literal_PList {{ history.pop(); }} before -> Clause_PList, first, Nonempty_Clause_PList {{ Clause_PList it = (Clause_PList) history.peek(); Nonempty_Clause_PList p = new Nonempty_Clause_PList(); it.set_first(p); history.push(p); }} after -> Clause_PList, first, Nonempty_Clause_PList {{ history.pop(); }} before -> Nonempty_Outcome_PList, it, Outcome {{ Nonempty_Outcome_PList it = (Nonempty_Outcome_PList) history.peek(); Outcome p = new Outcome(); it.set_it(p); history.push(p); }} after -> Nonempty_Outcome_PList, it, Outcome {{ history.pop(); }} before -> Nonempty_Outcome_PList, next, Nonempty_Outcome_PList {{ Nonempty_Outcome_PList it = (Nonempty_Outcome_PList) history.peek(); Nonempty_Outcome_PList p = new Nonempty_Outcome_PList(); it.set_next(p); history.push(p); }} after -> Nonempty_Outcome_PList, next, Nonempty_Outcome_PList {{ history.pop(); }} before -> Nonempty_Literal_PList, it, Literal {{ Nonempty_Literal_PList it = (Nonempty_Literal_PList) history.peek(); Class c = dest.getClass(); Object p = null; try { p = c.newInstance(); } catch(Exception e) { e.printStackTrace(); } it.set_it((Literal) p); history.push(p); }} after -> Nonempty_Literal_PList, it, Literal {{ history.pop(); }} before -> Nonempty_Literal_PList, next, Nonempty_Literal_PList {{ Nonempty_Literal_PList it = (Nonempty_Literal_PList) history.peek(); Nonempty_Literal_PList p = new Nonempty_Literal_PList(); it.set_next(p); history.push(p); }} after -> Nonempty_Literal_PList, next, Nonempty_Literal_PList {{ history.pop(); }} before -> Nonempty_Clause_PList, it, Clause {{ Nonempty_Clause_PList it = (Nonempty_Clause_PList) history.peek(); Clause p = new Clause(); it.set_it(p); history.push(p); }} after -> Nonempty_Clause_PList, it, Clause {{ history.pop(); }} before -> Nonempty_Clause_PList, next, Nonempty_Clause_PList {{ Nonempty_Clause_PList it = (Nonempty_Clause_PList) history.peek(); Nonempty_Clause_PList p = new Nonempty_Clause_PList(); it.set_next(p); history.push(p); }} after -> Nonempty_Clause_PList, next, Nonempty_Clause_PList {{ history.pop(); }} }