// ** This class was generated with DemFGen (vers:10/21/2008) package gen; import edu.neu.ccs.demeterf.demfgen.lib.*; import edu.neu.ccs.demeterf.*; public class NodeInt extends BSTInt{ public final Integer data; public final BSTInt left; public final BSTInt right; public NodeInt(Integer data, BSTInt left, BSTInt right){ this.data = data; this.left = left; this.right = right; } public boolean equals(Object o){ if(!(o instanceof NodeInt))return false; NodeInt oo = (NodeInt)o; return (((Object)data).equals(oo.data))&&(((Object)left).equals(oo.left))&&(((Object)right).equals(oo.right)); } public static NodeInt parse(String inpt) throws ParseException{ return new TheParser(new java.io.StringBufferInputStream(inpt)).parse_NodeInt(); } public static NodeInt parse(java.io.InputStream inpt) throws ParseException{ return new TheParser(inpt).parse_NodeInt(); } public static NodeInt parse(java.io.Reader inpt) throws ParseException{ return new TheParser(inpt).parse_NodeInt(); } public static class data extends edu.neu.ccs.demeterf.control.Fields.any{} public static class left extends edu.neu.ccs.demeterf.control.Fields.any{} public static class right extends edu.neu.ccs.demeterf.control.Fields.any{} int height2() { return 1 + Math.max(left.height2(), right.height2()); } int diameter2() { int lheight = left.height2(); int rheight = right.height2(); int ldiameter = left.diameter2(); int rdiameter = right.diameter2(); return Math.max(lheight + rheight + 1, Math.max(ldiameter, rdiameter)); } boolean isEmpty(){ return false;} public String display(){ return gen.Display.DisplayM(this); } public String print(){ return gen.Print.PrintM(this); } public String toStr(){ return gen.ToStr.ToStrM(this); } }