Fangrui Song
a47fb42e30
Refactor serializer
...
Delete virtual bases Reader & Writer
Delete unused MAKE_REFLECT_STRUCT_WRITER_AS_ARRAY
Merge serializers/{json,binary}.hh into serializer.{hh,cc}
MAKE_REFLECT_STRUCT => REFLECT_STRUCT
MAKE_REFLECT_TYPE_PROXY => REFLECT_UNDERLYING
2019-11-09 20:09:13 -08:00
Fangrui Song
9ad2450009
Refactor WorkingFiles and CompletionManager
...
* WorkingFiles::files : vector -> unordered_map
* Add timestamp to WorkingFile
* Rename "comp-preload" thread to "preamble"
* Rename CompletionManager to SemaManager as it is used by "diag" "comp" "preamble"
* Rename clang_complete.* to sema_manager.*
* Merge SemaManager::{preloads,sessions}
* Add initialization option session.maxNum
* In DiagnosticMain, if an included file was modified, cancel the DiagTask and create a PreambleTask instead. The task sets `from_diag` so as to trigger immediate DiagTask after the preamble is built.
2019-11-09 20:09:13 -08:00
Fangrui Song
7f8f68c0b2
codeAction: use codeActionProvider: CodeActionOptions and respect CodeActionParams::range
2019-11-09 20:09:13 -08:00
Fangrui Song
741d8f2130
Refactor ReplyOnce; error if InitializeParams.rootUri is null
2019-11-09 20:09:13 -08:00
Fangrui Song
444f0db1f2
Work around relative --sysroot=
2019-11-09 20:09:13 -08:00
Fangrui Song
0d4f4b68c0
Remove ls
prefix from many LSP interfaces
...
Rename SymbolKind to Kind & lsSymbolKind to SymbolKind
Use textDocumentSync: TextDocumentSyncOptions
2019-11-09 20:09:13 -08:00
Fangrui Song
c1422c7a8d
Simplify and better compatibility with encodings retaining the feature of low bytes being 1-byte characters
2019-11-09 20:09:13 -08:00
Fangrui Song
bbce333042
*.h -> *.hh
2019-11-09 20:09:13 -08:00
Fangrui Song
3cd0ee2fc7
Refactor message handler and namespace ccls
2019-11-09 20:09:11 -08:00
Fangrui Song
8fa853c321
Implement textDocument/documentLink
2019-11-09 20:03:28 -08:00
Fangrui Song
617cdd89de
Implement textDocument/foldingRange
2019-11-09 20:03:28 -08:00
Fangrui Song
66bf514b5f
Add command line option -index=root to index without starting language server
2019-11-09 20:03:28 -08:00
Fangrui Song
bc4dc6720b
Add pipeline::{Notify,Reply,ReplyError} and simplify message handling
...
Delete method.{cc,h}
Rename $ccls/setSkippedRanges to $ccls/publishSkippedRanges
Rename $ccls/publishSemanticHighlighting to $ccls/publishSemanticHighlight; stableId -> id
2019-11-09 20:03:28 -08:00
Fangrui Song
49dd0ed558
Support workspace folders
2019-11-09 20:03:28 -08:00
Fangrui Song
31314555bb
Use pthread if defined(__unix__) || defined(__APPLE__)
2019-11-09 20:03:28 -08:00
Fangrui Song
8d61b1aadb
Revamp codeLens & codeAction
...
b.ref: references of bases
d.ref: references of derived
when b.ref > 0, don't display 0 ref or x bases
2019-11-09 20:03:28 -08:00
Fangrui Song
7eacd2664f
Support textDocument/{formatting,onTypeFormatting,rangeFormatting}
2019-11-09 20:03:26 -08:00
Fangrui Song
cff6c4714c
Simplify semantic highlighting; improve hover of auto &&
2019-11-09 19:58:32 -08:00
Fangrui Song
3dea9486b9
Misc
...
Move using below #include to make preamble happy
textDocument/references: if no references, first line or last line => list where this file is included
malloc_trim() only if files have been indexed in last cycle
Intern: use CachedHashStringRef
2019-11-09 19:58:32 -08:00
Riatre Foo
dc4f45b018
Allow force disabling snippet via client.snippetSupport
2019-11-09 19:58:32 -08:00
Fangrui Song
bf698b85d4
Publish diagnostics of inferred files and change diagnostics.{onChange,onOpen,onSave} from bool to debounce time
2019-11-09 19:58:32 -08:00
Fangrui Song
28401961ae
Simplify semantic highlighting
2019-11-09 19:58:32 -08:00
Fangrui Song
1249eb1eb0
Simplify pipeline and fix race
2019-11-09 19:58:32 -08:00
Fangrui Song
cffc8c8409
Add hierarchicalDocumentSymbolSupport
2019-11-09 19:58:32 -08:00
Fangrui Song
4b2f53aa5d
Add clang.pathMappings to reuse cache files with differect source paths
...
Use `>` as the separator.
2019-11-09 19:58:32 -08:00
Fangrui Song
68a27e746d
Add diagnostics.onSave
2019-11-09 19:58:32 -08:00
Fangrui Song
1df131d411
Reuse preamble (built by "comp-preload") in indexer
2019-11-09 19:58:32 -08:00
Fangrui Song
f1d9a93819
Support empty cacheDirectory and fix cache load
2019-11-09 19:58:32 -08:00
Fangrui Song
d3e0a4c4fd
Add index.multiVersion{Black,White}list
...
They allow files matching specified patterns to be indexed only once
even if index.multiVersion > 0. An example is to exclude system headers
with index.multiVersionBlacklist: ["^/usr/include"]
2019-10-24 01:13:24 -07:00
Fangrui Song
99fe7c7624
Uniquify $ccls/inheritanceHierarchy and add flat to $ccls/memberHierarchy
2019-10-24 01:01:21 -07:00
Fangrui Song
27a5b24b59
Add license notice
2019-10-24 01:01:21 -07:00
Fangrui Song
39787d2851
clang-format
...
DEF CON 26 CTF
2019-10-24 01:01:21 -07:00
Fangrui Song
d13586ac4d
--init
2019-10-24 01:01:20 -07:00
Fangrui Song
1830103ec6
Internalize strings & remove diagnostics_publisher.cc
2019-10-24 00:17:28 -07:00
Fangrui Song
732e002b13
Infer system include paths from CompilerInvocation
2019-10-24 00:17:28 -07:00
Fangrui Song
806a05b234
Add Config->largeFileSize; pure virtual or defaulted methods are definitions; fix $ccls/callHierarchy
2019-10-24 00:17:28 -07:00
Fangrui Song
f0559bba54
Remove Timer and PerformanceImportFile
2019-10-24 00:17:28 -07:00
Fangrui Song
a962061698
Simplify pipeline
2019-10-23 21:56:51 -07:00
Fangrui Song
cf0d16fa0c
Replace loguru with a custom logger
2019-10-23 21:56:51 -07:00
Fangrui Song
a6094ef714
Simplify; improve $ccls/inheritanceHierarchy
2019-10-23 21:56:51 -07:00
Fangrui Song
36729818c3
experimental/filesystem -> LLVM/Support/FileSystem.h; sparsepp -> DenseMap
2019-10-23 21:56:51 -07:00
Fangrui Song
c81ca26a2e
Use llvm::cl and simplify main.cc import_pipeline.cc
2019-10-23 21:56:51 -07:00
Fangrui Song
c269876593
Use clang+llvm C++ in cmake; parse args with clang driver
2019-10-23 21:56:51 -07:00
scturtle
888a870c0d
Random changes. ( #6 )
2019-10-23 21:56:51 -07:00
Fangrui Song
49e042e070
Redesign import_pipeline.cc and mitigate race (duplicate Query*::uses for initial indexing)
2019-10-23 21:56:51 -07:00
Fangrui Song
eb057c7acd
Use usr as primary key and remove id; simplify import pipeline
...
Remove on_id_map, IndexMergeIndexUpdates
2019-10-23 21:56:51 -07:00
Fangrui Song
ebaf168e16
Remove variant and clean up
2019-10-23 21:56:51 -07:00
Fangrui Song
b872faa160
Simplify
2019-10-23 21:56:50 -07:00
Fangrui Song
2035a24c74
Set typeDefinitionProvider
2019-10-23 21:56:50 -07:00
Fangrui Song
96bba583c9
Remove unused fs code.
2019-10-23 21:56:50 -07:00