Lucene++ - a full-featured, c++ search engine
API Documentation

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions
Lucene::Spans Class Referenceabstract

An enumeration of span matches. Used to implement span searching. Each span represents a range of term positions within a document. Matches are enumerated in order, by increasing document number, within that by increasing start position and finally by increasing end position. More...

`#include <Spans.h>`

Inheritance diagram for Lucene::Spans:

## Public Member Functions

virtual | ~Spans ()
virtual String | getClassName ()
boost::shared_ptr< Spans > | shared_from_this ()
virtual bool | next ()=0
| Move to the next match, returning true if any such exists.
virtual bool | skipTo (int32_t target)=0
| Skips to the first match beyond the current, whose document number is greater than or equal to target.
virtual int32_t | doc ()=0
| Returns the document number of the current match. Initially invalid.
virtual int32_t | start ()=0
| Returns the start position of the current match. Initially invalid.
virtual int32_t | end ()=0
| Returns the end position of the current match. Initially invalid.
virtual Collection< ByteArray > | getPayload ()=0

Returns the payload data for the current span. This is invalid until `next()` is called for the first time. This method must not be called more than once after each call of `next()`. However, most payloads are loaded lazily, so if the payload data for the current position is not needed, this method may not be called at all for performance reasons. An ordered SpanQuery does not lazy load, so if you have payloads in your index and you do not want ordered SpanNearQuerys to collect payloads, you can disable collection with a constructor option.

virtual bool | isPayloadAvailable ()=0
| Checks if a payload can be loaded at this position.
Public Member Functions inherited from Lucene::LuceneObject
virtual | ~LuceneObject ()
virtual void | initialize ()
| Called directly after instantiation to create objects that depend on this object being fully constructed.
virtual LuceneObjectPtr | clone (const LuceneObjectPtr &other=LuceneObjectPtr())
| Return clone of this object.
virtual int32_t | hashCode ()
| Return hash code for this object.
virtual bool | equals (const LuceneObjectPtr &other)
| Return whether two objects are equal.
virtual int32_t | compareTo (const LuceneObjectPtr &other)
| Compare two objects.
virtual String | toString ()
| Returns a string representation of the object.
Public Member Functions inherited from Lucene::LuceneSync
virtual | ~LuceneSync ()
virtual SynchronizePtr | getSync ()
| Return this object synchronize lock.
virtual LuceneSignalPtr | getSignal ()
| Return this object signal.
virtual void | lock (int32_t timeout=0)
| Lock this object using an optional timeout.
virtual void | unlock ()
| Unlock this object.
virtual bool | holdsLock ()
| Returns true if this object is currently locked by current thread.
virtual void | wait (int32_t timeout=0)
| Wait for signal using an optional timeout.
virtual void | notifyAll ()
| Notify all threads waiting for signal.

## Static Public Member Functions

static String | _getClassName ()

## Additional Inherited Members

Protected Member Functions inherited from Lucene::LuceneObject
| LuceneObject ()
Protected Attributes inherited from Lucene::LuceneSync
SynchronizePtr | objectLock
LuceneSignalPtr | objectSignal

## Detailed Description

An enumeration of span matches. Used to implement span searching. Each span represents a range of term positions within a document. Matches are enumerated in order, by increasing document number, within that by increasing start position and finally by increasing end position.

## Constructor & Destructor Documentation

## ◆ ~Spans()

virtual Lucene::Spans::~Spans | ( |  | ) |

virtual

## Member Function Documentation

## ◆ _getClassName()

static String Lucene::Spans::_getClassName | ( |  | ) |

inline static

## ◆ doc()

virtual int32_t Lucene::Spans::doc | ( |  | ) |

pure virtual

Returns the document number of the current match. Initially invalid.

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ end()

virtual int32_t Lucene::Spans::end | ( |  | ) |

pure virtual

Returns the end position of the current match. Initially invalid.

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ getClassName()

virtual String Lucene::Spans::getClassName | ( |  | ) |

inline virtual

Reimplemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ getPayload()

virtual Collection< ByteArray > Lucene::Spans::getPayload | ( |  | ) |

pure virtual

Returns the payload data for the current span. This is invalid until `next()` is called for the first time. This method must not be called more than once after each call of `next()`. However, most payloads are loaded lazily, so if the payload data for the current position is not needed, this method may not be called at all for performance reasons. An ordered SpanQuery does not lazy load, so if you have payloads in your index and you do not want ordered SpanNearQuerys to collect payloads, you can disable collection with a constructor option.

Note that the return type is a collection, thus the ordering should not be relied upon.

Returns
  a List of byte arrays containing the data of this payload, otherwise null if isPayloadAvailable is false

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ isPayloadAvailable()

virtual bool Lucene::Spans::isPayloadAvailable | ( |  | ) |

pure virtual

Checks if a payload can be loaded at this position.

Payloads can only be loaded once per call to `next()`.

Returns
  true if there is a payload available at this position that can be loaded

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ next()

virtual bool Lucene::Spans::next | ( |  | ) |

pure virtual

Move to the next match, returning true if any such exists.

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ shared_from_this()

boost::shared_ptr< Spans > Lucene::Spans::shared_from_this | ( |  | ) |

inline

## ◆ skipTo()

virtual bool Lucene::Spans::skipTo | ( | int32_t | target | ) |

pure virtual

Skips to the first match beyond the current, whose document number is greater than or equal to target.

Returns true if there is such a match.

Behaves as if written:

    bool skipTo(int32_t target)
    {
        do
        {
            if (!next())
                return false;
        }
        while (target > doc());
        return true;
    }

Most implementations are considerably more efficient than that.

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

## ◆ start()

virtual int32_t Lucene::Spans::start | ( |  | ) |

pure virtual

Returns the start position of the current match. Initially invalid.

Implemented in Lucene::NearSpansOrdered, Lucene::NearSpansUnordered, and Lucene::TermSpans.

The documentation for this class was generated from the following file:

- Spans.h

clucene.sourceforge.net