Plucene::Index::SegmentReader.3pm

Langue: en

Autres versions - même langue

Version: 2005-09-05 (ubuntu - 08/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Plucene::Index::SegmentReader - the Segment reader

SYNOPSIS

         my $seg_reader = 
           Plucene::Index::SegmentReader->new( Plucene::Index::SegmentInfo $si);
 
         my @files = $seg_reader->files;
         my @terms = $seg_reader->terms;
         my $doc = $seg_reader->document($id);
         my $doc_freq = $seg_reader->doc_freq($term);
         my $max_doc = $seg_reader->max_doc;
         my $norms = $seg_reader->norms($field, $offset);
         
         my Plucene::Index::SegmentTermDocs $docs 
                 = $seg_reader->term_docs($term);
         
         my Plucene::Index::SegmentTermPositions $pos 
                 = $seg_reader->term_positions($term);
                 
         my Plucene::Store::InputStream $stream 
                 = $seg_reader->norm_stream($field);
                 
         if ($seg_reader->is_deleted($id)) {  .. }
         if ($seg_reader->has_deletions(Plucene::Index::SegmentInfo $si)) 
                 {  ... }
 
 

DESCRIPTION

The segment reader class.

METHODS


new

         my $seg_reader = 
           Plucene::Index::SegmentReader->new( Plucene::Index::SegmentInfo $si);
 
 

This will create a new Plucene::Index::SegmentReader object.

has_deletions

         if ($seg_reader->has_deletions(Plucene::Index::SegmentInfo $si)) 
                 {  ... }
 
 

files

         my @files = $seg_reader->files;
 
 

terms

         my @terms = $seg_reader->terms;
 
 

document

         my $doc = $seg_reader->document($id);
 
 

is_deleted

         if ($seg_reader->is_deleted($id)) {  .. }
 
 

term_docs

         my Plucene::Index::SegmentTermDocs $docs 
                 = $seg_reader->term_docs($term);
 
 

This will return the Plucene::Index::SegmentTermDocs object for the given term.

term_positions

         my Plucene::Index::SegmentTermPositions $pos 
                 = $seg_reader->term_positions($term);
 
 

This will return the Plucene::Index::SegmentTermPositions object for the given term.

doc_freq

         my $doc_freq = $seg_reader->doc_freq($term);
 
 

This returns the number of documents containing the passed term.

num_docs

         my $num_docs = $seg_reader->num_docs;
 
 

This is the number of documents, excluding deleted ones.

max_doc

         my $max_doc = $seg_reader->max_doc;
 
 

norms

         my $norms = $seg_reader->norms($field, $offset);
 
 

This returns the byte-encoded normalisation factor for the passed field. This is used by the search code to score documents.

Note we are not using the 'offset' and 'bytes' arguments per the Java. Instead, callers should use substr to put the result of ``norms'' into the appropriate place in a string.

norm_stream

         my Plucene::Store::InputStream $stream 
                 = $seg_reader->norm_stream($field);
 
 

This will return the Plucene::Store::InputStream for the passed field.