Package org.apache.lucene.search.spans
Class NearSpansUnordered
- java.lang.Object
-
- org.apache.lucene.search.spans.Spans
-
- org.apache.lucene.search.spans.NearSpansUnordered
-
public class NearSpansUnordered extends Spans
Similar toNearSpansOrdered
, but for the unordered case. Expert: Only public for subclassing. Most implementations should not need this class
-
-
Constructor Summary
Constructors Constructor Description NearSpansUnordered(SpanNearQuery query, AtomicReaderContext context, Bits acceptDocs, Map<Term,TermContext> termContexts)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
cost()
Returns the estimated cost of this spans.int
doc()
Returns the document number of the current match.int
end()
Returns the end position of the current match.Collection<byte[]>
getPayload()
WARNING: The List is not necessarily in order of the the positionsSpans[]
getSubSpans()
boolean
isPayloadAvailable()
Checks if a payload can be loaded at this position.boolean
next()
Move to the next match, returning true iff any such exists.boolean
skipTo(int target)
Skips to the first match beyond the current, whose document number is greater than or equal to target.int
start()
Returns the start position of the current match.String
toString()
-
-
-
Constructor Detail
-
NearSpansUnordered
public NearSpansUnordered(SpanNearQuery query, AtomicReaderContext context, Bits acceptDocs, Map<Term,TermContext> termContexts) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getSubSpans
public Spans[] getSubSpans()
-
next
public boolean next() throws IOException
Description copied from class:Spans
Move to the next match, returning true iff any such exists.- Specified by:
next
in classSpans
- Throws:
IOException
-
skipTo
public boolean skipTo(int target) throws IOException
Description copied from class:Spans
Skips to the first match beyond the current, whose document number is greater than or equal to target.The behavior of this method is undefined when called with
target ≤ current
, or after the iterator has exhausted. Both cases may result in unpredicted behavior.Returns true iff there is such a match.
Behaves as if written:
boolean skipTo(int target) { do { if (!next()) return false; } while (target > doc()); return true; }
Most implementations are considerably more efficient than that.- Specified by:
skipTo
in classSpans
- Throws:
IOException
-
doc
public int doc()
Description copied from class:Spans
Returns the document number of the current match. Initially invalid.
-
start
public int start()
Description copied from class:Spans
Returns the start position of the current match. Initially invalid.
-
end
public int end()
Description copied from class:Spans
Returns the end position of the current match. Initially invalid.
-
getPayload
public Collection<byte[]> getPayload() throws IOException
WARNING: The List is not necessarily in order of the the positions- Specified by:
getPayload
in classSpans
- Returns:
- Collection of
byte[]
payloads - Throws:
IOException
- if there is a low-level I/O error
-
isPayloadAvailable
public boolean isPayloadAvailable() throws IOException
Description copied from class:Spans
Checks if a payload can be loaded at this position. Payloads can only be loaded once per call toSpans.next()
.- Specified by:
isPayloadAvailable
in classSpans
- Returns:
- true if there is a payload available at this position that can be loaded
- Throws:
IOException
-
cost
public long cost()
Description copied from class:Spans
Returns the estimated cost of this spans.This is generally an upper bound of the number of documents this iterator might match, but may be a rough heuristic, hardcoded value, or otherwise completely inaccurate.
-
-