NAME
Lucy::Search::RequiredOptionalQuery - Join results for two Queries, one required, one optional.
SYNOPSIS
my
$foo_and_maybe_bar
= Lucy::Search::RequiredOptionalQuery->new(
required_query
=>
$foo_query
,
optional_query
=>
$bar_query
,
);
my
$hits
=
$searcher
->hits(
query
=>
$foo_and_maybe_bar
);
...
DESCRIPTION
RequiredOptionalQuery joins the result sets of one Query which MUST match, and one Query which SHOULD match. When only the required Query matches, its score is passed along; when both match, the scores are summed.
CONSTRUCTORS
new
my
$reqopt_query
= Lucy::Search::RequiredOptionalQuery->new(
required_query
=>
$foo_query
,
# required
optional_query
=>
$bar_query
,
# required
);
Create a new RequiredOptionalQuery.
required_query - Query must must match.
optional_query - Query which should match.
METHODS
get_required_query
my
$retval
=
$required_optional_query
->get_required_query();
Getter for the required Query.
set_required_query
$required_optional_query
->set_required_query(
$required_query
);
Setter for the required Query.
get_optional_query
my
$retval
=
$required_optional_query
->get_optional_query();
Getter for the optional Query.
set_optional_query
$required_optional_query
->set_optional_query(
$optional_query
);
Setter for the optional Query.
make_compiler
my
$retval
=
$required_optional_query
->make_compiler(
searcher
=>
$searcher
# required
boost
=>
$boost
# required
subordinate
=>
$subordinate
# default: false
);
Abstract factory method returning a Compiler derived from this Query.
searcher - A Searcher.
boost - A scoring multiplier.
subordinate - Indicates whether the Query is a subquery (as opposed to a top-level query). If false, the implementation must invoke normalize() on the newly minted Compiler object before returning it.
INHERITANCE
Lucy::Search::RequiredOptionalQuery isa Lucy::Search::PolyQuery isa Lucy::Search::Query isa Clownfish::Obj.