Fangrui Song
5a1ed4c943
Support workspace folders
2019-01-09 15:17:19 +08:00
Fangrui Song
de9c77e1cc
Improve completion
...
blacklist some undesired candidates
additionalTextEdits if clang>=7
Use CodePatterns for preprocessor directive completion if there is a #
Prefer textEdit over insertText
2019-01-09 15:17:19 +08:00
Fangrui Song
10c1c28dd1
Clean and update tests after Index* refactoring
2019-01-09 15:17:13 +08:00
Fangrui Song
8c2170172d
Use DeclRef spell to represent Use spell + Use extent
2018-10-04 17:16:39 -07:00
Fangrui Song
6ec032c2a0
Redesign SymbolRef, Ref, Use
...
Remove lsLocationEx
2018-10-04 17:16:34 -07:00
Fangrui Song
38feb8d277
Add completion.maxNum: 100
2018-10-04 00:13:50 -07:00
Fangrui Song
c7ee3d85f3
For $ccls/member, use unadjusted RecordDecl (if there is forward declaration) and handle ClassTemplateSpecialization
2018-10-03 00:42:02 -07:00
Fangrui Song
fc8a60c630
Add PreambleStatCache
2018-10-02 22:15:21 -07:00
Fangrui Song
29f05d96fb
Use pthread if defined(__unix__) || defined(__APPLE__)
2018-10-02 17:51:36 -07:00
firstlove
8d49b44154
regard conversion as method instead of constructor
2018-10-01 20:49:49 -07:00
Fangrui Song
da07cb2da4
Add $ccls/info
2018-10-01 16:56:53 -07:00
Fangrui Song
f2227cbaa2
Clean
2018-10-01 16:56:53 -07:00
Fangrui Song
84984c6c27
Use non-inferred entries and build preamble for .h; index on didOpen if no pending requests; documentHighlight
2018-10-01 16:56:50 -07:00
Fangrui Song
79373ba486
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
2018-09-30 11:46:34 -07:00
Fangrui Song
da704521b5
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
2018-09-30 11:44:24 -07:00
Fangrui Song
d4871207ed
Construct SourceManager with UserFilesAreVolatile
...
Prettify pipeline
2018-09-28 14:06:01 -07:00
Fangrui Song
a127ca9b02
Support textDocument/{formatting,onTypeFormatting,rangeFormatting}
2018-09-28 10:18:04 -07:00
Fangrui Song
05109b6fa4
Merge textDocument_did{Change,Close,Open,Save}.cc
2018-09-27 22:16:42 -07:00
Amos Bird
d6ad864f11
Update threaded_queue.h ( #82 )
...
https://en.cppreference.com/w/cpp/language/fold
2018-09-26 17:47:03 -07:00
Fangrui Song
41fcc0272c
Simplify semantic highlighting; improve hover of auto &&
2018-09-25 11:57:42 -07:00
Fangrui Song
0eb9428a32
Add index.trackDependency and improve pipeline
2018-09-24 00:38:56 -07:00
Fangrui Song
eb644bb78e
Add index.initial{Blacklist,Whitelist}
...
index.{blacklist,whitelist}: disable indexes thoroughly
index.initial{Blacklist,Whitelist}: disable initial loading. will still be indexed after opening
2018-09-24 00:38:56 -07:00
Fangrui Song
ce68028caf
Add GetAdjustedDecl to adjust Decl's that are missed by clangIndex
2018-09-24 00:38:54 -07:00
Fangrui Song
8f40c0c244
Remove clang_utils.*
2018-09-23 20:34:40 -07:00
Fangrui Song
854225bd30
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
2018-09-23 20:34:38 -07:00
Riatre Foo
32f7d148ca
Allow force disabling snippet via client.snippetSupport
2018-09-23 11:32:57 -07:00
Fangrui Song
71e9835b8c
documentSymbol: ignore TypeParameter
...
Reported by Riatre
2018-09-23 10:44:08 -07:00
Riatre Foo
e320ce42ab
Include macros in completion result
2018-09-23 10:40:41 -07:00
Fangrui Song
22daed7001
Add kind to $ccls/member and iterate all QueryType::def
...
kind:2 => member functions
kind:3 => nested classes / namespace members
2018-09-23 10:40:41 -07:00
Fangrui Song
7eb58bb5e1
Misc
2018-09-23 10:40:41 -07:00
Fangrui Song
6ea399559d
Fix spurious "Failed to index" errors
2018-09-23 10:40:41 -07:00
Fangrui Song
28d33324b1
Publish diagnostics of inferred files and change diagnostics.{onChange,onOpen,onSave} from bool to debounce time
2018-09-23 10:40:39 -07:00
Riatre Foo
1a519163da
Remove chunks with CK_Information kind from insertText. ( #78 )
...
Without this ccls inserts "size() const" in the following scenario:
std::string text;
text.si| <-- Trigger completion here and pick "size"
2018-09-22 08:57:36 -07:00
Fangrui Song
4d76108d6b
Delete file_consumer.*
2018-09-20 19:48:20 -07:00
Fangrui Song
41756297ef
Simplify semantic highlighting
2018-09-20 17:49:39 -07:00
Fangrui Song
f9bd84a975
Clean up FileConsumer and improve pipeline
2018-09-20 09:20:07 -07:00
Fangrui Song
f515b4b466
Improve VarDef::type for textDocument/typeDefinition
2018-09-20 01:08:33 -07:00
Fangrui Song
08645d64c1
intern args
2018-09-20 01:08:33 -07:00
Fangrui Song
525b6da1ac
intern strings in dependencies and IndexInclude::resolved_path
2018-09-20 01:08:33 -07:00
Fangrui Song
763106c3d4
Simplify pipeline and fix race
2018-09-20 01:08:31 -07:00
Fangrui Song
14b73f0d6f
Add hierarchicalDocumentSymbolSupport
2018-09-16 20:53:52 -07:00
Fangrui Song
a18977b9fc
Add clang.pathMappings to reuse cache files with differect source paths
2018-09-16 20:53:52 -07:00
Fangrui Song
34c1ebcefd
Remove [spell.start, spell.end) -> [spell.start, extent.end) hack
2018-09-16 20:53:50 -07:00
Fangrui Song
56c6ec43df
Skip informative scope foo::
2018-09-16 17:00:59 -07:00
Fangrui Song
70deeca8ad
Rename hierarchies to $ccls/{call,inheritance,member}
...
bool flat = false; -> bool hierarchy = false; (set it to true to enable hierarchical view)
Delete $ccls/callers (which is what $ccls/call does now)
2018-09-13 14:55:27 -07:00
Fangrui Song
a174105abe
Better diagnostics
2018-09-13 14:55:27 -07:00
Fangrui Song
1969731781
textDocument/documentSymbol
2018-09-13 14:55:27 -07:00
Fangrui Song
6bca153ee3
Make $ccls/inheritanceHierarchy and textDocument/typeDefinition find declarations if definitions do not exist; spelling ranges of operator=
2018-09-13 14:55:24 -07:00
Fangrui Song
e2f29d7b1b
pipeline improvement for files not having a project entry (e.g. .h)
2018-09-12 17:01:52 -07:00
Fangrui Song
c7a6c5cd12
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.
2018-09-12 17:01:52 -07:00
Riatre Foo
a607dcec24
Normalize paths on Windows
...
1. Normalize paths in LSP document URIs and project root to forward
slash and uppercase drive letters.
2. Normalize paths in compile_commands.json to forward slash and
uppercase drive letters.
3. Normalize paths from directory listing to forward slash. (Drive
letter should be same as input dir path, which is already uppercase
since path of project root dir is normalized)
4. Add llvm::sys::path::convert_to_slash after certain llvm::sys::path
and llvm::fs calls.
2018-09-12 17:01:52 -07:00
Fangrui Song
a45686ae1b
diagnostics; use custom DenseMapInfo
2018-09-12 17:01:52 -07:00
Fangrui Song
c9e6b31dd0
Revamp completion and signatureHelp, set completion.detailedLabel: true and add completion.duplicateOptional
2018-09-12 17:01:48 -07:00
Fangrui Song
a7c1633b51
Misc
2018-09-11 20:22:49 -07:00
Fangrui Song
c202dd3775
Make CXXConversion references wider; use getTypedefNameForAnonDecl; improve CXXDestructor CXXConversion spell
2018-09-11 16:21:46 -07:00
Fangrui Song
92ee7f3e0f
Add diagnostics.onSave
2018-09-11 16:21:42 -07:00
Fangrui Song
da982a6506
Reuse preamble (built by "comp-preload") in indexer
2018-09-10 00:45:56 -07:00
Fangrui Song
58191fd335
Support empty cacheDirectory and fix cache load
2018-09-08 15:46:52 -07:00
Fangrui Song
82d31a2012
Implement index.onChange: true; enable spell checking for diagnostics
2018-09-08 14:27:49 -07:00
Fangrui Song
e20a8e7a1b
Add DeclUse as element type of declarations
2018-09-08 14:27:44 -07:00
Fangrui Song
8b3ebf234b
Remove $ccls/base and clean up; deduplicate codeLens
2018-09-07 15:00:15 -07:00
Fangrui Song
b77fba6ea8
Improve hover and documentSymbol
2018-09-06 00:22:40 -07:00
Fangrui Song
56da577df9
Add clang.excludeArgs and rename diagnostics.onType to onChange
2018-09-04 13:10:18 -07:00
Fangrui Song
0a51424c5c
Add $ccls/navigate and improve textDocument/definition
2018-09-04 01:04:19 -07:00
Fangrui Song
e92378df9c
Add all: boolean to textDocument/documentSymbol
2018-09-03 14:25:49 -07:00
Fangrui Song
aebf2dfaed
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"]
2018-09-03 12:28:55 -07:00
Fangrui Song
a33f4df404
index.multiVersion: int
...
Before, QueryFile::Def::{all_symbols,outline} were built by indexers.
Now, {symbol,outline}2refcnt are used instead, built by main thread.
*_removed are augmented with Query*:Def to allow removal of old {symbol,outline}2refcnt entries.
2018-09-03 12:27:26 -07:00
Fangrui Song
145630ba1a
Fix unaligned load/store; add index.multiVersion prototype, rename index.onParse to index.OnOpen
...
Don't call getFieldOffset() on RD->isInvalidDecl()
2018-09-02 23:10:03 -07:00
Fangrui Song
11e92d52a8
README
2018-09-02 14:01:28 -07:00
Fangrui Song
407c7cc29d
Remove ASTUnit from indexer and clean up
2018-08-31 09:47:37 -07:00
scturtle
5cc3006a3a
Filter deps with index.blacklist
. ( #64 )
2018-08-30 09:46:03 -07:00
Fangrui Song
1ae97c64ed
detailed_name: "{\n}" -> "{}" ; completion
2018-08-29 23:40:40 -07:00
firstlove
74790e2421
fix clang_tu.h && clang_complete.cc ( #61 )
2018-08-29 20:52:44 -07:00
Fangrui Song
87c5491536
New diagnostics
2018-08-29 20:52:44 -07:00
Fangrui Song
f808dd8f8a
Use StoreInMemory Preamble for CodeComplete
2018-08-29 20:52:32 -07:00
Fangrui Song
bd3e06796e
SkipFunctionBodiesScope; improve fuzzy
2018-08-28 00:27:16 -07:00
Fangrui Song
caddc18860
Uniquify $ccls/inheritanceHierarchy and add flat to $ccls/memberHierarchy
2018-08-24 10:37:47 -07:00
Fangrui Song
ec2b893ee4
Fix VarDef::is_local; default cacheDirectory to ".ccls-cache"
2018-08-22 20:45:29 -07:00
Fangrui Song
f3490a3e6c
Add license notice
2018-08-20 22:27:52 -07:00
Amos Bird
66b027910a
correctly grabbing the ownership of index files. ( #54 )
2018-08-20 09:58:27 -07:00
Fangrui Song
431eef2167
textDocument/hover: prefer definitions in the same file
2018-08-19 13:11:47 -07:00
Fangrui Song
2f5fcadc39
Remove CompileCommandsEntry and reduce clangDriver invocations
2018-08-19 11:03:37 -07:00
Fangrui Song
8cbb317dc2
clang-format
...
DEF CON 26 CTF
2018-08-09 10:13:54 -07:00
Fangrui Song
b9e1c2ee07
Add flat to $ccls/inheritanceHierarchy
2018-08-08 00:25:46 -07:00
Fangrui Song
3931951406
Validate RecordDecl
2018-08-08 00:25:43 -07:00
Fangrui Song
924fedbb02
Uniquify textDocument/references
...
There can be duplicates with template instantiation.
2018-07-30 18:00:54 -07:00
Fangrui Song
0bb311ac56
Add textDocument/codeAction for clang FixIt
...
What do you think of the challenge ccls-fringe in Real World CTF?
2018-07-29 01:03:30 -07:00
Fangrui Song
c71047189f
Misc
2018-07-29 01:03:24 -07:00
Chao Shen
b95b47540d
Fix diagnostics on MacOS and duplicated bases.
2018-07-26 20:51:30 -07:00
Fangrui Song
122eda1c53
Improve comment and outline
2018-07-25 10:53:36 -07:00
Chao Shen
03aa024fe6
Misc.
2018-07-24 20:48:46 -07:00
Chao Shen
ff102c9b7e
Fix preload completion session.
2018-07-24 20:48:41 -07:00
Fangrui Song
8b4a8d2d48
Fix Twine; index TypedefNameDecl to specialization; anonymous RecordDecl fields
2018-07-23 00:26:05 -07:00
Fangrui Song
e67ea3af87
Use ContainerDC for extent, index callees, set StaticMethod
2018-07-21 00:54:34 -07:00
Fangrui Song
27d641bf64
Add Query*::file_id to allow textDocument/hover on declarations
...
Also change StorageClass storage to uint8_t
2018-07-20 23:48:19 -07:00
Fangrui Song
46d397f4b3
--init
2018-07-18 10:51:18 -07:00
Fangrui Song
0732d37817
Better bases/derived and initializer
2018-07-17 21:13:56 -07:00
Fangrui Song
af54645e5e
Fix spell for clang < 7
2018-07-16 09:49:37 -07:00
Fangrui Song
73ac788f9e
Remove libclang
2018-07-16 09:34:48 -07:00
Fangrui Song
344f00fbb2
CrashRecoveryContext
2018-07-15 23:06:27 -07:00