Commit Graph

1258 Commits

Author SHA1 Message Date
Jacob Dufault
c7e5299bee Reformat 2018-03-19 19:51:42 -07:00
Jacob Dufault
3f5e34ef20 Restore include completion on # 2018-03-19 19:50:22 -07:00
Jacob Dufault
6d42b40319 Fix crash when dynamically adding completion item 2018-03-19 17:30:21 -07:00
Jacob Dufault
0dbe8a9171 Don't use std::mismatch. Unit tests crash on Windows. 2018-03-19 17:25:00 -07:00
Jacob Dufault
b272fc427c Restore call to GetPlatformClangArguments 2018-03-19 16:48:07 -07:00
Jacob Dufault
b5bd29b702 Restore platform arguments 2018-03-19 16:25:35 -07:00
Fangrui Song
a3f66468ab Simplify ComputeGuessScore 2018-03-19 01:05:29 -07:00
Boris Staletic
0b087421a7 Make CL mode detection fool-proof (#528) 2018-03-18 15:52:01 -07:00
Fangrui Song
b9c3af0be9 Don't include system header files for #include " (#i") completion 2018-03-18 14:56:30 -07:00
Fangrui Song
1e019f4984 Simplify and optimize completion. 2018-03-18 13:06:40 -07:00
Fangrui Song
639f587e01 Optimize FuzzyMatcher and add tests. 2018-03-18 12:18:16 -07:00
Boris Staletic
42b47ae77b Add -idirafter ot kPathArgs (#529) 2018-03-18 09:15:32 -07:00
Fangrui Song
55bfe58fea textDocument/didOpen: add args to override project entry 2018-03-17 13:24:21 -07:00
Fangrui Song
1d6c718bae Fix skipped region in clang 6.0.0; add repology badge; remove -latomic 2018-03-17 10:07:05 -07:00
Fangrui Song
4e8d21e306 Fix g++ build 2018-03-16 08:30:31 -07:00
Fangrui Song
552658f967 Variant of clangd fuzzy matcher 2018-03-16 00:41:58 -07:00
Rian Neogi
bcdb8690f0 Remove unneeded code 2018-03-15 11:53:27 -07:00
Rian Neogi
26584cac81 Fix completion on semicolon 2018-03-15 11:53:27 -07:00
Fangrui Song
6cd339059f Fix #518 2018-03-14 21:12:55 -07:00
Fangrui Song
cebd6bb7c7 Remove platform arguments, update Travis & AppVeyor to use clang+llvm 6.0.0
Close #509
2018-03-13 17:39:06 -07:00
Fangrui Song
3a752a3c8f Adjust order of GetPlatformClangArguments 2018-03-11 22:13:17 -07:00
Fangrui Song
89d45fb48a Reload .cquery compile_commands.json upon workspace/didChangeConfiguration. fix #378
And backport https://github.com/waf-project/waf/pull/2127
2018-03-11 15:15:15 -07:00
DaanDeMeyer
9b3ec699e0 fix windows relative path include dirs (#501)
* Only do path normalization on clang-cl + clang-format

* Improve clang-cl checking + add /I to args that could be followed by a relative path + add two test cases
2018-03-11 10:08:41 -07:00
Fangrui Song
2a7117e6e5 Fix hierarchical .cquery 2018-03-10 19:51:08 -08:00
Fangrui Song
640f548e7c Use std::index_sequence and std::make_unique 2018-03-10 15:57:02 -08:00
Fangrui Song
3995a9d5b8 Add initialization options highlight.{blacklist,whitelist} 2018-03-09 00:23:32 -08:00
Fangrui Song
ce6b7363c6 Upgrade to --bundled-clang=6.0.0 2018-03-08 20:04:05 -08:00
Fangrui Song
f9f8429c74 Uniquify {func,type}.derived 2018-03-07 15:08:50 -08:00
Fangrui Song
478e542e8a Move lsSymbolKind to lsp.h 2018-03-07 13:20:31 -08:00
Fangrui Song
15ec6036e7 Set parentKind of Func/Var from declarations if they have no definition 2018-03-07 00:56:47 -08:00
Fangrui Song
57f2c325f0 parentKind in semantic highlighting: SymbolKind -> lsSymbolKind 2018-03-07 00:34:20 -08:00
Fangrui Song
6815f1312f Add semantic parent to textDocument/references 2018-03-06 20:05:32 -08:00
Fangrui Song
a1210db985 Add --log-file-append 2018-03-06 17:58:29 -08:00
Daan De Meyer
6b167e7773 remove unnecessary include 2018-03-06 13:15:37 -08:00
Daan De Meyer
46bc43acc4 Add unit test for IsWindowsAbsolutePath and remove explitic true/false checks (! instead) 2018-03-06 13:15:37 -08:00
Daan De Meyer
26e50e695d Add unit test for IsWindowsAbsolutePath 2018-03-06 13:15:37 -08:00
Daan De Meyer
99904874ca Fix libclang generic error on Windows 2018-03-06 13:15:37 -08:00
Fangrui Song
e5a904f9c7 Fix --test-unit 2018-03-05 20:46:45 -08:00
Fangrui Song
e6c4d32a6b Add config->diagnostics.{blacklist,whitelist} 2018-03-05 19:03:39 -08:00
Fangrui Song
df55e79e4e Add DiagnosticsEngine and add config->diagnostics.frequencyMs to allow reducing textDocument/publishDiagnostics frequency 2018-03-05 17:53:38 -08:00
Fangrui Song
df95cd4780 Fix #487 dead loop in hierarchical .cquery 2018-03-03 14:43:51 -08:00
Fangrui Song
68b7ed5852 Simplify clang_indexer.cc 2018-03-02 10:19:19 -08:00
Fangrui Song
d8b9acc790 [waf] Remove -Werror and reorder some libclang labels 2018-03-02 10:01:49 -08:00
Fangrui Song
8de44e3b95 Add workspace/executeCommand 2018-03-01 21:26:14 -08:00
Fangrui Song
8fcf60e3bc Add textDocument/typeDefinition 2018-03-01 20:19:38 -08:00
Chao Shen
e03a3a8e7c Add dummy compiler argument. 2018-03-01 19:12:59 -08:00
Fangrui Song
3e3bf885eb Use X macros 2018-03-01 19:09:35 -08:00
Fangrui Song
0ba8f2a42c Remove atomic_object.h and add workspace/didChangeConfiguration placeholder 2018-03-01 18:15:33 -08:00
Fangrui Song
56f57fc38e Add missing GetCompletionKind branches 2018-02-28 21:49:44 -08:00
Fangrui Song
8e70a1078e Use call sites for callHierarchy 2018-02-28 17:56:49 -08:00
Fangrui Song
1cc5b85ef4 Fix -Wunused-variable when CINDEX_VERSION >= 47 2018-02-28 08:35:06 -08:00
Jacob Dufault
ab508bb12e Revert "[[noreturn]] on cquery_unreachable_internal"
This reverts commit 5db4314a5e3b3010bc5883e8d775e396164d7d85.
2018-02-27 23:23:07 -08:00
Jacob Dufault
d1fdf231c8 Make all call type default in $cquery/callHierarchy 2018-02-27 23:08:39 -08:00
Jacob Dufault
78fe0c7ebe Better comment in project.cc 2018-02-27 23:08:23 -08:00
Jacob Dufault
c43b197b99 [[noreturn]] on cquery_unreachable_internal 2018-02-27 23:08:06 -08:00
Jacob Dufault
e44109aee9 Reorder some IPC members 2018-02-27 23:07:53 -08:00
Jacob Dufault
7a81a5dbc5 Better error message for issue #478 2018-02-27 23:07:40 -08:00
Fangrui Song
ba87714e92 Merge $cquery/*Hierarchy{Initial,Expand} 2018-02-27 22:25:16 -08:00
Fangrui Song
214eded2cb Support listing local variables in memberHierarchy and better handling of locations for typedef; remove cquery_call_tree.cc 2018-02-26 21:32:58 -08:00
Fangrui Song
60c0267432 Var DetailedName 2018-02-26 18:29:37 -08:00
Fangrui Song
09dd20226f Rename FuncDefDefinitionData::locals to vars, remove constants from EnumDecl's vars 2018-02-26 17:53:37 -08:00
Fangrui Song
7743480b13 Use clang_getTypedefDeclUnderlyingType and expand alias_of in memberHierarchy 2018-02-26 00:31:16 -08:00
Fangrui Song
eee785569f memberHierarchy 2018-02-25 23:14:03 -08:00
Fangrui Song
42825d022b memberHierarchy 2018-02-25 22:55:17 -08:00
Fangrui Song
c166f3bca8 Simplify hierarchies 2018-02-25 19:44:43 -08:00
Fangrui Song
95797be730 Rename *DefDefinitionData::{base,parents} to bases and add inheritanceHierarchy{Initial,Expand} 2018-02-25 18:52:30 -08:00
Fangrui Song
dc18f04759 Strip scope qualifiers of detailed_name in $cquery/memberHierarchy{Initial,Expand} 2018-02-25 17:03:24 -08:00
Fangrui Song
bfcab88090 memberHierarchy 2018-02-25 16:24:53 -08:00
Fangrui Song
8c32839362 $cquery/{call,member}Hierarchy{Initial,Expand} work 2018-02-25 16:13:29 -08:00
Fangrui Song
eda5782aa6 hierarchies 2018-02-25 15:39:27 -08:00
Fangrui Song
968c15a2ca Add detailed_name to hierarchies 2018-02-25 15:24:51 -08:00
Fangrui Song
f84cb1c85f Add field_name to $cquery/memberHierarchy{Initial,Expand} and untested call hierarchy 2018-02-25 14:53:57 -08:00
Fangrui Song
cd3da90152 Re-design $cquery/memberHierarchy{Initial,Expand} 2018-02-25 09:23:38 -08:00
Fangrui Song
8a427dfa9e Add role to lsLocationEx 2018-02-24 21:47:51 -08:00
Fangrui Song
1469723c3c Don't show references (e.g. there are references to classes in constructor positions) in textDocument/documentSymbol 2018-02-24 17:30:29 -08:00
Fangrui Song
b53c41408e Support %c %cpp %clang in clang command line and remove -std=gnu11 -std=gnu++14 defaults
If you want to mix C/C++ source files in a `.cquery` project:

echo -e '%clang\n%cpp -std=gnu++14' > .cquery
2018-02-24 15:21:32 -08:00
Fangrui Song
62e6f91808 Don't include rapidjson in indexer.h 2018-02-23 18:30:06 -08:00
Fangrui Song
bee8bacefd Speed up build 2018-02-23 18:24:54 -08:00
Fangrui Song
c68548a2ca Remove <regex> from lex_utils.h and separate language_server_api.h
% time clang++ -fsyntax-only -std=c++11 a.cc

<iostream> => 0.35s
<regex> => 0.68s
2018-02-23 16:33:48 -08:00
Fangrui Song
411d49951d Reduce structs in language_server_api.h and clarify query_utils.h 2018-02-23 15:57:11 -08:00
Fangrui Song
b98c9a4575 Remove UniqueAdd* and uniquify uses after libclang callbacks.
This removes some duplication in `uses`.
2018-02-23 15:08:19 -08:00
Nathan Ridge
9f4b30ca8c Fix semantic highlighting regressions from switch from ClangSymbolKind to lsSymbolKind (fixes #469) 2018-02-22 16:11:35 -08:00
Fangrui Song
d4c49730fd Better :: lexing and fix ci 2018-02-22 15:52:49 -08:00
Fangrui Song
61b5ef4fa0 Reduce <iostream>; don't include rapidjson in language_server_api.h; add role to lsReferenceContext 2018-02-22 14:39:46 -08:00
Fangrui Song
d2bc737068 Semantic highlighting of macros 2018-02-22 09:43:53 -08:00
Fangrui Song
cfa0308ff6 Update tests 2018-02-22 08:54:05 -08:00
Fangrui Song
b9fcbddc6d Use -working-directory= 2018-02-22 08:50:49 -08:00
scturtle
319cec6e0a fix ci 2018-02-22 17:02:00 +08:00
Fangrui Song
892f2ebfc7 Deduplicate Query*; add local variables to outline but not in documentSymbol 2018-02-21 23:49:52 -08:00
Jacob Dufault
01fe19f280 Format code 2018-02-21 23:34:32 -08:00
Jacob Dufault
566b508b8e Fix regressions in completion filtering. Also improve performance slightly.
If there was no filter then we would return all results - this caused huge delays for #include completion.
2018-02-21 23:30:35 -08:00
Jacob Dufault
fae959e0ee Drop old completion requests.
Also increase xref limit.
2018-02-21 23:13:42 -08:00
Fangrui Song
e785d3f477 Keep a list of QueryType 2018-02-21 23:02:28 -08:00
Fangrui Song
702cdbe9bb Group initialization options and rename $cquery/typeHierarchyTree to $cquery/inheritanceHierarchy 2018-02-21 21:57:15 -08:00
Fangrui Song
20d1636024 Support clang-cl and cl.exe 2018-02-21 00:24:34 -08:00
Fangrui Song
1a4da727da Index namespace alias and MSVC __interface; add --enable-assert to waf; add lexical container to xref requests 2018-02-20 22:13:58 -08:00
Fangrui Song
909c2e247a Simplify query_utils 2018-02-20 18:30:58 -08:00
Fangrui Song
65ba98c3f8 Add Config::maxXrefResults and improve textDocument/definition
-std=c++11 => -std=c++14 for generic lambda
2018-02-20 16:19:26 -08:00
Fangrui Song
40ab5900de Add TypeDefDefinitionData::declarations
Constructors and destructors are also included in declarations. But this is not necessarily bad, as textDocument/definition on class spelling names can jump to constructors as well as declarations.
2018-02-20 14:52:32 -08:00
Fangrui Song
9f3e0ce0dc Improve finding definition/declaration and work around #463 2018-02-20 12:46:52 -08:00