# Auto-generated file -- DO NOT EDIT!!!!!

=head1 NAME

KinoSearch::Index::SegReader - Single-segment IndexReader.

=head1 SYNOPSIS

    my $polyreader = KinoSearch::Index::IndexReader->open(
        index => '/path/to/index',
    );
    my $seg_readers = $polyreader->seg_readers;
    for my $seg_reader (@$seg_readers) {
        my $seg_name = $seg_reader->get_segment->get_name;
        my $num_docs = $seg_reader->doc_max;
        print "Segment $seg_name ($num_docs documents):\n";
        my $doc_reader = $seg_reader->obtain("KinoSearch::Index::DocReader");
        for my $doc_id ( 1 .. $num_docs ) {
            my $doc = $doc_reader->fetch($doc_id);
            print "  $doc_id: $doc->{title}\n";
        }
    }



=head1 DESCRIPTION

SegReader interprets the data within a single segment of an index.

Generally speaking, only advanced users writing subclasses which manipulate
data at the segment level need to deal with the SegReader API directly.  

Nearly all of SegReader's functionality is implemented by pluggable
components spawned by Architecture's factory methods.







=head1 INHERITANCE

KinoSearch::Index::SegReader isa L<KinoSearch::Index::IndexReader> isa L<KinoSearch::Index::DataReader> isa L<KinoSearch::Obj>.


=head1 COPYRIGHT

Copyright 2005-2009 Marvin Humphrey

=head1 LICENSE, DISCLAIMER, BUGS, etc.

See L<KinoSearch> version 0.30.

=cut