Lucy::Search::LeafQuery - Leaf node in a tree created by QueryParser.
package MyQueryParser; use base qw( Lucy::Search::QueryParser ); sub expand_leaf { my ( $self, $leaf_query ) = @_; if ( $leaf_query->get_text =~ /.\*\s*$/ ) { return PrefixQuery->new( query_string => $leaf_query->get_text, field => $leaf_query->get_field, ); } else { return $self->SUPER::expand_leaf($leaf_query); } }
LeafQuery objects serve as leaf nodes in the tree structure generated by QueryParser’s tree() method. Ultimately, they must be transformed, typically into either TermQuery or PhraseQuery objects, as attempting to search a LeafQuery causes an error.
my $leaf_query = Lucy::Search::LeafQuery->new( text => '"three blind mice"', # required field => 'content', # default: undef );
Create a new LeafQuery.
field - Optional field name.
text - Raw query text.
my $string = $leaf_query->get_field();
Accessor for object’s field attribute.
field
my $string = $leaf_query->get_text();
Accessor for object’s text attribute.
text
my $compiler = $leaf_query->make_compiler( searcher => $searcher # required boost => $boost # required subordinate => $subordinate # default: false );
Throws an error.
Lucy::Search::LeafQuery isa Lucy::Search::Query isa Clownfish::Obj.
To install LucyX::Search::Filter, copy and paste the appropriate command in to your terminal.
cpanm
cpanm LucyX::Search::Filter
CPAN shell
perl -MCPAN -e shell install LucyX::Search::Filter
For more information on module installation, please visit the detailed CPAN module installation guide.