clang-tools 10.0.0

Classes | Namespaces
PostingList.h File Reference

This defines posting list interface: a storage for identifiers of symbols which can be characterized by a specific feature (such as fuzzy-find trigram, scope, type or any other Search Token). More...

`#include "Iterator.h"`
`#include "llvm/ADT/ArrayRef.h"`
`#include "llvm/ADT/SmallVector.h"`
`#include <cstdint>`
`#include <vector>`
Include dependency graph for PostingList.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | clang::clangd::dex::Chunk
| NOTE: This is an implementation detail. More...
class | clang::clangd::dex::PostingList
| PostingList is the storage of DocIDs which can be inserted to the Query Tree as a leaf by constructing Iterator over the PostingList object. More...

## Namespaces
| clang
| ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
| clang::clangd
| clang::clangd::dex

## Detailed Description

This defines posting list interface: a storage for identifiers of symbols which can be characterized by a specific feature (such as fuzzy-find trigram, scope, type or any other Search Token).

Posting lists can be traversed in order using an iterator and are values for inverted index, which maps search tokens to corresponding posting lists.

In order to decrease size of Index in-memory representation, Variable Byte Encoding (VByte) is used for PostingLists compression. An overview of VByte algorithm can be found in "Introduction to Information Retrieval" book: https://nlp.stanford.edu/IR-book/html/htmledition/variable-byte-codes-1.html

Definition in file PostingList.h.