Strahinja Val Markovic
5646eeab5e
More null checks for data coming from clang
2012-08-04 19:29:11 -07:00
Strahinja Val Markovic
3c65c84c7b
Renaming 'indexer' to the more accurate 'ycm_core'
2012-08-04 18:59:22 -07:00
Strahinja Val Markovic
f3ddfd5458
Build option to use system libclang
2012-08-04 18:49:21 -07:00
Strahinja Val Markovic
1fd2515617
clang options file uses more succint dict syntax
2012-08-03 10:26:11 -07:00
Strahinja Val Markovic
f120c0ce1c
Showing function args right next to name now
...
The completion text in the menu is different. We used to just show the func name
in the "main" part of the completion menu, now we show the full signature
without the return type (which is shown on the right)
2012-08-02 21:37:21 -07:00
Strahinja Val Markovic
4765fd88fe
Removing some unused code + fix for crash
...
The crash was caused by clang_disposeString/getCString not checking whether the
given CXString has NULL data members. Fixed with a workaround.
2012-08-01 22:09:31 -07:00
Strahinja Val Markovic
3868f94ac7
Adding a .ycm_clang_options.py file for YCM
2012-08-01 20:50:35 -07:00
Strahinja Val Markovic
618a6acd59
Protecting ALL clang access with a mutex now
2012-08-01 20:09:01 -07:00
Strahinja Val Markovic
eab70838f0
New system for specifying clang flags
...
Now the .ycm_clang_options file is a python script that needs to implement our
API. This enables the user to do arbitrary things when computing flags.
2012-08-01 19:34:20 -07:00
Strahinja Val Markovic
11a52d018c
Protecting diagnostic access with mutex
2012-08-01 17:18:35 -07:00
Strahinja Val Markovic
11e42b49f0
Smarter updating of clang diagnostics display
2012-07-30 19:42:41 -07:00
Strahinja Val Markovic
71e3e86252
Adding option for custom extra rpath
2012-07-30 14:20:05 -07:00
Strahinja Val Markovic
333b71f8d5
Triggering syntastic error display more often
2012-07-29 22:13:42 -07:00
Strahinja Val Markovic
57bd4f7a47
Now possible to use external libclang.so
2012-07-29 20:58:04 -07:00
Strahinja Val Markovic
958a008462
Adding diagnostic extraction support
...
Next step is to add support to Syntastic so that it uses this new functionality
2012-07-28 15:27:30 -07:00
Strahinja Val Markovic
2667a82441
Now using the correct flag to warn on C++11 use
2012-07-28 11:19:26 -07:00
Strahinja Val Markovic
e46ea47df2
Replacing accidental use of C++11 auto
2012-07-27 13:52:56 -07:00
Strahinja Val Markovic
0d9d697b50
Only showing the first overloaded func signature
2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
e9cf3c14b2
Not adding a '(' after a function name insert
2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
3cc4cf8e10
Async clang parsing of the current file
2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
cd9f40b7c0
Add missing check for threads enabled
2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
13f87c5a62
Buffer identifiers are now extracted async
2012-07-24 20:09:09 -07:00
Strahinja Val Markovic
b120d6a5ba
Now extracting identifiers in C++ code
2012-07-23 20:17:59 -07:00
Strahinja Val Markovic
cdb8dfc86b
Loading .ycm_clang_options files now
...
These files can contain flags that are passed to clang.
2012-07-22 15:19:28 -07:00
Strahinja Val Markovic
7bf18c7c5c
Improving IdentifierCompleter performance
...
We limit the number of candidates returned to Vim to 20 and also make sure that
we are not returning any duplicate candidates. This provides a noticeable
improvement in latency.
2012-07-21 12:06:18 -07:00
Strahinja Val Markovic
964c42068e
Splitting the UnsavedFile struct into its own file
2012-07-21 09:09:29 -07:00
Strahinja Val Markovic
44b671c2c0
ClangCompleter now returs extra data
...
This data is used to show more information about the completions in the
completion menu.
2012-07-19 21:17:39 -07:00
Strahinja Val Markovic
e56080ea56
Using libc++ with clang from now on
...
This also applies a patch to gtest that resolves an issue with building gtest
with libc++. The patch was taken from here:
https://groups.google.com/d/topic/googletestframework/F1B9LArL9_U/discussion
2012-07-19 21:15:25 -07:00
Strahinja Val Markovic
f76ee24316
Now only showing available completion strings
2012-07-16 20:51:21 -07:00
Strahinja Val Markovic
bcb65ec43f
Refactored the task building code for simplicity
2012-07-16 20:23:17 -07:00
Strahinja Val Markovic
c9e1706fa1
ClangCompleter now async and caches Clang data
...
First off, we don't block the GUI thread anymore for ClangCompleter (that was
always temporary). Secondly, now ClangCompleter will cache the data coming from
clang so that query-based filtering of members is fast.
2012-07-15 20:49:56 -07:00
Strahinja Val Markovic
a04c3322cc
No results for empty query (IdentifierCompleter)
2012-07-15 19:44:35 -07:00
Strahinja Val Markovic
52d8a1236b
If query empty, Results sorted lexicographically
...
This change was also the root cause of the crash bug I spent two days tracking
down. The problem was that the new bool member was not added to the custom copy
ctor... since we don't really need a custom copy ctor for Result, we're going
with the compiler-provided one.
2012-07-15 19:40:24 -07:00
Strahinja Val Markovic
20f0d2a280
Removing some unused aliases
2012-07-12 20:55:00 -07:00
Strahinja Val Markovic
ce23b5ca55
Moving the LatestTask typedef to Future.h
2012-07-12 20:54:40 -07:00
Strahinja Val Markovic
81811964c3
Improving UnsavedFile operator==
2012-07-12 20:54:08 -07:00
Strahinja Val Markovic
27e1400558
ClangComplete now sorts completions based on query
2012-07-11 22:41:32 -07:00
Strahinja Val Markovic
52b1b9f660
More forward decls instead of includes
2012-07-11 22:14:28 -07:00
Strahinja Val Markovic
dad2fc31bb
Replacing a header file with a forward decl
2012-07-11 22:10:37 -07:00
Strahinja Val Markovic
be0085aca9
CandidateRepository is used for Candidate storage
...
This will make it easy to use the same Candidates for both the
IdentifierCompleter and the ClangCompleter, thereby reducing memory consumption
and increasing performance.
2012-07-11 22:08:04 -07:00
Strahinja Val Markovic
f25c3d90f7
Removing unused file
2012-07-11 21:41:39 -07:00
Strahinja Val Markovic
39ecf76798
Renamed ClangComplete to ClangCompleter
2012-07-10 23:28:58 -07:00
Strahinja Val Markovic
545792c055
Renaming Completer to IdentifierCompleter
2012-07-10 23:13:12 -07:00
Strahinja Val Markovic
94288108d8
Initial, rough kinda working version ClangComplete
...
Many things need to be ironed out still.
2012-07-10 15:26:07 -07:00
Strahinja Val Markovic
1df2a5d360
Using cmake_cxx_flags instead of add_definitions
2012-07-09 13:58:56 -07:00
Strahinja Val Markovic
30c9637992
Using the vector indexing suite from Boost.Python
...
This removes the need for a special overload for AddCandidatesToDatabase. Also,
the GetFuture function now provides a more sensible API with the list being
returned instead of accepted as an out parameter.
2012-07-08 15:34:44 -07:00
Strahinja Val Markovic
9a82319c77
Initial version of the ClangComplete class
2012-07-08 11:54:57 -07:00
Strahinja Val Markovic
fb5d25fc81
The cpp file's header should be included first
2012-07-06 14:06:21 -07:00
Strahinja Val Markovic
174687c4bc
Renaming ConcurrentStack to ConcurrentLatestValue
2012-07-06 12:14:25 -07:00
Strahinja Val Markovic
8da18e0319
Removing more llvm cruft files
2012-07-05 20:58:10 -07:00