private boolean fequalsTree(FTree other) { if (other == null) { return false; } if (this.hashCode != other.hashCode) { return false; } if (!this.text.equals(other.text)) { return false; } if (this.decendants != other.decendants) { return false; } if (this.getLeft() != null) { return this.getLeft().fequalsTreeAux(other.getLeft()); } else if (this.getLeft() == null && other.getLeft() == null) { return true; } else { return false; } }
private boolean fequalsTreeAux(FTree other) { if (other == null) { return false; } if (!this.text.equals(other.text)) { return false; } boolean res = true; FTree left = this.getLeft(); if (left != null) { res = left.fequalsTreeAux(other.getLeft()); } if (res) { FTree sib = this.getSibbling(); if (sib != null) { res = sib.fequalsTreeAux(other.getSibbling()); } } return res; }
public boolean equals(Object o) { FTree other = (FTree) o; boolean res = fequalsTree(other); assert res == this.toStringTree().equals(other.toStringTree()); return res; }