Lucene++ - a full-featured, c++ search engine
API Documentation

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures | Namespaces | Constant Groups
BooleanScorer.h File Reference
`#include "Scorer.h"`
`#include "Collector.h"`

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

| Lucene

## Constant Groups

| Lucene

clucene.sourceforge.net