llvm-project/clang-tools-extra/clangd
Nathan Ridge c624e70149 [clangd] Rename HeuristicResolver::resolveCallExpr() to resolveTypeOfCallExpr()
Differential Revision: https://reviews.llvm.org/D100741
2021-04-25 19:20:14 -04:00
..
benchmarks [cte][NFC] Remove all references to stdlib stream headers. 2021-03-02 21:57:16 +00:00
fuzzer [clangd] Replace usages of dummy with more descriptive words 2021-03-22 12:49:24 +01:00
include-mapping
index [clangd] Perform merging for stale symbols in MergeIndex 2021-03-30 11:09:51 +02:00
indexer
quality Make clangd CompletionModel usable even with non-standard (but supported) layout 2021-03-22 10:05:25 +01:00
refactor [clangd] Use dirty filesystem when performing cross file tweaks 2021-04-20 17:13:44 +01:00
support [clangd] Replace usages of dummy with more descriptive words 2021-03-22 12:49:24 +01:00
test [clangd] Allow AST request without range 2021-04-23 21:35:42 +02:00
tool [clangd] Use dirty filesystem when performing cross file tweaks 2021-04-20 17:13:44 +01:00
unittests [clangd] Omit parameter hint for setter functions 2021-04-25 19:20:12 -04:00
xpc
AST.cpp Improve hover scopes for Objective-C code 2021-02-12 10:27:32 -05:00
AST.h Improve hover scopes for Objective-C code 2021-02-12 10:27:32 -05:00
ASTSignals.cpp [clangd] Factor out the heuristic resolver code into its own class 2021-02-16 04:10:52 -05:00
ASTSignals.h [clangd] Trivial: Documentation fix in ASTSignals. 2021-01-14 18:38:42 +01:00
CMakeLists.txt [clangd] Add support for inline parameter hints 2021-04-14 02:31:20 -04:00
CSymbolMap.inc
ClangdLSPServer.cpp [clangd] Add support for inline parameter hints 2021-04-14 02:31:20 -04:00
ClangdLSPServer.h [clangd] Add support for inline parameter hints 2021-04-14 02:31:20 -04:00
ClangdServer.cpp [clangd] Allow AST request without range 2021-04-23 21:35:42 +02:00
ClangdServer.h [clangd] Allow AST request without range 2021-04-23 21:35:42 +02:00
CodeComplete.cpp [clangd] Drop template argument lists from completions followed by < 2021-02-18 13:06:11 +01:00
CodeComplete.h Revert "Revert "[clangd] Use ML Code completion ranking as default."" 2021-03-02 18:03:52 +01:00
CodeCompletionStrings.cpp
CodeCompletionStrings.h
CollectMacros.cpp [clangd] Add main file macros into the main-file index. 2021-01-14 15:10:17 +03:00
CollectMacros.h [clangd] Add main file macros into the main-file index. 2021-01-14 15:10:17 +03:00
CompileCommands.cpp [clangd] Replace usages of dummy with more descriptive words 2021-03-22 12:49:24 +01:00
CompileCommands.h Reland [clangd] Quote/escape argv included in log messages. 2021-01-31 16:39:47 +01:00
Compiler.cpp [clang][clangd] Avoid inconsistent target creation 2021-04-06 23:23:34 +08:00
Compiler.h [clangd] Introduce ASTHooks to FeatureModules 2021-04-13 17:45:09 +02:00
Config.cpp
Config.h Revert "Revert "[clangd] Provide a way to disable external index"" 2021-04-13 11:24:32 +02:00
ConfigCompile.cpp [clangd] Only allow remote index to be enabled from user config. 2021-04-15 14:51:23 +02:00
ConfigFragment.h [clangd] Only allow remote index to be enabled from user config. 2021-04-15 14:51:23 +02:00
ConfigProvider.cpp [clangd] Only allow remote index to be enabled from user config. 2021-04-15 14:51:23 +02:00
ConfigProvider.h [clangd] Only allow remote index to be enabled from user config. 2021-04-15 14:51:23 +02:00
ConfigYAML.cpp Revert "Revert "[clangd] Provide a way to disable external index"" 2021-04-13 11:24:32 +02:00
Diagnostics.cpp [clangd] Propagate data in diagnostics 2021-04-13 17:45:09 +02:00
Diagnostics.h [clangd] Propagate data in diagnostics 2021-04-13 17:45:09 +02:00
DraftStore.cpp [clangd][NFC] Silence some buildbot warnings after 0250b053 2021-03-09 14:55:55 +00:00
DraftStore.h [clangd][NFC] Silence some buildbot warnings after 0250b053 2021-03-09 14:55:55 +00:00
DumpAST.cpp [clangd] Allow AST request without range 2021-04-23 21:35:42 +02:00
DumpAST.h [clangd] Allow AST request without range 2021-04-23 21:35:42 +02:00
ExpectedTypes.cpp
ExpectedTypes.h
FS.cpp
FS.h
FeatureModule.cpp [clangd] Rename Module -> FeatureModule to avoid confusion. NFC 2021-03-05 10:04:00 +01:00
FeatureModule.h [clangd] Introduce ASTHooks to FeatureModules 2021-04-13 17:45:09 +02:00
Features.inc.in [clangd] Optionally add reflection for clangd-index-server 2021-03-15 21:07:25 +01:00
FileDistance.cpp [clangd] NFC: Use SmallVector<T> where possible 2020-12-10 13:36:49 +01:00
FileDistance.h
FindSymbols.cpp [clangd] Replace usages of dummy with more descriptive words 2021-03-22 12:49:24 +01:00
FindSymbols.h
FindTarget.cpp [clangd] ObjC fixes for semantic highlighting and xref highlights 2021-03-03 20:16:08 +01:00
FindTarget.h [clangd] Factor out the heuristic resolver code into its own class 2021-02-16 04:10:52 -05:00
Format.cpp [clangd] Replace usages of dummy with more descriptive words 2021-03-22 12:49:24 +01:00
Format.h
FuzzyMatch.cpp
FuzzyMatch.h
GlobalCompilationDatabase.cpp [clangd] Expose absoluteParent helper 2021-02-19 13:40:21 +01:00
GlobalCompilationDatabase.h [clangd] Allow configuration database to be specified in config. 2021-01-25 23:15:48 +01:00
HeaderSourceSwitch.cpp [clangd][NFC] Use PathRef for getCorrespondingHeaderOrSource 2021-01-07 02:41:19 +00:00
HeaderSourceSwitch.h [clangd][NFC] Use PathRef for getCorrespondingHeaderOrSource 2021-01-07 02:41:19 +00:00
Headers.cpp [clangd] Introduce Modules 2021-02-12 18:37:16 +01:00
Headers.h [clangd] Use flags from open files when opening headers they include 2021-03-01 09:43:59 +01:00
HeuristicResolver.cpp [clangd] Rename HeuristicResolver::resolveCallExpr() to resolveTypeOfCallExpr() 2021-04-25 19:20:14 -04:00
HeuristicResolver.h [clangd] Rename HeuristicResolver::resolveCallExpr() to resolveTypeOfCallExpr() 2021-04-25 19:20:14 -04:00
Hover.cpp [clangd] Show hex value of numeric constants 2021-03-02 16:33:02 +01:00
Hover.h
IncludeFixer.cpp [clangd] Deduplicate scopes in IncludeFixer queries 2021-02-05 14:02:50 +01:00
IncludeFixer.h
InlayHints.cpp [clangd] Omit parameter hint for setter functions 2021-04-25 19:20:12 -04:00
InlayHints.h [clangd] Add support for inline parameter hints 2021-04-14 02:31:20 -04:00
JSONTransport.cpp [clangd] Avoid reallocating buffers for each message read: 2021-01-13 17:40:33 +01:00
LSPBinder.h [clangd] Bind outgoing calls through LSPBinder too. NFC 2021-02-17 10:56:06 +01:00
ParsedAST.cpp [clangd] Introduce ASTHooks to FeatureModules 2021-04-13 17:45:09 +02:00
ParsedAST.h [clangd] Introduce pullDiags endpoint 2021-03-16 12:52:15 +01:00
PathMapping.cpp
PathMapping.h
Preamble.cpp [cland] Dont emit missing newline warnings when building preamble 2021-04-23 08:56:32 +02:00
Preamble.h [clangd] Introduce pullDiags endpoint 2021-03-16 12:52:15 +01:00
Protocol.cpp [clangd] Add support for inline parameter hints 2021-04-14 02:31:20 -04:00
Protocol.h [clangd] Allow AST request without range 2021-04-23 21:35:42 +02:00
Quality.cpp Revert "Revert "[clangd] Use ML Code completion ranking as default."" 2021-03-02 18:03:52 +01:00
Quality.h Revert "[clangd] Extract symbol-scope logic out of Quality, add tests. NFC" 2021-01-29 14:59:16 +01:00
QueryDriverDatabase.cpp Reland [clangd] Quote/escape argv included in log messages. 2021-01-31 16:39:47 +01:00
README.md [Branch-Rename] Fix some links 2021-02-01 16:43:21 +05:30
RIFF.cpp
RIFF.h
Selection.cpp [clangd] Selection handles CXXBaseSpecifier 2021-01-26 18:58:53 +00:00
Selection.h Remove references to the ast_type_traits namespace 2020-12-11 00:58:46 +01:00
SemanticHighlighting.cpp [clangd] Use HeuristicResolver to produce a better semantic token for name referring to UnresolvedUsingValueDecl 2021-04-25 16:45:04 -04:00
SemanticHighlighting.h [clangd] ObjC fixes for semantic highlighting and xref highlights 2021-03-03 20:16:08 +01:00
SemanticSelection.cpp
SemanticSelection.h
SourceCode.cpp [clangd] Replace usages of dummy with more descriptive words 2021-03-22 12:49:24 +01:00
SourceCode.h [clangd] Move DraftStore from ClangdLSPServer into ClangdServer. 2021-03-02 22:58:50 +01:00
StdSymbolMap.inc
TUScheduler.cpp [clangd] Use Dirty Filesystem for cross file rename. 2021-03-10 13:41:29 +00:00
TUScheduler.h [clangd] Use Dirty Filesystem for cross file rename. 2021-03-10 13:41:29 +00:00
TidyProvider.cpp [clangd] Expose absoluteParent helper 2021-02-19 13:40:21 +01:00
TidyProvider.h [clangd] Validate clang-tidy Checks in clangd config. 2020-12-15 21:10:57 +00:00
Transport.h
URI.cpp
URI.h
XRefs.cpp [clangd] Add support for inline parameter hints 2021-04-14 02:31:20 -04:00
XRefs.h [clangd] Report only decl of overridding method in xref. 2021-02-02 13:06:20 +01: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:

Building and testing clangd

For a minimal setup on building clangd:

  • Clone the LLVM repo to $LLVM_ROOT.

  • Create a build directory, for example at $LLVM_ROOT/build.

  • Inside the build directory run: cmake $LLVM_ROOT/llvm/ -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra".

    • We suggest building in Release mode as building DEBUG binaries requires considerably more resources. You can check Building LLVM with CMake documentation for more details about cmake flags.
    • In addition to that using Ninja as a generator rather than default make is preferred. To do that consider passing -G Ninja to cmake invocation.
    • Finally, you can turn on assertions via -DLLVM_ENABLE_ASSERTS=On.
  • Afterwards you can build clangd with cmake --build $LLVM_ROOT/build --target clangd, similarly run tests by changing target to check-clangd.