llvm-project/clang-tools-extra/clangd
Haojian Wu fdbe5b4b6f [clangd] Implement a smart version of HeaderSource switch.
Summary:
This patch implements another version header-source switch by incorporating the
AST and index, it will be used:
  - to improve the current header-source switch feature (layer with the
    existing file heuristic);
  - by the incoming define-outline code action;

Reviewers: kadircet

Subscribers: mgorny, ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D67907

llvm-svn: 373197
2019-09-30 10:48:02 +00:00
..
benchmarks Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
clients/clangd-vscode [clangd] Bump vscode-clangd v0.0.18 2019-09-26 14:11:23 +00:00
fuzzer Remove \brief commands from doxygen comments. 2019-08-22 11:32:57 +00:00
include-mapping [clangd] Add include-mapping for C symbols. 2019-06-21 13:32:18 +00:00
index [clangd] Simplify the callside of URI::resolve, NFC. 2019-09-23 14:39:37 +00:00
indexer Changed FrontendActionFactory::create to return a std::unique_ptr 2019-08-29 16:38:36 +00:00
refactor [clangd] Fix a crash when renaming operator. 2019-09-16 10:16:56 +00:00
test [clangd] Add semantic selection to ClangdLSPServer. 2019-09-24 13:38:33 +00:00
tool [clangd][NFC] Update background-index command line description 2019-08-29 14:38:02 +00:00
unittests [clangd] Implement a smart version of HeaderSource switch. 2019-09-30 10:48:02 +00:00
xpc [clang-tools-extra] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:52:23 +00:00
AST.cpp [clangd] Print qualifiers of out-of-line definitions in document outline 2019-08-14 12:51:04 +00:00
AST.h [clangd] Fix implicit template instatiations appearing as topLevelDecls. 2019-08-08 07:21:06 +00:00
CMakeLists.txt clang-tidy: Don't repeat list of all checks in three places. 2019-09-27 12:56:14 +00:00
CSymbolMap.inc [clangd] Add include-mapping for C symbols. 2019-06-21 13:32:18 +00:00
Cancellation.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Cancellation.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ClangdLSPServer.cpp [clangd] Add semantic selection to ClangdLSPServer. 2019-09-24 13:38:33 +00:00
ClangdLSPServer.h [clangd] Add semantic selection to ClangdLSPServer. 2019-09-24 13:38:33 +00:00
ClangdServer.cpp [clangd] Move the existing heder-source-switch implemenation out of clangdServer. 2019-09-25 10:30:22 +00:00
ClangdServer.h Add SemanticRanges to Clangd server. 2019-09-17 10:28:05 +00:00
CodeComplete.cpp [clangd] Collect macros in the preamble region of the main file 2019-09-24 11:14:06 +00:00
CodeComplete.h [clangd] Split Preamble.h out of ClangdUnit.h. NFC 2019-09-04 07:35:00 +00:00
CodeCompletionStrings.cpp Code completion should not ignore default parameters in functions. 2019-08-07 16:52:21 +00:00
CodeCompletionStrings.h [clangd] Place cursor better after completing patterns 2019-05-28 15:33:37 +00:00
CollectMacros.h [clangd] Collect macros in the preamble region of the main file 2019-09-24 11:14:06 +00:00
Compiler.cpp [clangd] Surface errors from command-line parsing 2019-08-28 09:24:55 +00:00
Compiler.h [clangd] Split Preamble.h out of ClangdUnit.h. NFC 2019-09-04 07:35:00 +00:00
Context.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Context.h [clang-tools-extra] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:52:23 +00:00
Diagnostics.cpp [clangd] Surface errors from command-line parsing 2019-08-28 09:24:55 +00:00
Diagnostics.h [clangd] Ignore diags from builtin files 2019-07-30 10:26:51 +00:00
DraftStore.cpp [clangd] Fix error message with incorrect TextDocumentcontentChangeEvent.rangeLength 2019-08-05 08:14:13 +00:00
DraftStore.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ExpectedTypes.cpp [clangd] Compute expected type for templates 2019-05-28 13:56:21 +00:00
ExpectedTypes.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
FS.cpp [clangd] Get rid of dots and dotsdots within GlobalCompilationDatabase 2019-07-18 16:13:23 +00:00
FS.h [clangd] Get rid of dots and dotsdots within GlobalCompilationDatabase 2019-07-18 16:13:23 +00:00
FSProvider.cpp [clangd] Unlink VFS working dir from OS working dir. Reland of r351051 2019-02-15 11:04:25 +00:00
FSProvider.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Features.inc.in [clangd] XPC transport layer 2019-01-16 00:24:22 +00:00
FileDistance.cpp [clangd] Save an unnecessary copy, NFC. 2019-09-24 13:25:38 +00:00
FileDistance.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
FindSymbols.cpp [clangd] Simplify the callside of URI::resolve, NFC. 2019-09-23 14:39:37 +00:00
FindSymbols.h [clangd] Type hierarchy subtypes 2019-06-16 02:31:37 +00:00
FindTarget.cpp [clangd] Fix template type aliases in findExplicitReference 2019-09-27 17:55:46 +00:00
FindTarget.h [clangd] Change constness of parameters to findExplicitRefs 2019-09-25 15:44:26 +00:00
Format.cpp [clangd] Fix gcc warning by removing extra ";" 2019-06-11 06:02:01 +00:00
Format.h [clangd] Revamp textDocument/onTypeFormatting. 2019-06-10 14:26:21 +00:00
FormattedString.cpp [clangd] Separate chunks with a space when rendering markdown 2019-08-12 14:35:30 +00:00
FormattedString.h [clangd] Represent Hover result using FormattedString 2019-05-29 10:01:00 +00:00
Function.h [clangd] Remove Bind, use C++14 lambda captures instead. NFC 2019-08-16 09:20:01 +00:00
FuzzyMatch.cpp [clangd] Tune the fuzzy-matching algorithm 2019-03-15 14:00:49 +00:00
FuzzyMatch.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalCompilationDatabase.cpp [clangd] Fix background index not triggering on windows due to case mismatch. 2019-07-26 14:07:11 +00:00
GlobalCompilationDatabase.h [clangd] Fix background index not triggering on windows due to case mismatch. 2019-07-26 14:07:11 +00:00
HeaderSourceSwitch.cpp [clangd] Implement a smart version of HeaderSource switch. 2019-09-30 10:48:02 +00:00
HeaderSourceSwitch.h [clangd] Implement a smart version of HeaderSource switch. 2019-09-30 10:48:02 +00:00
Headers.cpp [clang-tools-extra] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:52:23 +00:00
Headers.h [clangd][NFC] Typo in comment 2019-07-30 20:39:39 +00:00
IncludeFixer.cpp [clangd] Simplify the callside of URI::resolve, NFC. 2019-09-23 14:39:37 +00:00
IncludeFixer.h [clangd] Compute scopes eagerly in IncludeFixer 2019-08-06 11:37:50 +00:00
JSONTransport.cpp [clang-tools-extra] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:52:23 +00:00
Logger.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Logger.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ParsedAST.cpp clang-tidy: Don't repeat list of all checks in three places. 2019-09-27 12:56:14 +00:00
ParsedAST.h [clangd] Collect macros in the preamble region of the main file 2019-09-24 11:14:06 +00:00
Path.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Preamble.cpp [clangd] Collect macros in the preamble region of the main file 2019-09-24 11:14:06 +00:00
Preamble.h [clangd] Collect macros in the preamble region of the main file 2019-09-24 11:14:06 +00:00
Protocol.cpp [clangd] Add semantic selection to ClangdLSPServer. 2019-09-24 13:38:33 +00:00
Protocol.h [clangd] Add semantic selection to ClangdLSPServer. 2019-09-24 13:38:33 +00:00
Quality.cpp [clangd] cleanup: unify the implemenation of checking a location is inside main file. 2019-07-19 08:33:39 +00:00
Quality.h [clangd] Remove unused signature help quality signal. NFC 2019-06-06 08:32:25 +00:00
QueryDriverDatabase.cpp [clang-tools-extra] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:52:23 +00:00
RIFF.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RIFF.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Selection.cpp [clangd] Fix SelectionTree behavior on implicit 'this' 2019-09-04 12:15:20 +00:00
Selection.h [clangd] Move getBeginningOfIdentifier from ClangdUnit to SourceCode. Drop dependencies on ClangdUnit from some headers. NFC 2019-09-03 15:34:47 +00:00
SemanticHighlighting.cpp [clangd] Remove an unrelated comment, NFC. 2019-09-27 12:32:19 +00:00
SemanticHighlighting.h [clangd] Add a new highlighting kind for typedefs 2019-09-09 14:33:10 +00:00
SemanticSelection.cpp Implement semantic selections. 2019-09-16 11:29:35 +00:00
SemanticSelection.h Implement semantic selections. 2019-09-16 11:29:35 +00:00
SourceCode.cpp [clangd] Fix parseNamespaceEvents to parse the last token 2019-09-25 14:12:05 +00:00
SourceCode.h [clangd] Support multifile edits as output of Tweaks 2019-09-09 12:28:44 +00:00
StdSymbolMap.inc [clangd] Add include-mapping for C symbols. 2019-06-21 13:32:18 +00:00
TUScheduler.cpp [clangd] Rename ClangdUnit.h -> ParsedAST.h. NFC 2019-09-04 09:46:06 +00:00
TUScheduler.h [clangd] Move threading helper to more appropriate header. NFC 2019-09-04 09:53:24 +00:00
Threading.cpp [clangd] Use llvm::set_thread_priority in background-index 2019-04-18 13:46:40 +00:00
Threading.h [clangd] Remove obsolete includes. NFC 2019-09-04 10:01:05 +00:00
Trace.cpp [clangd] Remove obsolete includes. NFC 2019-09-04 10:01:05 +00:00
Trace.h [clangd] Remove obsolete includes. NFC 2019-09-04 10:01:05 +00:00
Transport.h [clangd] Use #if CLANGD_BUILD_XPC because it may be defined as 0 2019-04-10 15:45:54 +00:00
URI.cpp [clangd] Simplify the callside of URI::resolve, NFC. 2019-09-23 14:39:37 +00:00
URI.h [clangd] Simplify the callside of URI::resolve, NFC. 2019-09-23 14:39:37 +00:00
XRefs.cpp [clangd] Add a helper for extracting nonlocal decls in a FunctionDecl 2019-09-26 07:27:43 +00:00
XRefs.h [clangd] Add a helper for extracting nonlocal decls in a FunctionDecl 2019-09-26 07:27:43 +00:00