core: import EDU.neu.ccs.demeter.*; add: class SummingVisitor extends UniversalVisitor { protected int total; public int get_total() (@ return total; @) public void set_total(int new_total) (@ total = new_total; @) public constructor SummingVisitor(int total) (@ super(); set_total(total); @) public static SummingVisitor parse(java.io.Reader in) throws ParseException (@ return new Parser(in)._SummingVisitor(); @) public static SummingVisitor parse(java.io.InputStream in) throws ParseException (@ return new Parser(in)._SummingVisitor(); @) public static SummingVisitor parse(String s) (@ try { return parse(new java.io.StringReader(s)); } catch (ParseException e) { throw new RuntimeException(e.toString()); } @) public constructor SummingVisitor() (@ total = 0; @) public void before(Quantity host) (@ System.out.println("sum " + total); total = total + host.get_number().intValue(); @) int get_return_val() (@ return total ; @) (@ 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_); } @) }