NAME

Lucy::Search::Matcher - Match a set of document ids.

SYNOPSIS

# abstract base class

DESCRIPTION

A Matcher iterates over a set of ascending document ids. Some Matchers implement score() and can assign relevance scores to the docs that they match. Other implementations may be match-only.

CONSTRUCTORS

new

my $matcher = MyMatcher->SUPER::new;

Abstract constructor.

ABSTRACT METHODS

next

my $int = $matcher->next();

Proceed to the next doc id.

Returns: A positive doc id, or 0 once the iterator is exhausted.

get_doc_id

my $int = $matcher->get_doc_id();

Return the current doc id. Valid only after a successful call to next() or advance() and must not be called otherwise.

score

my $float = $matcher->score();

Return the score of the current document.

Only Matchers which are used for scored search need implement score().

METHODS

advance

my $int = $matcher->advance($target);

Advance the iterator to the first doc id greater than or equal to target. The default implementation simply calls next() over and over, but subclasses have the option of doing something more efficient.

  • target - A positive doc id, which must be greater than the current doc id once the iterator has been initialized.

Returns: A positive doc id, or 0 once the iterator is exhausted.

INHERITANCE

Lucy::Search::Matcher isa Clownfish::Obj.