Fangrui Song
344f00fbb2
CrashRecoveryContext
2018-07-15 23:06:27 -07:00
Fangrui Song
814f054e6e
Misc improvement to indexer
...
* Make CXXConstructor span one more column to left/right
* Use OrigD to collect Decl::Record members
* Better comment parsing
* Limit lines of initializers and macro definition to 3
* Attribute macro arg uses to spelling loc
* Remove FuncDef::declaring_type
2018-07-15 16:51:20 -07:00
Fangrui Song
dd05ad9f65
Diagnostics
2018-07-15 13:29:47 -07:00
Fangrui Song
eea1b92825
Enable clangDriver in project.cc
...
https://bugs.llvm.org/show_bug.cgi?id=37695 is not fixed. But since we have eliminated libclang for indexing and completion the bug no longer bothers us.
2018-07-15 01:22:02 -07:00
Fangrui Song
5dcccea285
Use Clang C++ for completion and diagnostics
2018-07-15 00:15:31 -07:00
Fangrui Song
d604fc38dc
Use Sema/CodeCompleteConsumer
2018-07-14 11:41:16 -07:00
Fangrui Song
559a68a261
Display diagnostics from header files
2018-06-23 10:50:15 -07:00
Fangrui Song
a36e548e03
Remove Timer and PerformanceImportFile
2018-05-31 23:52:51 -07:00
Fangrui Song
c9f0b65062
Simplify pipeline
2018-05-28 16:13:44 -07:00
Fangrui Song
8fabe3d1ae
Replace loguru with a custom logger
2018-05-27 15:14:33 -07:00
Fangrui Song
19d0aad2ca
clean up clang_complete found by scturtle; clean up project
2018-05-14 10:02:37 -07:00
Fangrui Song
f145c4422f
experimental/filesystem -> LLVM/Support/FileSystem.h; sparsepp -> DenseMap
2018-05-13 15:24:04 -07:00
Fangrui Song
bac704f17b
Backport and cleanup
2018-05-09 22:55:40 -07:00
Fangrui Song
984c6367d1
Redesign import_pipeline.cc and mitigate race (duplicate Query*::uses for initial indexing)
2018-05-06 21:56:14 -07:00
Fangrui Song
fa9df5bcef
Remove variant and clean up
2018-04-17 00:12:59 -07:00
Fangrui Song
d45c057dd4
Backport recent update of completion
2018-04-14 11:38:06 -07:00
Fangrui Song
6e68e9edbd
Simplify
2018-04-07 21:04:20 -07:00
Fangrui Song
d9bcaecf25
Use global config.
2018-04-04 00:29:27 -07:00
Fangrui Song
f8a816d110
.
2018-03-31 09:07:53 -07:00
Fangrui Song
da649891ae
Resurrection of ccls
2018-03-30 22:02:26 -07:00
Elliot Berman
f17196e3da
Flush all clang-complete sessions on workspace/didChangeConfiguration
2018-03-20 16:48:44 -07:00
Jacob Dufault
c7e5299bee
Reformat
2018-03-19 19:51:42 -07:00
Fangrui Song
640f548e7c
Use std::index_sequence and std::make_unique
2018-03-10 15:57:02 -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
56f57fc38e
Add missing GetCompletionKind branches
2018-02-28 21:49:44 -08:00
Jacob Dufault
01fe19f280
Format code
2018-02-21 23:34:32 -08:00
Jacob Dufault
fae959e0ee
Drop old completion requests.
...
Also increase xref limit.
2018-02-21 23:13:42 -08:00
Fangrui Song
20d1636024
Support clang-cl and cl.exe
2018-02-21 00:24:34 -08:00
Fangrui Song
f3134d564c
Simplify Index* Query*
2018-02-18 10:43:27 -08:00
Patil Arpith
afdde4d59f
Making completion_request_ ThreadedQueue from AtomicObject ( #459 )
2018-02-18 09:15:39 -08:00
Chao Shen
8bee5c6ccf
Disable limiting completion result.
...
Because vscode cache the include completion results.
But for emacs, the json is too large to load.
TODO Make some fields optional.
2018-02-08 00:28:35 +08:00
Fangrui Song
cd96cb9570
threaded_queue: queue -> deque
...
IndexMergeIndexUpdates: use TryPopBack() and see
2018-02-04 22:15:48 -08:00
Guillaume Papin
24702a25b0
add detailedLabel completion style
...
Some completion UI, such as Emacs' completion-at-point and company-lsp,
display completion item label and detail side by side.
This does not look right, when you see things like:
"foo" "int foo()"
"bar" "void bar(int i = 0)"
When this option is enabled, the completion item label is very detailed,
it shows the full signature of the candidate.
The detail just contains the completion item parent context.
Also, in this mode, functions with default arguments,
generates one more item per default argument
so that the right function call can be selected.
That is, you get something like:
"int foo()" "Foo"
"void bar()" "Foo"
"void bar(int i = 0)" "Foo"
Be wary, this is quickly quite verbose,
items can end up truncated by the UIs.
2018-02-03 20:56:14 -08:00
Fangrui Song
0d715e7bcf
Handle int8_t int16_t uint8_t uint16_t enum constants
...
Clean up clang_complete
2018-02-01 12:21:58 -08:00
Jacob Dufault
a392301be3
Format
2018-01-29 16:27:43 -08:00
Fangrui Song
ce49a5c8d9
Stop appending to insert
after a placeholder if snippetSupport is false
2018-01-22 22:21:32 -08:00
Fangrui Song
d4a4e15976
Store client capability snippetSupport into config
...
Rename filterAndSortCompletionResponse to completion.filterAndSort
Rename index.builtin_types to index.buitinTypes
2018-01-21 10:09:09 -08:00
Fangrui Song
76c38787df
CXCursor_OverloadCandidate is lsCompletionItemKind::Text
...
See clang/test/Index for some OverloadCandidate cases, they all start with Text.
2018-01-20 10:07:52 -08:00
Jacob Dufault
71ae137393
Add ScopedPerfTimer
2018-01-18 08:25:47 -08:00
Jacob Dufault
93ba0c532b
For completion, only tell clang about relevant dirty working files.
...
The heuristic may not be perfect, but it is probably good enough.
clang_codeCompleteAt seems to get slower as more and more CXUnsavedFile
instances are uploaded.
2018-01-12 09:39:05 -08:00
Jacob Dufault
54394ed868
Format
2018-01-10 18:43:01 -08:00
Joel Hock
0c9f572637
freeze state of WorkingFiles to insulate them from async changes
...
before shipping unsaved state off to clang
2018-01-06 11:26:09 -08:00
scturtle
66af432946
Fix completion order: Sort after cache.
2018-01-03 07:58:59 -08:00
Chao Shen
829b2fe18c
Better order of the completion items.
2017-12-30 15:15:46 +08:00
Fangrui Song
48e88950e1
Complete CompletionItemKind
2017-12-29 16:32:43 -08:00
Jacob Dufault
9dde5041cb
Always use -fparse-all-comments
2017-12-27 07:56:17 -08:00
Fangrui Song
af5ae31c34
Don't emit more diagnostics after hitting -ferror-limit
2017-12-23 15:20:13 -08:00
Fangrui Song
c04c9fa750
Don't emit more diagnostics after hitting -ferror-limit
2017-12-23 15:08:47 -08:00
Jacob Dufault
fb491e6c6d
Format using clang format 4.0.0
2017-12-23 08:33:26 -08:00
Walter Erquinigo
5238c50027
objc
2017-12-15 12:02:32 -08:00