Fangrui Song
3edda5cf76
Make -v=1 work and log cflags for SemaManager session and Indexer
2019-11-09 20:09:13 -08:00
Fangrui Song
20e0beb9f3
Rendezvous after receiving "exit" notification ( #159 )
2019-11-09 20:09:13 -08:00
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
880c515d64
Merge query.hh and query_util.hh
2019-11-09 20:09:13 -08:00
Fangrui Song
d6dd932e6d
Refactor Matcher to use pimpl and merge match.hh into utils.hh
2019-11-09 20:09:13 -08:00
Fangrui Song
38e87a0729
Make EmptyParam empty & rewrite LruCache
2019-11-09 20:09:13 -08:00
Fangrui Song
9603a73421
constexpr std::string_view -> const std::string_view
...
This works around gcc 7.2/clang rC347417 which have a bad interaction with libstdc++'s implementation of P0426
constexpr std::string_view also emits a string_view object in .rodata that cannot be optimized out by clang (which means larger object file size)
So use good old const.
2019-11-09 20:09:13 -08:00
Fangrui Song
46d3f075dc
Use clang::isIdentifierBody and clean up utils/working_files
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
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
fa2234c894
Use non-inferred entries and build preamble for .h; index on didOpen if no pending requests; documentHighlight
2019-11-09 20:03:28 -08:00
Fangrui Song
083a629f90
Rename some initialization options
...
* Delete index.enabled which can be achieved with index.blacklist: ['.']
* Move completion.include* to completion.include.*
* move largeFileSize to highlight.largeFileSize
2019-11-09 20:03:28 -08:00
Fangrui Song
153e5c0dcc
Construct SourceManager with UserFilesAreVolatile
...
Prettify pipeline
2019-11-09 20:03:28 -08:00
Fangrui Song
cff6c4714c
Simplify semantic highlighting; improve hover of auto &&
2019-11-09 19:58:32 -08:00
Fangrui Song
a3b982f5d7
Add index.trackDependency and improve pipeline
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
Fangrui Song
4ea0dee1c9
Fix spurious "Failed to index" errors
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
f0400fdcf2
Delete file_consumer.*
2019-11-09 19:58:32 -08:00
Fangrui Song
28401961ae
Simplify semantic highlighting
2019-11-09 19:58:32 -08:00
Fangrui Song
d9f0de4719
Clean up FileConsumer and improve pipeline
2019-11-09 19:58:32 -08:00
Fangrui Song
569a7624a6
intern args
2019-11-09 19:58:32 -08:00
Fangrui Song
97e773081b
intern strings in dependencies and IndexInclude::resolved_path
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
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
c633ce437b
pipeline improvement for files not having a project entry (e.g. .h)
2019-11-09 19:58:32 -08:00
Fangrui Song
f939b6cc44
Make $ccls/reload reset DB and reload cached index files
...
$ccls/reload is renamed from $ccls/freshenIndex
This is useful when DB (merged index) diverges from backing IndexFile.
Also fix a semantic highlighting bug.
2019-11-09 19:58:32 -08:00
Fangrui Song
68fba7989d
Revamp completion and signatureHelp, set completion.detailedLabel: true and add completion.duplicateOptional
2019-11-09 19:58:32 -08:00
Fangrui Song
1b367eeb4b
Misc
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
0ba4a7f0a9
Implement index.onChange: true; enable spell checking for diagnostics
2019-11-09 19:58:32 -08:00
Fangrui Song
1ab0d492b7
README
2019-10-24 01:13:24 -07:00
Fangrui Song
6aee7b9648
Remove ASTUnit from indexer and clean up
2019-10-24 01:13:22 -07:00
scturtle
df1717538f
Filter deps with index.blacklist
. ( #64 )
2019-10-24 01:12:58 -07:00
Fangrui Song
27a5b24b59
Add license notice
2019-10-24 01:01:21 -07:00
Amos Bird
6e8ba37ad0
correctly grabbing the ownership of index files. ( #54 )
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
3e8f8fea64
clangIndex
2019-10-24 01:01:20 -07:00
Fangrui Song
f9befbd5fb
pipeline
2019-10-24 01:01:20 -07:00
Fangrui Song
8e4d62212b
Misc changes to clangIndex
2019-10-24 01:00:37 -07:00
Fangrui Song
103aa711d3
First draft: replace libclang indexer with clangIndex
2019-10-24 00:53:16 -07:00
Fangrui Song
b784685c61
diagnostics
2019-10-24 00:18:13 -07:00