clang-tools
7.0.0
|
#include "llvm/ADT/ArrayRef.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <memory>
#include <vector>
Go to the source code of this file.
Classes | |
class | clang::clangd::dex::Iterator |
Iterator is the interface for Query Tree node. More... | |
Namespaces | |
clang | |
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===// | |
clang::clangd | |
clang::clangd::dex | |
Typedefs | |
using | clang::clangd::dex::DocID = uint32_t |
Symbol position in the list of all index symbols sorted by a pre-computed symbol quality. More... | |
using | clang::clangd::dex::PostingList = std::vector< DocID > |
Contains sorted sequence of DocIDs all of which belong to symbols matching certain criteria, i.e. More... | |
using | clang::clangd::dex::PostingListRef = llvm::ArrayRef< DocID > |
Immutable reference to PostingList object. More... | |
Functions | |
std::vector< DocID > | clang::clangd::dex::consume (Iterator &It) |
Exhausts given iterator and returns all processed DocIDs. More... | |
std::unique_ptr< Iterator > | clang::clangd::dex::create (PostingListRef Documents) |
Returns a document iterator over given PostingList. More... | |
std::unique_ptr< Iterator > | clang::clangd::dex::createAnd (std::vector< std::unique_ptr< Iterator >> Children) |
Returns AND Iterator which performs the intersection of the PostingLists of its children. More... | |
std::unique_ptr< Iterator > | clang::clangd::dex::createOr (std::vector< std::unique_ptr< Iterator >> Children) |
Returns OR Iterator which performs the union of the PostingLists of its children. More... | |
template<typename... Args> | |
std::unique_ptr< Iterator > | clang::clangd::dex::createAnd (Args... args) |
This allows createAnd(create(...), create(...)) syntax. More... | |
template<typename... Args> | |
std::unique_ptr< Iterator > | clang::clangd::dex::createOr (Args... args) |
This allows createOr(create(...), create(...)) syntax. More... | |
template<typename HeadT , typename... TailT> | |
void | clang::clangd::dex::populateChildren (std::vector< std::unique_ptr< Iterator >> &Children, HeadT &Head, TailT &... Tail) |
template<typename HeadT > | |
void | clang::clangd::dex::populateChildren (std::vector< std::unique_ptr< Iterator >> &Children, HeadT &Head) |