Commit Graph

517 Commits

Author SHA1 Message Date
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
e78e0400d9 Renamed CompletionSystem to IdentifierCompleter 2012-07-10 23:30:44 -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
39ceebbb1e Where possible, using native objects, not vim.eval 2012-07-10 20:50:03 -07:00
Strahinja Val Markovic
ab0b349207 Sending the contents of all the modified buffers
Initially, we were sending only the contents of the current buffer.
2012-07-10 20:27:46 -07:00
Strahinja Val Markovic
5de395d9bb Storing the completion start column in Vim script
This way we don't have to recalculate it every time we call CandidatesForQuery
2012-07-10 15:39:59 -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
0a553bf23c Building in c++11 mode where available 2012-07-08 17:55:14 -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
Strahinja Val Markovic
1d1d72b039 Tweaking gitignore some more 2012-07-05 20:57:15 -07:00
Strahinja Val Markovic
c809d396d1 Removing more unwanted files 2012-07-05 20:31:42 -07:00
Strahinja Val Markovic
3880bd0093 Ignoring some llvm files we don't care about 2012-07-05 20:20:29 -07:00
Strahinja Val Markovic
65ac7dcd7b We DO want clang to be tracked in our in-tree llvm
The llvm gitignore file removes all clang files from revision control. Not what
we want in our case.
2012-07-05 18:24:45 -07:00
Strahinja Val Markovic
6ea344fcbb Removing ds_store files 2012-07-05 18:23:12 -07:00
Strahinja Val Markovic
ac1f40b9af Renaming our gtest targets to gtest_ycm
llvm also has a copy of gtest in its source tree. This causes cmake to bork
since it sees several different targets with the same name (gtest and
gtest_main). So we have to rename our versions of gtest and gtest_main to
something else... We're just appending _ycm now.

This will cause pain when we want to update gtest in the future from upstream,
but I don't see a better way of handling this.
2012-07-05 17:59:32 -07:00
Strahinja Val Markovic
5f4da9324a Adding llvm/clang to our CMakeLists files
The indexer target now depends on libclang. This 
will force cmake to build the required parts of 
llvm and clang.
2012-07-05 17:58:49 -07:00
Strahinja Val Markovic
1f51a89d39 Adding more llvm/clang files
These were ignored by git accidentally. We want ALL OF THEM since they all came
in the llvm/clang source distribution.
2012-07-05 17:55:45 -07:00
Strahinja Val Markovic
8480549b46 Adding llvm and clang in-source 2012-07-05 17:51:06 -07:00
Strahinja Val Markovic
3f96232ce8 Removing second definition of COMPILER_IS_CLANG 2012-07-04 21:50:28 -07:00
Strahinja Val Markovic
570267bbe0 Fixing cmake conf so that we can use all warnings
This includes using a workaround for a CMake bug.
2012-07-04 21:24:16 -07:00
Strahinja Val Markovic
a9eb277da1 Fixing brace style usage 2012-07-04 16:15:41 -07:00
Strahinja Val Markovic
4eb160ac58 Whitespace fix 2012-07-02 11:10:28 -07:00
Strahinja Val Markovic
ee2bfe8952 Fix for query capital chars in wb ratio condition 2012-06-24 18:13:35 -07:00
Strahinja Val Markovic
d18b89bceb Fixed another bug in the word boundary condition
The problem was that should have been using a longest common subsequence
algorithm for the "number of word boundary character matches" calculation. Our
old approach would fail for the following case:

Query: "caafoo"

Candidate1 : "acaaCaaFooGxx"
Candidate2 : "aCaafoog"

Candidate1 needs to win. This is now also a test case.
2012-06-24 17:58:20 -07:00
Strahinja Val Markovic
9b875ca7f3 New sorting rule: char match index sum
The point is that we want to prefer candidates that have the query characters
"earlier" in their text, e.g. "xxabcxxx" over "xxxxxabc" for "abc" query.
2012-06-24 15:35:00 -07:00
Strahinja Val Markovic
adb31abef2 Fixing a bug with word-boundary ratio calculation 2012-06-24 15:11:58 -07:00
Strahinja Val Markovic
a8f095ec0a Completion now off for comments and strings 2012-06-24 12:04:45 -07:00
Strahinja Val Markovic
02a1f8780c Small refactoring of the ShouldAddIdentifier func 2012-05-12 20:42:45 -07:00
Strahinja Val Markovic
6696d79518 CursorHold is now tied to OnCursorHold func 2012-05-12 15:26:04 -07:00
Strahinja Val Markovic
8ed1c599e2 Buffer identifiers are now added on BufEnter 2012-05-12 15:23:45 -07:00
Strahinja Val Markovic
5d6e839118 Newly inserted identifiers are added immediately 2012-05-12 15:20:03 -07:00
Strahinja Val Markovic
a8e9b61f3f Going back to 2-4 threads 2012-05-11 10:09:52 -07:00
Strahinja Val Markovic
6e1c7f8429 Optimized the use of threads somewhat 2012-05-10 22:35:08 -07:00
Strahinja Val Markovic
ba76e3f6e6 List instead of vector for storing candidates
This should be faster because appending to a list is O(1), and only amort. O(1)
when appending to a vector.
2012-05-10 21:56:19 -07:00
Strahinja Val Markovic
69c8afb251 Fixing compilation problems on Linux 2012-05-10 10:40:12 -07:00
Strahinja Val Markovic
2b1907e7e5 Updating gitignore to ignore the test exe 2012-05-10 10:39:50 -07:00
Strahinja Val Markovic
680a7ce979 Adding the SYSTEM flag for boost and python headers 2012-05-10 09:57:07 -07:00
Strahinja Val Markovic
4c4b806f9d Adding .gitignore 2012-05-10 09:47:46 -07:00
Strahinja Val Markovic
787b570218 More missing files 2012-05-09 21:59:20 -07:00
Strahinja Val Markovic
41367cf3a7 Adding missing files; gitignore was a bit too trigger-happy 2012-05-09 21:54:25 -07:00
Strahinja Val Markovic
0c0ecc24c4 Using custom collection of Boost libs 2012-05-09 21:45:30 -07:00
Strahinja Val Markovic
d421c43f65 Adding const in a few more places 2012-05-07 22:27:08 -07:00