---
name: "KinoSearch1::Search::QueryFilter"
section: "3pm"
platform: "linux"
package: "libkinosearch1-perl"
version: "1.01-6+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/KinoSearch1::Search::QueryFilter"
---

# KinoSearch1::Search::QueryFilter(3pm)

build a filter based on results of a query

## NAME

KinoSearch1::Search::QueryFilter - build a filter based on results of a query

## SYNOPSIS

```
    my $books_only_query  = KinoSearch1::Search::TermQuery->new(
        term => KinoSearch1::Index::Term->new( 'category', 'books' );
    );
    my $filter = KinoSearch1::Search::QueryFilter->new(
        query => $books_only_query;
    );
    my $hits = $searcher->search(
        query  => $query_string,
        filter => $filter,
    );
```

## DESCRIPTION

A QueryFilter spawns a result set that can be used to filter the results of another query.  The effect is very similar to adding a required clause to a BooleanQuery -- however, a QueryFilter caches its results, so it is more efficient if you use it more than once.

## METHODS

### new

```
    my $filter = KinoSearch1::Search::QueryFilter->new(
        query => $query;
    );
```

Constructor.  Takes one hash-style parameter, `"query"`, which must be an object belonging to a subclass of KinoSearch1::Search::Query.

## COPYRIGHT

Copyright 2005-2010 Marvin Humphrey

## LICENSE, DISCLAIMER, BUGS, etc.

See KinoSearch1 version 1.01.
