core: import edu.neu.ccs.demeter.*; add: class Quantity { protected Number number; public Number get_number() {{ return number; }} public void set_number(Number new_number) {{ number = new_number; }} public constructor Quantity() {{ super(); }} public constructor Quantity(Number number) {{ super(); set_number(number); }} public static Quantity parse(java.io.Reader in) throws ParseException {{ return new Parser(in)._Quantity(); }} public static Quantity parse(java.io.InputStream in) throws ParseException {{ return new Parser(in)._Quantity(); }} public static Quantity parse(String s) {{ try { return parse(new java.io.StringReader(s)); } catch (ParseException e) { throw new RuntimeException(e.toString()); } }} {{ void universal_trv0_bef(UniversalVisitor _v_) { ((UniversalVisitor) _v_).before(this); } }} {{ void universal_trv0_aft(UniversalVisitor _v_) { ((UniversalVisitor) _v_).after(this); } }} {{ void universal_trv0(UniversalVisitor _v_) { universal_trv0_bef(_v_); ((UniversalVisitor) _v_).before_number(this, number); ((UniversalVisitor) _v_).after_number(this, number); universal_trv0_aft(_v_); } }} {{ void toAll_ShoeOrder_trv_bef(UniversalVisitor __v0) { ((UniversalVisitor) __v0).before(this); } }} {{ void toAll_ShoeOrder_trv_aft(UniversalVisitor __v0) { ((UniversalVisitor) __v0).after(this); } }} {{ void toAll_ShoeOrder_trv(UniversalVisitor __v0) { toAll_ShoeOrder_trv_bef(__v0); ((UniversalVisitor) __v0).before_number(this, number); ((UniversalVisitor) __v0).after_number(this, number); toAll_ShoeOrder_trv_aft(__v0); } }} {{ void toAllQuantities_ShoeOrder_trv_bef(UniversalVisitor __v0) { ((UniversalVisitor) __v0).before(this); } }} {{ void toAllQuantities_ShoeOrder_trv_aft(UniversalVisitor __v0) { ((UniversalVisitor) __v0).after(this); } }} {{ void toAllQuantities_ShoeOrder_trv(UniversalVisitor __v0) { toAllQuantities_ShoeOrder_trv_bef(__v0); toAllQuantities_ShoeOrder_trv_aft(__v0); } }} {{ void __trav_sumWithDebugging_ShoeOrder_trv_bef(SummingVisitor __v0, TraceVisitor __v1) { ((SummingVisitor) __v0).before(this); ((TraceVisitor) __v1).before(this); } }} {{ void __trav_sumWithDebugging_ShoeOrder_trv_aft(SummingVisitor __v0, TraceVisitor __v1) { ((TraceVisitor) __v1).after(this); ((UniversalVisitor) __v0).after(this); } }} {{ void __trav_sumWithDebugging_ShoeOrder_trv(SummingVisitor __v0, TraceVisitor __v1) { __trav_sumWithDebugging_ShoeOrder_trv_bef(__v0, __v1); __trav_sumWithDebugging_ShoeOrder_trv_aft(__v0, __v1); } }} }