Use the YAML-format symbols (generated by the global-symbol-builder tool) to
do the global code completion.
It is experimental only , but it allows us to experience global code
completion on a relatively small project.
Tested with LLVM project.
Paths
| Differential D41668
[clangd] Add static index for the global code completion. ClosedPublic Authored by hokein on Jan 2 2018, 9:08 AM.
Details Summary Use the YAML-format symbols (generated by the global-symbol-builder tool) to Tested with LLVM project.
Diff Detail
Event Timeline
Comment Actions You have mentioned that YAML data source is experimental only in the patch summary, but we should also mention this in the code.
Comment Actions Thanks for the comments.
hokein marked an inline comment as done. Comment ActionsAdd index source information to the completion item.
This revision is now accepted and ready to land.Jan 5 2018, 5:59 AM
Comment Actions Ilya's suggestion to have a single index on the CodeCompleteOptions that encapsulates the merging seems reasonable to me, but not urgent.
hokein marked 3 inline comments as done. Comment Actions
them into the final results eventually. Comment Actions
Closed by commit rCTE322191: [clangd] Add static index for the global code completion. (authored by hokein). · Explain WhyJan 10 2018, 6:45 AM This revision was automatically updated to reflect the committed changes. hokein marked an inline comment as done.
Revision Contents
Diff 129245 clangd/ClangdLSPServer.h
clangd/ClangdLSPServer.cpp
clangd/ClangdServer.h
clangd/ClangdServer.cpp
clangd/CodeComplete.h
clangd/CodeComplete.cpp
clangd/index/MemIndex.h
clangd/index/MemIndex.cpp
clangd/tool/ClangdMain.cpp
unittests/clangd/CodeCompleteTests.cpp
|
We are calling this global index and static index in the patch. I think we should be consistent with the naming. Generally, I think this is static index, which might be global index or, say, a set of symbols for test purpose, so I am inclined to static index.