diff options
author | Ilya Biryukov <ibiryukov@google.com> | 2018-11-26 15:38:01 +0000 |
---|---|---|
committer | Ilya Biryukov <ibiryukov@google.com> | 2018-11-26 15:38:01 +0000 |
commit | 647da3e8a5ada3d51b9ca09052c1876f08f4eb0a (patch) | |
tree | 66f3d37112cff6545e519680dc9ad20a0904814d /clang-tools-extra/clangd/Quality.cpp | |
parent | f94c8f0d1b96510b851009adf7f741b7313f4c8f (diff) | |
download | bcm5719-llvm-647da3e8a5ada3d51b9ca09052c1876f08f4eb0a.tar.gz bcm5719-llvm-647da3e8a5ada3d51b9ca09052c1876f08f4eb0a.zip |
[clangd] Add type boosting in code completion
Reviewers: sammccall, ioeric
Reviewed By: sammccall
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Differential Revision: https://reviews.llvm.org/D52276
llvm-svn: 347562
Diffstat (limited to 'clang-tools-extra/clangd/Quality.cpp')
-rw-r--r-- | clang-tools-extra/clangd/Quality.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/Quality.cpp b/clang-tools-extra/clangd/Quality.cpp index 640f543275d..cb1f64adabc 100644 --- a/clang-tools-extra/clangd/Quality.cpp +++ b/clang-tools-extra/clangd/Quality.cpp @@ -369,6 +369,9 @@ float SymbolRelevanceSignals::evaluate() const { } } + if (TypeMatchesPreferred) + Score *= 5.0; + // Penalize non-instance members when they are accessed via a class instance. if (!IsInstanceMember && (Context == CodeCompletionContext::CCC_DotMemberAccess || @@ -412,6 +415,10 @@ raw_ostream &operator<<(raw_ostream &OS, const SymbolRelevanceSignals &S) { OS << formatv("\tIndex scope boost: {0}\n", scopeBoost(*S.ScopeProximityMatch, S.SymbolScope)); + OS << formatv( + "\tType matched preferred: {0} (Context type: {1}, Symbol type: {2}\n", + S.TypeMatchesPreferred, S.HadContextType, S.HadSymbolType); + return OS; } |