/usr/share/perl5/Plucene/Document.pm is in libplucene-perl 1.25-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | package Plucene::Document;
=head1 NAME
Plucene::Document - The unit of indexing and searching
=head1 SYNOPSIS
my $document = Plucene::Document->new;
$document->add( Plucene::Document::Field $field);
my Plucene::Document::Field $field = $document->get($field_name);
my Plucene::Document::Fields @fields = $document->fields;
=head1 DESCRIPTION
Documents are the unit of indexing and search, and each document is a set
of fields. Each field has a name and a textual value.
A field may be stored with the document, in which case it is returned with
search hits on the document. Thus each document should typically contain
stored fields which uniquely identify it.
=head1 METHODS
=cut
use strict;
use warnings;
use base 'Class::Accessor::Fast';
__PACKAGE__->mk_accessors(); # For new
=head2 get
my Plucene::Document::Field $field = $document->get($field_name);
This returns the Plucene::Document::Field object of the field with the
given name if any exist in this document, or null.
=cut
sub get {
my ($obj, $field) = @_;
return ($obj->{$field} || [])->[-1];
}
=head2 add
$document->add( Plucene::Document::Field $field);
This will add a field to the document.
=cut
sub add {
my ($obj, $field) = @_;
push @{ $obj->{ $field->name } }, $field;
}
=head2 fields
my Plucene::Document::Field @fields = $document->fields;
This returns an list of all the fields in a document.
=cut
sub fields { map @$_, values %{ +shift } }
1;
|