llvm-project/clang-tools-extra/clangd
Eric Liu c0ac4bb17c [clangd] Cleanup: stop passing around list of supported URI schemes.
Summary:
Instead of passing around a list of supported URI schemes in clangd, we
expose an interface to convert a path to URI using any compatible scheme
that has been registered. It favors customized schemes and falls
back to "file" when no other scheme works.

Changes in this patch are:
- URI::create(AbsPath, URISchemes) -> URI::create(AbsPath). The new API finds a
compatible scheme from the registry.
- Remove URISchemes option everywhere (ClangdServer, SymbolCollecter, FileIndex etc).
- Unit tests will use "unittest" by default.
- Move "test" scheme from ClangdLSPServer to ClangdMain.cpp, and only
register the test scheme when lit-test or enable-lit-scheme is set.
(The new flag is added to make lit protocol.test work; I wonder if there
is alternative here.)

Reviewers: sammccall

Reviewed By: sammccall

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

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

llvm-svn: 347467
2018-11-22 15:02:05 +00:00
..
benchmarks [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
clients/clangd-vscode [clangd] Fix category in clangd-vscode's package.json 2018-07-23 14:32:12 +00:00
fuzzer [clangd] Make ClangdFuzzer compile again. 2018-11-11 11:09:58 +00:00
index [clangd] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +00:00
indexer [clangd] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
tool [clangd] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +00:00
AST.cpp [clangd] Make TestTU build with preamble, and fix the fallout. 2018-11-09 12:56:49 +00:00
AST.h [clangd] Names that are not spelled in source code are reserved. 2018-10-18 12:23:05 +00:00
CMakeLists.txt Introduce shard storage to auto-index. 2018-11-16 09:03:56 +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] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +00:00
ClangdLSPServer.h [clangd] Make in-memory CDB always available as an overlay, refactor. 2018-11-02 13:09:36 +00:00
ClangdServer.cpp [clangd] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +00:00
ClangdServer.h [clangd] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +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] Deduplicate query scopes. 2018-11-06 11:17:40 +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] Replay preamble #includes to clang-tidy checks. 2018-11-20 10:58:48 +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
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] Namespace style cleanup in cpp files. NFC. 2018-10-20 15:30:37 +00:00
FileDistance.h [clangd] Support scope proximity in code completion. 2018-10-17 11:19:02 +00:00
FindSymbols.cpp [clangd] Get rid of QueryScopes.empty() == AnyScope special case. 2018-11-06 11:08:17 +00:00
FindSymbols.h [clangd] Correct the namespace of ParsedAST forward declaration, NFC. 2018-08-01 12:50:44 +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] Allow observation of changes to global CDBs. 2018-11-20 10:56:03 +00:00
GlobalCompilationDatabase.h [clangd] Allow observation of changes to global CDBs. 2018-11-20 10:56:03 +00:00
Headers.cpp [clangd] Replay preamble #includes to clang-tidy checks. 2018-11-20 10:58:48 +00:00
Headers.h [clangd] Replay preamble #includes to clang-tidy checks. 2018-11-20 10:58:48 +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] Add fallbackFlags initialization extension. 2018-11-02 14:07:51 +00:00
Protocol.h [clangd] Add fallbackFlags initialization extension. 2018-11-02 14:07:51 +00:00
Quality.cpp Fix MSVC "truncation from 'double' to 'float'" warnings. NFCI. 2018-10-24 19:31:24 +00:00
Quality.h [clangd] Downrank members from base class 2018-10-24 13:45:17 +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 Fix range length comparison in DraftStore::UpdateDraft when Unicode characters are removed from the document 2018-10-23 11:51:53 +00:00
SourceCode.h Fix range length comparison in DraftStore::UpdateDraft when Unicode characters are removed from the document 2018-10-23 11:51:53 +00:00
TUScheduler.cpp [clangd] Respect task cancellation in TUScheduler. 2018-11-22 10:22:16 +00:00
TUScheduler.h [clangd] Respect task cancellation in TUScheduler. 2018-11-22 10:22:16 +00:00
Threading.cpp [clangd] Fix compile on very old glibc 2018-11-12 08:17:49 +00:00
Threading.h [clangd] Use thread pool for background indexing. 2018-10-30 12:13:27 +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] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +00:00
URI.h [clangd] Cleanup: stop passing around list of supported URI schemes. 2018-11-22 15:02:05 +00:00
XRefs.cpp [clangd] Fix crash hovering on non-decltype trailing return 2018-11-17 00:41:14 +00:00
XRefs.h [clangd] Implement findReferences function 2018-09-05 10:33:36 +00:00