The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Lucy::Search::IndexSearcher - Execute searches against a single index.

SYNOPSIS

    my $searcher = Lucy::Search::IndexSearcher->new( 
        index => '/path/to/index' 
    );
    my $hits = $searcher->hits(
        query      => 'foo bar',
        offset     => 0,
        num_wanted => 100,
    );

DESCRIPTION

Use the IndexSearcher class to perform search queries against an index. (For searching multiple indexes at once, see PolySearcher).

IndexSearchers operate against a single point-in-time view or Snapshot of the index. If an index is modified, a new IndexSearcher must be opened to access the changes.

CONSTRUCTORS

new

    my $searcher = Lucy::Search::IndexSearcher->new( 
        index => '/path/to/index' 
    );

Create a new IndexSearcher.

  • index - Either a string filepath, a Folder, or an IndexReader.

METHODS

doc_max

    my $int = $index_searcher->doc_max();

Return the maximum number of docs in the collection represented by the Searcher, which is also the highest possible internal doc id. Documents which have been marked as deleted but not yet purged are included in this count.

doc_freq

    my $int = $index_searcher->doc_freq(
        field => $field,  # required
        term  => $term,   # required
    );

Return the number of documents which contain the term in the given field.

  • field - Field name.

  • term - The term to look up.

collect

    $index_searcher->collect(
        query     => $query,      # required
        collector => $collector,  # required
    );

Iterate over hits, feeding them into a Collector.

  • query - A Query.

  • collector - A Collector.

fetch_doc

    my $hit_doc = $index_searcher->fetch_doc($doc_id);

Retrieve a document. Throws an error if the doc id is out of range.

  • doc_id - A document id.

get_reader

    my $index_reader = $index_searcher->get_reader();

Accessor for the object’s reader member.

INHERITANCE

Lucy::Search::IndexSearcher isa Lucy::Search::Searcher isa Clownfish::Obj.