Lucy::Search::PolySearcher – Aggregate results from multiple Searchers.
The primary use for PolySearcher is to aggregate results from several indexes on a single machine.
lucy_PolySearcher* // incremented lucy_PolySearcher_new( lucy_Schema *schema, cfish_Vector *searchers );
Create a new PolySearcher.
An array of Searchers.
lucy_PolySearcher* lucy_PolySearcher_init( lucy_PolySearcher *self, lucy_Schema *schema, cfish_Vector *searchers );
Initialize a PolySearcher.
An array of Searchers.
int32_t lucy_PolySearcher_Doc_Max( lucy_PolySearcher *self );
Return the maximum number of docs in the collection represented by the Searcher, which is also the highest possible internal doc id. Documents which have been marked as deleted but not yet purged are included in this count.
uint32_t lucy_PolySearcher_Doc_Freq( lucy_PolySearcher *self, cfish_String *field, cfish_Obj *term );
Return the number of documents which contain the term in the given field.
The term to look up.
void lucy_PolySearcher_Collect( lucy_PolySearcher *self, lucy_Query *query, lucy_Collector *collector );
Iterate over hits, feeding them into a Collector.
lucy_HitDoc* // incremented lucy_PolySearcher_Fetch_Doc( lucy_PolySearcher *self, int32_t doc_id );
Retrieve a document. Throws an error if the doc id is out of range.
A document id.
lucy_Query* // incremented lucy_PolySearcher_Glean_Query( lucy_PolySearcher *self, cfish_Obj *query );
If the supplied object is a Query, return it; if it’s a query string, create a QueryParser and parse it to produce a query against all indexed fields.
lucy_Hits* // incremented lucy_PolySearcher_Hits( lucy_PolySearcher *self, cfish_Obj *query, uint32_t offset, uint32_t num_wanted, lucy_SortSpec *sort_spec );
Return a Hits object containing the top results.
Either a Query object or a query string.
The number of most-relevant hits to discard, typically
used when “paging” through hits N at a time. Setting
offset to 20 and
num_wanted to 10 retrieves
hits 21-30, assuming that 30 hits can be found.
The number of hits you would like to see after
offset is taken into account.
A SortSpec, which will affect how results are ranked and returned.
lucy_Schema* lucy_PolySearcher_Get_Schema( lucy_PolySearcher *self );
Accessor for the object’s
Copyright © 2010-2015 The Apache Software Foundation, Licensed under the
Apache License, Version 2.0.
Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.