Search::Xapian::MatchSpy - abstract base class for match spies.


This is an abstract base class for match spies in Xapian.

The subclasses will generally accumulate information seen during the match, to calculate aggregate functions, or other profiles of the matching documents.


operator() <Document> <weight>

Virtual - needs to be implemented in extending classes. Registers a document with the match spy.

This is called by the matcher once with each document seen by the matcher during the match process. Note that the matcher will often not see all the documents which match the query, due to optimisations which allow low-weighted documents to be skipped, and allow the match process to be terminated early.


Return a string describing this object.

This default implementation returns a generic answer, to avoid forcing those deriving their own MatchSpy subclasses from having to implement this (they may not care what get_description() gives for their subclass).

Reimplemented in Xapian::ValueCountMatchSpy.


Return the name of this match spy.

This name is used by the remote backend. It is passed with the serialised parameters to the remote server so that it knows which class to create. Return the full namespace-qualified name of your class here. If you don't want to support the remote backend in your match spy, you can use the default implementation which simply throws Xapian::UnimplementedError.

Reimplemented in Xapian::ValueCountMatchSpy.


Search::Xapian, Search::Xapian::ValueCountMatchSpy, Search::Xapian::PerlMatchSpy