clang-tools 10.0.0

Namespaces | Classes
llvm Namespace Reference

Some operations such as code completion produce a set of candidates. More...

## Namespaces
| sys
| yaml

## Classes
struct | DenseMapInfo< clang::clangd::dex::Token >
struct | DenseMapInfo< clang::clangd::SymbolID >
struct | DenseMapInfo< clang::tidy::cppcoreguidelines::SpecialMemberFunctionsCheck::ClassDefId >
| Specialisation of DenseMapInfo to allow ClassDefId objects in DenseMaps FIXME: Move this to the corresponding cpp file as is done for clang-tidy/readability/IdentifierNamingCheck.cpp. More...
struct | DenseMapInfo< clang::tidy::readability::IdentifierNamingCheck::NamingCheckId >
| Specialisation of DenseMapInfo to allow NamingCheckId objects in DenseMaps. More...
struct | format_provider< clang::clangd::Position >

## Detailed Description

Some operations such as code completion produce a set of candidates.

Usually the user can choose between them, but we should put the best options at the top (they're easier to select, and more likely to be seen).

This file defines building blocks for ranking candidates. It's used by the features directly and also in the implementation of indexes, as indexes also need to heuristically limit their results.

The facilities here are:

- retrieving scoring signals from e.g. indexes, AST, CodeCompletionString These are structured in a way that they can be debugged, and are fairly consistent regardless of the source.
- compute scores from scoring signals. These are suitable for sorting.
- sorting utilities like the TopN container. These could be split up further to isolate dependencies if we care.