public final class HashDocSet extends Object
HashDocSet represents an unordered set of Lucene Document Ids
using a primitive int hash table. It can be a better choice if there are few docs
in the set because it takes up less memory and is faster to iterate and take
set intersections.| Constructor and Description |
|---|
HashDocSet(HashDocSet set) |
HashDocSet(int[] docs,
int offset,
int len)
Create a HashDocSet from a list of *unique* ids
|
HashDocSet(int[] docs,
int offset,
int len,
float inverseLoadFactor)
Create a HashDocSet from a list of *unique* ids
|
| Modifier and Type | Method and Description |
|---|---|
void |
add(int doc)
Adds the specified document if it is not currently in the DocSet
(optional operation).
|
void |
addAllTo(DocSet target)
Adds all the docs from this set to the target set.
|
void |
addUnique(int doc)
Adds a document the caller knows is not currently in the DocSet
(optional operation).
|
DocSet |
andNot(DocSet other)
Returns the documents in this set that are not in the other set.
|
int |
andNotSize(DocSet other)
Returns the number of documents in this set that are not in the other set.
|
HashDocSet |
clone() |
boolean |
equals(Object obj) |
boolean |
exists(int doc)
Returns true if a document is in the DocSet.
|
protected FixedBitSet |
getBits()
Return a
FixedBitSet with a bit set for every document in this
DocSet. |
Collection<Accountable> |
getChildResources() |
Filter |
getTopFilter()
Returns a Filter for use in Lucene search methods, assuming this DocSet
was generated from the top-level MultiReader that the Lucene search
methods will be invoked with.
|
DocSet |
intersection(DocSet other)
Returns the intersection of this set with another set.
|
int |
intersectionSize(DocSet other)
Returns the number of documents of the intersection of this set with another set.
|
boolean |
intersects(DocSet other)
Returns true if these sets have any elements in common
|
DocIterator |
iterator()
Returns an iterator that may be used to iterate over all of the documents in the set.
|
long |
ramBytesUsed() |
int |
size()
Returns the number of documents in the set.
|
static FixedBitSet |
toBitSet(DocSet set) |
DocSet |
union(DocSet other)
Returns the union of this set with another set.
|
int |
unionSize(DocSet other)
Returns the number of documents of the union of this set with another set.
|
public HashDocSet(HashDocSet set)
public HashDocSet(int[] docs,
int offset,
int len)
public HashDocSet(int[] docs,
int offset,
int len,
float inverseLoadFactor)
public boolean exists(int doc)
DocSetpublic int size()
DocSetpublic DocIterator iterator()
DocSetThe order of the documents returned by this iterator is non-deterministic, and any scoring information is meaningless
public DocSet intersection(DocSet other)
DocSetintersection in interface DocSetpublic int intersectionSize(DocSet other)
DocSetintersectionSize in interface DocSetpublic boolean intersects(DocSet other)
DocSetintersects in interface DocSetpublic DocSet andNot(DocSet other)
DocSetpublic DocSet union(DocSet other)
DocSetpublic HashDocSet clone()
public long ramBytesUsed()
public Collection<Accountable> getChildResources()
public static FixedBitSet toBitSet(DocSet set)
public void add(int doc)
DocSetadd in interface DocSetSolrException - Base implementation does not allow modificationsDocSet.addUnique(int)public void addUnique(int doc)
DocSet
This method may be faster then add(doc) in some
implementations provided the caller is certain of the precondition.
addUnique in interface DocSetSolrException - Base implementation does not allow modificationsDocSet.add(int)protected FixedBitSet getBits()
FixedBitSet with a bit set for every document in this
DocSet. The default implementation iterates on all docs and sets
the relevant bits. You should override if you can provide a more efficient
implementation.public int unionSize(DocSet other)
DocSetpublic int andNotSize(DocSet other)
DocSetandNotSize in interface DocSetpublic Filter getTopFilter()
DocSetgetTopFilter in interface DocSetCopyright © 2000-2020 Apache Software Foundation. All Rights Reserved.