Lucene++ - a full-featured, c++ search engine
API Documentation
Go to the source code of this file.
Data Structures | |
class | Lucene::BooleanScorer |
BooleanScorer uses a ~16k array to score windows of docs. So it scores docs 0-16k first, then docs 16-32k, etc. For each window it iterates through all query terms and accumulates a score in table[doc%16k]. It also stores in the table a bitmask representing which terms contributed to the score. Non-zero scores are chained in a linked list. At the end of scoring each window it then iterates through the linked list and, if the bitmask matches the boolean constraints, collects a hit. For boolean queries with lots of frequent terms this can be much faster, since it does not need to update a priority queue for each posting, instead performing constant-time operations per posting. The only downside is that it results in hits being delivered out-of-order within the window, which means it cannot be nested within other scorers. But it works well as a top-level scorer. More... | |
class | Lucene::BooleanScorerCollector |
class | Lucene::BucketScorer |
class | Lucene::Bucket |
class | Lucene::BucketTable |
A simple hash table of document scores within a range. More... | |
class | Lucene::SubScorer |
Namespaces | |
namespace | Lucene |