Lucene.Net.Search.BitsFilteredDocIdSet.Wrap C# (CSharp) Метод

Wrap() публичный статический Метод

Convenience wrapper method: If {@code acceptDocs == null} it returns the original set without wrapping.
public static Wrap ( Lucene.Net.Search.DocIdSet set, Lucene.Net.Util.Bits acceptDocs ) : Lucene.Net.Search.DocIdSet
set Lucene.Net.Search.DocIdSet Underlying DocIdSet. If {@code null}, this method returns {@code null}
acceptDocs Lucene.Net.Util.Bits Allowed docs, all docids not in this set will not be returned by this DocIdSet. /// If {@code null}, this method returns the original set without wrapping.
Результат Lucene.Net.Search.DocIdSet
        public static DocIdSet Wrap(DocIdSet set, Bits acceptDocs)
        {
            return (set == null || acceptDocs == null) ? set : new BitsFilteredDocIdSet(set, acceptDocs);
        }

Usage Example

Пример #1
0
        public override DocIdSet GetDocIdSet(AtomicReaderContext context, IBits acceptDocs)
        {
            var    reader = context.AtomicReader;
            object key    = reader.CoreCacheKey;

            if (_cache.TryGetValue(key, out DocIdSet docIdSet) && docIdSet != null)
            {
                hitCount++;
            }
            else
            {
                missCount++;
                docIdSet = DocIdSetToCache(_filter.GetDocIdSet(context, null), reader);
                if (Debugging.AssertsEnabled)
                {
                    Debugging.Assert(docIdSet.IsCacheable);
                }
#if FEATURE_CONDITIONALWEAKTABLE_ADDORUPDATE
                _cache.AddOrUpdate(key, docIdSet);
#else
                _cache[key] = docIdSet;
#endif
            }

            return(docIdSet == EMPTY_DOCIDSET ? null : BitsFilteredDocIdSet.Wrap(docIdSet, acceptDocs));
        }
All Usage Examples Of Lucene.Net.Search.BitsFilteredDocIdSet::Wrap