llvm-project/clang-tools-extra/clangd
Eric Liu 4d814a93e5 [clangd] Canonicalize file path in URIForFile.
Summary:
File paths in URIForFile can come from index or local AST. Path from
index goes through URI transformation and the final path is resolved by URI
scheme and could be potentially different from the original path. Hence, we
should do the same transformation for all paths. We do this in URIForFile, which
now converts a path to URI and back to a canonicalized path.

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits

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

llvm-svn: 347739
2018-11-28 10:30:42 +00:00
..
benchmarks [clangd] Fix compilation of IndexBenchmark 2018-11-26 15:58:29 +00:00
clients/clangd-vscode [clangd] Bump vscode-clangd v0.0.7 2018-11-28 10:23:15 +00:00
fuzzer [clangd] Make ClangdFuzzer compile again. 2018-11-11 11:09:58 +00:00
index [clangd][NFC] Move SymbolID to a separate file 2018-11-27 16:40:34 +00:00
indexer [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
tool [clangd] Prevent thread starvation in tests on loaded systems. 2018-11-27 12:09:13 +00:00
AST.cpp [clangd] NFC: Prefer `isa<>` to `dyn_cast<>` to do the checking. 2018-11-27 04:27:00 +00:00
AST.h [clangd] Add support for hierarchical documentSymbol 2018-11-23 15:21:19 +00:00
CMakeLists.txt [clangd][NFC] Move SymbolID to a separate file 2018-11-27 16:40:34 +00:00
Cancellation.cpp [clangd] Respect task cancellation in TUScheduler. 2018-11-22 10:22:16 +00:00
Cancellation.h [clangd] Respect task cancellation in TUScheduler. 2018-11-22 10:22:16 +00:00
ClangdLSPServer.cpp [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
ClangdLSPServer.h [clangd] textDocument/SymbolInfo extension 2018-11-27 16:40:46 +00:00
ClangdServer.cpp [clangd] textDocument/SymbolInfo extension 2018-11-27 16:40:46 +00:00
ClangdServer.h [clangd] textDocument/SymbolInfo extension 2018-11-27 16:40:46 +00:00
ClangdUnit.cpp [clangd] Replay preamble #includes to clang-tidy checks. 2018-11-20 10:58:48 +00:00
ClangdUnit.h Lift VFS from clang to llvm (NFC) 2018-10-10 13:27:25 +00:00
CodeComplete.cpp [clangd] Add type boosting in code completion 2018-11-26 15:38:01 +00:00
CodeComplete.h Lift VFS from clang to llvm (NFC) 2018-10-10 13:27:25 +00:00
CodeCompletionStrings.cpp [clangd] Improve code completion for ObjC methods 2018-11-14 09:05:19 +00:00
CodeCompletionStrings.h [clangd] Show function documentation in signature help 2018-08-17 09:29:38 +00:00
Compiler.cpp [clangd] Only log ignored diagnostics with -log=verbose. 2018-11-02 12:51:26 +00:00
Compiler.h Lift VFS from clang to llvm (NFC) 2018-10-10 13:27:25 +00:00
Context.cpp NFC: Enforce good formatting across multiple clang-tools-extra files 2018-08-14 16:03:32 +00:00
Context.h [clangd] context key constructor is constexpr. NFC 2018-06-15 12:39:21 +00:00
Diagnostics.cpp [clangd] Do not drop diagnostics from macros 2018-11-26 17:05:13 +00:00
Diagnostics.h [clangd] Embed fixes as CodeAction, instead of clangd_fixes. Clean up serialization. 2018-10-24 07:59:38 +00:00
DraftStore.cpp Fix range length comparison in DraftStore::UpdateDraft when Unicode characters are removed from the document 2018-10-23 11:51:53 +00:00
DraftStore.h [clangd] Support incremental document syncing 2018-03-26 14:41:40 +00:00
ExpectedTypes.cpp [clangd] Initial implementation of expected types 2018-11-26 15:25:20 +00:00
ExpectedTypes.h [clangd] Initial implementation of expected types 2018-11-26 15:25:20 +00:00
FS.cpp [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
FS.h Lift VFS from clang to llvm (NFC) 2018-10-10 13:27:25 +00:00
FSProvider.h Fix the qualification of `IntrusiveRefCntPtr` to use `llvm::`. 2018-10-11 08:05:10 +00:00
FileDistance.cpp [clangd] Tune down scope boost for global scope 2018-11-26 12:12:01 +00:00
FileDistance.h [clangd] Support scope proximity in code completion. 2018-10-17 11:19:02 +00:00
FindSymbols.cpp [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
FindSymbols.h [clangd] Add support for hierarchical documentSymbol 2018-11-23 15:21:19 +00:00
Function.h [clangd] Allow observation of changes to global CDBs. 2018-11-20 10:56:03 +00:00
FuzzyMatch.cpp [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
FuzzyMatch.h [clangd] FuzzyMatch exposes an API for its word segmentation. NFC 2018-07-20 08:01:37 +00:00
GlobalCompilationDatabase.cpp [clangd] Enable auto-index behind a flag. 2018-11-26 16:00:11 +00:00
GlobalCompilationDatabase.h [clangd] Auto-index watches global CDB for changes. 2018-11-26 09:51:50 +00:00
Headers.cpp [clangd] Replay preamble #includes to clang-tidy checks. 2018-11-20 10:58:48 +00:00
Headers.h [clangd] Put direct headers into srcs section. 2018-11-27 16:08:53 +00:00
JSONTransport.cpp [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
Logger.cpp [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
Logger.h [clangd] Rename and move trivial logger to Logger.cpp. NFC 2018-10-17 07:39:32 +00:00
Path.h Restored r303067 and fixed failing test. 2017-05-16 09:38:59 +00:00
Protocol.cpp [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
Protocol.h [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
Quality.cpp [clangd] Add type boosting in code completion 2018-11-26 15:38:01 +00:00
Quality.h [clangd] Add type boosting in code completion 2018-11-26 15:38:01 +00:00
RIFF.cpp [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
RIFF.h [clangd] Define a compact binary serialization fomat for symbol slab/index. 2018-09-04 16:16:50 +00:00
SourceCode.cpp [clangd] Put direct headers into srcs section. 2018-11-27 16:08:53 +00:00
SourceCode.h [clangd] Put direct headers into srcs section. 2018-11-27 16:08:53 +00:00
TUScheduler.cpp [clangd] Cleanup: make the diags callback global in TUScheduler 2018-11-22 17:27:08 +00:00
TUScheduler.h [clangd] Cleanup: make the diags callback global in TUScheduler 2018-11-22 17:27:08 +00:00
Threading.cpp [clangd] Prevent thread starvation in tests on loaded systems. 2018-11-27 12:09:13 +00:00
Threading.h [clangd] Prevent thread starvation in tests on loaded systems. 2018-11-27 12:09:13 +00:00
Trace.cpp [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
Trace.h [clangd] Ensure that we reply to each call exactly once. NFC (I think!) 2018-10-24 14:26:26 +00:00
Transport.h [clangd] Refactor JSON-over-stdin/stdout code into Transport abstraction. (re-land r344620) 2018-10-17 07:32:05 +00:00
URI.cpp [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
URI.h [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
XRefs.cpp [clangd] Canonicalize file path in URIForFile. 2018-11-28 10:30:42 +00:00
XRefs.h [clangd] textDocument/SymbolInfo extension 2018-11-27 16:40:46 +00:00