• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/H10-Jul-2018-40

clang_archive_hashes/H10-Jul-2018-168

cmake/H10-Jul-2018-296241

e2e_tests/H10-Jul-2018-259219

index_tests/H10-Jul-2018-10,7661,012

src/H03-May-2022-25,37119,167

third_party/H03-May-2022-255,251199,892

.appveyor.ymlH A D10-Jul-2018672 3324

.clang-formatH A D10-Jul-201823 21

.gitattributesH A D10-Jul-2018160 86

.gitignoreH A D10-Jul-2018291 2827

.gitmodulesH A D10-Jul-2018631 1918

.pep8H A D10-Jul-201821 32

.travis.ymlH A D10-Jul-20181.7 KiB7867

LICENSEH A D10-Jul-20181.1 KiB2217

README.mdH A D10-Jul-20182.3 KiB4634

clang_compilation_database.pyH A D10-Jul-20182.6 KiB8566

e2e_test_runner.pyH A D10-Jul-201811.1 KiB365287

publish.pyH A D10-Jul-2018509 2010

wafH A D10-Jul-201899.9 KiB171129

wscriptH A D03-May-202216.5 KiB403294

README.md

1[![Join the chat at https://gitter.im/cquery-project/Lobby](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/cquery-project/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
2
3# cquery
4
5cquery is a highly-scalable, low-latency language server for C/C++/Objective-C. It is tested
6and designed for large code bases like
7[Chromium](https://chromium.googlesource.com/chromium/src/). cquery provides
8accurate and fast semantic analysis without interrupting workflow.
9
10![Demo](https://ptpb.pw/GlSQ.png?raw=true)
11
12cquery implements almost the entire language server protocol and provides
13some extra features to boot:
14
15  * code completion (with both signature help and snippets)
16  * finding [definition](src/messages/text_document_definition.cc)/[references](src/messages/text_document_references.cc)
17  * [call (caller/callee) hierarchy](src/messages/cquery_call_hierarchy.cc), [inheritance (base/derived) hierarchy](src/messages/cquery_inheritance_hierarchy.cc), [member hierarchy](src/messages/cquery_member_hierarchy.cc)
18  * [symbol rename](src/messages/text_document_rename.cc)
19  * [document symbols](src/messages/text_document_document_symbol.cc) and approximate search of [workspace symbol](src/messages/workspace_symbol.cc)
20  * [hover information](src/messages/text_document_hover.cc)
21  * diagnostics
22  * code actions (clang FixIts)
23  * preprocessor skipped regions
24  * #include auto-complete, undefined type include insertion, include quick-jump
25    (goto definition, document links)
26  * auto-implement functions without a definition
27  * semantic highlighting, including support for [rainbow semantic highlighting](https://medium.com/@evnbr/coding-in-color-3a6db2743a1e)
28
29# >>> [Getting started](https://github.com/jacobdufault/cquery/wiki/Getting-started) (CLICK HERE) <<<
30
31<a href="https://repology.org/metapackage/cquery">
32  <img src="https://repology.org/badge/vertical-allrepos/cquery.svg" alt="Packaging status" align="right">
33</a>
34
35# Limitations
36
37cquery is able to respond to queries quickly because it caches a huge amount of
38information. When a request comes in, cquery just looks it up in the cache
39without running many computations. As a result, there's a large memory overhead.
40For example, a full index of Chrome will take about 10gb of memory. If you
41exclude v8, webkit, and third_party, it goes down to about 6.5gb.
42
43# License
44
45MIT
46