NAME

KiokuDB::Backend::Role::Query - Backend specific query API

SYNOPSIS

with qw(KiokuDB::Backend::Role::Query);

sub search {
    my ( $self, @args ) = @_;

    # return all entries in the root set matching @args (backend specific)
    return Data::Stream::Bulk::Foo->new(...);
}

DESCRIPTION

This role is for backend specific searching. Anything that is not KiokuDB::Backend::Role::Query::Simple is a backend specific search, be it a Search::GIN::Query, or something else.

The backend is expected to interpret the search arguments which are passed through from "search" in KiokuDB as is, and return a Data::Stream::Bulk of matching entries.