clang-tools
11.0.0
clang-tools-extra
clangd
HeaderSourceSwitch.h
Go to the documentation of this file.
1
//===--- HeaderSourceSwitch.h - ----------------------------------*- 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_TOOLS_EXTRA_UNITTESTS_CLANGD_HEADERSOURCESWITCH_H
10
#define LLVM_CLANG_TOOLS_EXTRA_UNITTESTS_CLANGD_HEADERSOURCESWITCH_H
11
12
#include "
ParsedAST.h
"
13
#include "llvm/ADT/Optional.h"
14
15
namespace
clang
{
16
namespace
clangd {
17
18
/// Given a header file, returns the best matching source file, and vice visa.
19
/// It only uses the filename heuristics to do the inference.
20
llvm::Optional<Path>
getCorrespondingHeaderOrSource
(
21
const
Path
&OriginalFile,
22
llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS);
23
24
/// Given a header file, returns the best matching source file, and vice visa.
25
/// The heuristics incorporate with the AST and the index (if provided).
26
llvm::Optional<Path>
getCorrespondingHeaderOrSource
(
const
Path
&OriginalFile,
27
ParsedAST &AST,
28
const
SymbolIndex *
Index
);
29
30
/// Returns all indexable decls that are present in the main file of the AST.
31
/// Exposed for unittests.
32
std::vector<const Decl *>
getIndexableLocalDecls
(ParsedAST &AST);
33
34
}
// namespace clangd
35
}
// namespace clang
36
37
#endif // LLVM_CLANG_TOOLS_EXTRA_UNITTESTS_CLANGD_HEADERSOURCESWITCH_H
clang::clangd::Path
std::string Path
A typedef to represent a file path.
Definition:
Path.h:20
clang::clangd::getIndexableLocalDecls
std::vector< const Decl * > getIndexableLocalDecls(ParsedAST &AST)
Returns all indexable decls that are present in the main file of the AST.
Definition:
HeaderSourceSwitch.cpp:127
Index
const SymbolIndex * Index
Definition:
Dexp.cpp:95
clang
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
Definition:
ApplyReplacements.h:27
clang::clangd::getCorrespondingHeaderOrSource
llvm::Optional< Path > getCorrespondingHeaderOrSource(const Path &OriginalFile, llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem > VFS)
Given a header file, returns the best matching source file, and vice visa.
Definition:
HeaderSourceSwitch.cpp:19
ParsedAST.h
Generated on Tue Jul 28 2020 16:14:02 for clang-tools by
1.8.16