Commit Graph

24 Commits

Author SHA1 Message Date
Jacob Dufault
48f3c75053 Add using declaration to optional.h, include STL optional if available or fallback to third-party one. 2017-12-29 12:00:52 -06:00
Fangrui Song
20c156f71d Make lsTextDocumentContentChangeEvent::{range,rangeLength} optional. fix #185 (#189)
Also make lsVersionedTextDocumentIdentifier::version optional per specification
2017-12-25 00:58:26 -08:00
Jacob Dufault
b65a30c3f7 Move Ipc_* types into messages/ 2017-12-05 20:41:44 -08:00
Jacob Dufault
f5314b62b1 Reformat to Chromium style. 2017-09-21 18:14:57 -07:00
Jacob Dufault
9d1369786f Pre-filter completion results before sending to vscode.
This results in a less laggy completion experience. Before, vscode would
drop frames if handed too many completions (ie, by typing #include in a
very large project).
2017-06-15 19:28:49 -07:00
Jacob Dufault
7a71447273 Move some code out of command_line.cc 2017-06-14 22:47:41 -07:00
Jacob Dufault
4bddc95908 Fix possible race when setting diagnostics. 2017-06-13 23:29:41 -07:00
Jacob Dufault
d834d4db08 Provide code action to auto-implement methods (useful for classes or function declarations). 2017-05-29 14:18:35 -07:00
Jacob Dufault
7840b7a015 Cache global completion results. 2017-05-26 00:10:55 -07:00
Jacob Dufault
7a79532fff Report document links on includes 2017-05-20 21:30:59 -07:00
Jacob Dufault
f3d00dea23 Implement code actions using clang FixIts
- Also make server check client version and show an error message if they do not match.
2017-05-20 12:31:07 -07:00
Jacob Dufault
9d3187a06c Don't bother saving if we reported diagnostics.
Always report if file has diagnostics, always report if file is interactive.
2017-05-20 01:07:54 -07:00
Jacob Dufault
29845cc1e3 Cache code completion results for backspace character. 2017-05-20 01:07:29 -07:00
Jacob Dufault
f9787f83d8 Don't serialize diagnostics 2017-05-18 22:44:23 -07:00
Jacob Dufault
d8567c75cc More robust approach for tracking indexed file. 2017-05-16 00:26:26 -07:00
Jacob Dufault
3001faf9a8 Signature help and snippets for code completion 2017-05-15 00:29:22 -07:00
Jacob Dufault
1083a10a66 Fix some threading bugs with code completion 2017-05-09 21:52:15 -07:00
Jacob Dufault
11d6623938 Update WorkingFile indexed content correctly.
We copy the file contents we indexed over to the index cache folder. Then we load those file contents into the WorkingFile instance as needed.

This means code lens should never get out of sync, as the index buffer cache will always be correct.
2017-04-20 23:32:18 -07:00
Jacob Dufault
ea045499b6 When looking up symbols map buffer line to index line.
This makes editing experience a bit smoother, as you can goto definition before saving.
2017-04-19 00:52:48 -07:00
Jacob Dufault
04a855ebc7 Much better algorithm to sync code lens index locations to the right buffer location 2017-04-16 01:09:12 -07:00
Jacob Dufault
031c0c2011 Include variable type and function signature in qualified name (better outline and workspace symbol search). Also add WIP rename provider. 2017-04-14 01:21:03 -07:00
Jacob Dufault
6e90f8db45 Enable partial document change sync, use delta info to keep references/code lens in sync when editing 2017-04-09 12:38:52 -07:00
Jacob Dufault
404b853d6f code completion works (but is still blocking) 2017-03-26 14:40:34 -07:00
Jacob Dufault
7ffdf77b99 textDocument/open close edit, WIP code completion 2017-03-25 23:47:59 -07:00