// // To avoid ValueType.Equals which is slow // public override int GetHashCode () { return Stamp ^ (int) _user_data ^ (int) _user_data2 ^ (int) _user_data3; } public override bool Equals (object o) { if (o == null) return false; if (!(o is TreeIter)) return false; TreeIter ti = (TreeIter) o; return ti.Stamp == Stamp && ti._user_data == _user_data && ti._user_data2 == _user_data2 && ti._user_data3 == _user_data3; }