public override bool Equals(object obj) { if (this == obj) { return(true); } if ((obj == null) || (obj.GetType() != this.GetType())) { return(false); } TermsFilter test = (TermsFilter)obj; // first check the fields before even comparing the bytes if (test.hashCode_Renamed == hashCode_Renamed && Arrays.Equals(termsAndFields, test.termsAndFields)) { int lastOffset = termsAndFields[termsAndFields.Length - 1].end; // compare offsets since we sort they must be identical if (ArrayUtil.Equals(offsets, 0, test.offsets, 0, lastOffset + 1)) { // straight byte comparison since we sort they must be identical return(ArrayUtil.Equals(termsBytes, 0, test.termsBytes, 0, offsets[lastOffset])); } } return(false); }
public FieldAndTermEnumAnonymousInnerClassHelper(TermsFilter outerInstance, IList <Term> terms) { this.outerInstance = outerInstance; this.terms = terms; iter = Sort(terms).GetEnumerator(); }
public FieldAndTermEnumAnonymousInnerClassHelper2(TermsFilter outerInstance, string field, IList <BytesRef> terms) : base(field) { this.outerInstance = outerInstance; this.terms = terms; iter = Sort(terms).GetEnumerator(); }