## org.apache.lucene.search
Class Filter

    java.lang.Object
      org.apache.lucene.search.Filter

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  CachingWrapperFilter, FieldCacheRangeFilter, FieldCacheTermsFilter, FieldValueFilter, MultiTermQueryWrapperFilter, QueryWrapperFilter, SpanFilter

    public abstract class Filter

extends Object
implements Serializable

Abstract base class for restricting which documents may be returned during searching.

See Also:
  Serialized Form

Constructor Summary
`Filter()`

Method Summary
`abstract DocIdSet` `getDocIdSet(IndexReader reader)` Creates a `DocIdSet` enumerating the documents that should be permitted in search results.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Filter

    public Filter()

Method Detail

### getDocIdSet

    public abstract DocIdSet getDocIdSet(IndexReader reader)
                                  throws IOException

  Creates a `DocIdSet` enumerating the documents that should be permitted in search results. NOTE: null can be returned if no documents are accepted by this Filter.

  Note: This method will be called once per segment in the index during searching. The returned `DocIdSet` must refer to document IDs for that segment, not for the top-level reader.

  Parameters:
    `reader` - a `IndexReader` instance opened on the index currently searched on. Note, it is likely that the provided reader does not represent the whole underlying index i.e. if the index has more than one segment the given reader only represents a single segment.
  Returns:
    a DocIdSet that provides the documents which should be permitted or prohibited in search results. NOTE: null can be returned if no documents will be accepted by this Filter.
  Throws:
    `IOException`
  See Also:
    `DocIdBitSet`