llvm-project/clang-tools-extra/clangd
Kirill Bobyrev c6b2b78429 [clangd-remote] Replace YAML serialization with proper Protobuf messages
Summary:
YAML serialization was used in the Proof of Concept for simplicity.
This patch replaces implements Protobuf (de) serialization of almost all
types that need to be transferred over the protocol.

Reviewers: sammccall

Reviewed By: sammccall

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D79862
2020-05-19 17:07:38 +02:00
..
benchmarks [clangd] Don't create as much garbage while building Dex index. 2020-05-14 13:35:44 +02:00
fuzzer [clangd] Fix BUILD_SHARED_LIBS build more. 2020-04-29 22:46:41 +02:00
include-mapping [clangd] Add include-mapping for C symbols. 2019-06-21 13:32:18 +00:00
index [clangd-remote] Replace YAML serialization with proper Protobuf messages 2020-05-19 17:07:38 +02:00
indexer Revert "Use InitLLVM to setup a pretty stack printer" 2019-11-25 21:06:56 -05:00
refactor [clangd] Fix crash in AddUsing tweak due to non-identifier DeclName 2020-05-08 14:26:21 +02:00
support Fix "not all control paths return a value" warning on MSVC builds. 2020-05-19 13:16:24 +01:00
test [clangd] Add CSV export for trace metrics 2020-05-19 13:35:31 +02:00
tool [clangd] Add a flag to preserve type for recovery expression. 2020-05-19 15:21:57 +02:00
unittests [clangd-remote] Replace YAML serialization with proper Protobuf messages 2020-05-19 17:07:38 +02:00
xpc [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
AST.cpp [clang-tools-extra] NFC: Fix trivial typo in documents and comments 2020-04-05 15:28:40 +09:00
AST.h [clangd] Get rid of lexer usage in AST.cpp 2020-02-27 09:54:21 +01:00
CMakeLists.txt [clangd] Rename FormattedString -> Markup, move to support. NFC 2020-05-02 14:53:47 +02:00
CSymbolMap.inc [clangd] Add include-mapping for C symbols. 2019-06-21 13:32:18 +00:00
ClangdLSPServer.cpp [clangd] Complete filenames after < / ". 2020-05-19 13:32:26 +02:00
ClangdLSPServer.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
ClangdServer.cpp [clangd] Add a flag to preserve type for recovery expression. 2020-05-19 15:21:57 +02:00
ClangdServer.h [clangd] Add a flag to preserve type for recovery expression. 2020-05-19 15:21:57 +02:00
CodeComplete.cpp [clangd] Add a flag to preserve type for recovery expression. 2020-05-19 15:21:57 +02:00
CodeComplete.h [clangd] Complete filenames after < / ". 2020-05-19 13:32:26 +02: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.cpp [clangd] Get rid of getTokenRange helper 2020-03-03 14:30:42 +01:00
CollectMacros.h [clangd] Get rid of getTokenRange helper 2020-03-03 14:30:42 +01:00
CompileCommands.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
CompileCommands.h [clangd] Try to fix CompileCommandsTests on windows. NFC 2019-12-06 12:28:01 +01:00
Compiler.cpp [clangd] Add a flag to preserve type for recovery expression. 2020-05-19 15:21:57 +02:00
Compiler.h [clangd] Add a flag to preserve type for recovery expression. 2020-05-19 15:21:57 +02:00
Diagnostics.cpp [clangd] Only emit default error/fatal diagnostices from included files. 2020-05-14 11:09:06 +02:00
Diagnostics.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
DraftStore.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
DraftStore.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
ExpectedTypes.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01: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 Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
FS.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
Features.inc.in [clangd] NFC: Cleanup unused headers and libraries 2020-05-05 11:46:28 +02:00
FileDistance.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
FileDistance.h Move endian constant from Host.h to SwapByteOrder.h, prune include 2019-10-19 00:48:11 +00:00
FindSymbols.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
FindSymbols.h [clang-tools-extra] NFC: Fix trivial typo in documents and comments 2020-04-05 15:28:40 +09:00
FindTarget.cpp [clangd] findExplicitReferences supports goto labels 2020-05-19 16:50:35 +02:00
FindTarget.h [clang-tools-extra] NFC: Fix trivial typo in documents and comments 2020-04-05 15:28:40 +09:00
Format.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
Format.h [clangd] Revamp textDocument/onTypeFormatting. 2019-06-10 14:26:21 +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] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
GlobalCompilationDatabase.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
HeaderSourceSwitch.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
HeaderSourceSwitch.h [clangd] Implement a smart version of HeaderSource switch. 2019-09-30 10:48:02 +00:00
Headers.cpp [clangd] Preserve line information while build PreamblePatch 2020-05-07 12:24:28 +02:00
Headers.h [clangd] Preserve line information while build PreamblePatch 2020-05-07 12:24:28 +02:00
Hover.cpp [AST] Fix an assertion violation in FieldDecl::getParent. 2020-05-19 15:35:04 +02:00
Hover.h [clangd] Rename FormattedString -> Markup, move to support. NFC 2020-05-02 14:53:47 +02:00
IncludeFixer.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
IncludeFixer.h [clangd] Compute scopes eagerly in IncludeFixer 2019-08-06 11:37:50 +00:00
JSONTransport.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
ParsedAST.cpp [clangd] Setting recovery-ast flag in buildCompilerInvocation, NFC. 2020-05-14 13:16:59 +02:00
ParsedAST.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
PathMapping.cpp [clang-tools-extra] NFC: Fix trivial typo in documents and comments 2020-04-05 15:28:40 +09:00
PathMapping.h [clangd] Add path mappings functionality 2020-01-07 12:40:51 +01:00
Preamble.cpp [clangd] Setting recovery-ast flag in buildCompilerInvocation, NFC. 2020-05-14 13:16:59 +02:00
Preamble.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
Protocol.cpp [clangd] Make version in PublishDiagnosticsParams optional 2020-05-11 10:31:10 +02:00
Protocol.h [clangd] Render code complete documentation as plaintext/markdown. 2020-04-30 19:00:49 +02:00
Quality.cpp [clang-tools-extra] NFC: Fix trivial typo in documents and comments 2020-04-05 15:28:40 +09:00
Quality.h [clangd] Remove unused signature help quality signal. NFC 2019-06-06 08:32:25 +00:00
QueryDriverDatabase.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
README.md [clangd] Add README pointing to docs, bugtracker etc. NFC 2020-03-12 14:00:08 +01: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] Tidy up SelectionTree dumps with newlines 2020-05-19 01:48:01 +02:00
Selection.h [clangd] Handle go-to-definition in macro invocations where the target appears in the expansion multiple times 2020-03-03 15:52:05 -05:00
SemanticHighlighting.cpp [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
SemanticHighlighting.h [clangd] Support textDocument/semanticTokens/edits 2020-04-02 17:38:29 +02:00
SemanticSelection.cpp [clangd] Work around gcc bug after 8f237f9b0 2020-03-26 00:06:54 +01:00
SemanticSelection.h [clangd] Support multiple cursors in selectionRange. 2020-03-25 17:59:09 +01:00
SourceCode.cpp [clangd] Fix yet-another gratuitous llvm::Error crash 2020-05-03 22:13:58 +02:00
SourceCode.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
StdSymbolMap.inc [clangd] Add include-mapping for C symbols. 2019-06-21 13:32:18 +00:00
TUScheduler.cpp [clangd] Metric tracking through Tracer 2020-05-03 10:50:32 +02:00
TUScheduler.h [clangd] Move non-clang base pieces into separate support/ lib. NFCI 2020-04-29 15:57:12 +02:00
Transport.h [NFC] Fix typos in Clangd and Clang 2019-12-16 10:54:40 +01:00
URI.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
URI.h [clangd] Simplify the callside of URI::resolve, NFC. 2019-09-23 14:39:37 +00:00
XRefs.cpp [clangd] Get rid of Inclusion::R 2020-05-05 12:23:58 +02:00
XRefs.h [clangd] Rename FormattedString -> Markup, move to support. NFC 2020-05-02 14:53:47 +02:00

README.md

clangd

clangd is a language server, and provides C++ IDE features to editors. This is not its documentation.

Communication channels

If you have any questions or feedback, you can reach community and developers through one of these channels: