NAME¶
Lucy::Search::LeafQuery - Leaf node in a tree created by QueryParser.
SYNOPSIS¶
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);
}
}
DESCRIPTION¶
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.
CONSTRUCTORS¶
new( [labeled params] )¶
my $leaf_query = Lucy::Search::LeafQuery->new(
text => '"three blind mice"', # required
field => 'content', # default: undef
);
- •
- field - Optional field name.
- •
- text - Raw query text.
METHODS¶
get_field()¶
Accessor for object's "field" attribute.
get_text()¶
Accessor for object's "text" attribute.
INHERITANCE¶
Lucy::Search::LeafQuery isa Lucy::Search::Query isa Lucy::Object::Obj.