clang 20.0.0git
IndexingOptions.h
Go to the documentation of this file.
1//===--- IndexingOptions.h - Options for indexing ---------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_CLANG_INDEX_INDEXINGOPTIONS_H
10#define LLVM_CLANG_INDEX_INDEXINGOPTIONS_H
11
13#include <memory>
14#include <string>
15
16namespace clang {
17class Decl;
18namespace index {
19
22 None,
24 All,
25 };
26
29 bool IndexFunctionLocals = false;
31 bool IndexMacros = true;
32 // Whether to index macro definitions in the Preprocessor when preprocessor
33 // callback is not available (e.g. after parsing has finished). Note that
34 // macro references are not available in Preprocessor.
36 // Has no effect if IndexFunctionLocals are false.
39
40 // If set, skip indexing inside some declarations for performance.
41 // This prevents traversal, so skipping a struct means its declaration an
42 // members won't be indexed, but references elsewhere to that struct will be.
43 // Currently this is only checked for top-level declarations.
44 std::function<bool(const Decl *)> ShouldTraverseDecl;
45};
46
47} // namespace index
48} // namespace clang
49
50#endif // LLVM_CLANG_INDEX_INDEXINGOPTIONS_H
Decl - This represents one declaration (or definition), e.g.
Definition: DeclBase.h:86
@ Decl
The l-value was an access to a declared entity or something equivalently strong, like the address of ...
The JSON file list parser is used to communicate input to InstallAPI.
#define bool
Definition: stdbool.h:24
std::function< bool(const Decl *)> ShouldTraverseDecl
SystemSymbolFilterKind SystemSymbolFilter