++ed by:
NWELLNHOF ASHLEY ZMUGHAL EMAZEP KEEDI

9 PAUSE users
6 non-PAUSE users.

Nick Wellnhofer
and 1 contributors

NAME

Lucy::Search::RangeQuery - Match a range of values.

SYNOPSIS

    # Match all articles by "Foo" published since the year 2000.
    my $range_query = Lucy::Search::RangeQuery->new(
        field         => 'publication_date',
        lower_term    => '2000-01-01',
        include_lower => 1,
    );
    my $author_query = Lucy::Search::TermQuery->new(
        field => 'author_last_name',
        text  => 'Foo',
    );
    my $and_query = Lucy::Search::ANDQuery->new(
        children => [ $range_query, $author_query ],
    );
    my $hits = $searcher->hits( query => $and_query );
    ...

DESCRIPTION

RangeQuery matches documents where the value for a particular field falls within a given range.

CONSTRUCTORS

new

    my $range_query = Lucy::Search::RangeQuery->new(
        field         => 'product_number', # required
        lower_term    => '003',            # see below
        upper_term    => '060',            # see below
        include_lower => 0,                # default true
        include_upper => 0,                # default true
    );

Create a new RangeQuery.

Takes 5 parameters; field is required, as is at least one of either lower_term or upper_term.

  • field - The name of a sortable field.

  • lower_term - Lower delimiter. If not supplied, all values less than upper_term will pass.

  • upper_term - Upper delimiter. If not supplied, all values greater than lower_term will pass.

  • include_lower - Indicates whether docs which match lower_term should be included in the results.

  • include_upper - Indicates whether docs which match upper_term should be included in the results.

METHODS

make_compiler

    my $compiler = $range_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::RangeQuery isa Lucy::Search::Query isa Clownfish::Obj.