import edu.neu.ccs.demeter.dj.*; import java.util.*; import edu.neu.ccs.demeter.*; class Kernel { protected Term nonempty; public Term get_nonempty() { return nonempty; } public void set_nonempty(Term new_nonempty) { nonempty = new_nonempty; } protected Term_Sandwich repeated; public Term_Sandwich get_repeated() { return repeated; } public void set_repeated(Term_Sandwich new_repeated) { repeated = new_repeated; } public Kernel() { super(); } public Kernel(Term nonempty, Term_Sandwich repeated) { super(); set_nonempty(nonempty); set_repeated(repeated); } public static Kernel parse(java.io.Reader in) throws ParseException { return new Parser(in)._Kernel(); } public static Kernel parse(java.io.InputStream in) throws ParseException { return new Parser(in)._Kernel(); } public static Kernel 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_); if (nonempty != null) { ((UniversalVisitor) _v_).before_nonempty(this, nonempty); nonempty.universal_trv0(_v_); ((UniversalVisitor) _v_).after_nonempty(this, nonempty); } ((UniversalVisitor) _v_).before_repeated(this, repeated); repeated.universal_trv0(_v_); ((UniversalVisitor) _v_).after_repeated(this, repeated); universal_trv0_aft(_v_); } }