The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
# ***********************************************
# 
# !!!! DO NOT EDIT !!!!
# 
# This file was auto-generated by Build.PL.
# 
# ***********************************************
# 
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
# 
#     http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

=encoding utf8

=head1 NAME

Lucy::Plan::FullTextType - Full-text search field type.

=head1 SYNOPSIS

    my $easyanalyzer = Lucy::Analysis::EasyAnalyzer->new(
        language => 'en',
    );
    my $type = Lucy::Plan::FullTextType->new(
        analyzer => $easyanalyzer,
    );
    my $schema = Lucy::Plan::Schema->new;
    $schema->spec_field( name => 'title',   type => $type );
    $schema->spec_field( name => 'content', type => $type );

=head1 DESCRIPTION

Lucy::Plan::FullTextType is an implementation of
L<FieldType|Lucy::Plan::FieldType> tuned for “full text search”.

Full text fields are associated with an
L<Analyzer|Lucy::Analysis::Analyzer>, which is used to tokenize and
normalize the text so that it can be searched for individual words.

For an exact-match, single value field type using character data, see
L<StringType|Lucy::Plan::StringType>.

=head1 CONSTRUCTORS

=head2 new

    my $type = Lucy::Plan::FullTextType->new(
        analyzer      => $analyzer,    # required
        boost         => 2.0,          # default: 1.0
        indexed       => 1,            # default: true
        stored        => 1,            # default: true
        sortable      => 1,            # default: false
        highlightable => 1,            # default: false
    );

=over

=item *

B<analyzer> - An Analyzer.

=item *

B<boost> - floating point per-field boost.

=item *

B<indexed> - boolean indicating whether the field should be indexed.

=item *

B<stored> - boolean indicating whether the field should be stored.

=item *

B<sortable> - boolean indicating whether the field should be sortable.

=item *

B<highlightable> - boolean indicating whether the field should be
highlightable.

=back

=head1 METHODS

=head2 set_highlightable

    $full_text_type->set_highlightable($highlightable);

Indicate whether to store data required by
L<Highlighter|Lucy::Highlight::Highlighter> for excerpt selection and search
term highlighting.

=head2 highlightable

    my $bool = $full_text_type->highlightable();

Accessor for “highlightable” property.

=head2 get_analyzer

    my $analyzer = $full_text_type->get_analyzer();

Accessor for the type’s analyzer.

=head1 INHERITANCE

Lucy::Plan::FullTextType isa Lucy::Plan::TextType isa L<Lucy::Plan::FieldType> isa Clownfish::Obj.

=cut