summaryrefslogtreecommitdiffstats
path: root/yql/essentials/sql/v1/complete/sql_complete.cpp
diff options
context:
space:
mode:
authorvitya-smirnov <[email protected]>2025-07-03 14:40:24 +0300
committervitya-smirnov <[email protected]>2025-07-03 15:02:48 +0300
commitfdc3ed2f3a53f64b189d53b2cb81513916a78dc3 (patch)
treee9749f48aeb08f70fbbd2802c955b9d8a8c100b6 /yql/essentials/sql/v1/complete/sql_complete.cpp
parenta4b1cf6267fe6389feafed4bad620bd7a827b23a (diff)
YQL-19747: Support LSP FilterText
LSP protocol has a property ``` /** * A string that should be used when filtering a set of * completion items. When omitted the label is used as the * filter text for this item. */ filterText?: string; ``` It is useful, e.g. when we prepend some punctuation at a candidate content, but still want to filter by prefix, ignoring that punctuation. Related to https://nda.ya.ru/t/KCkzjhXS7G3Epg. commit_hash:01f258218d312eef764350bd4d78da15acb8c9ea
Diffstat (limited to 'yql/essentials/sql/v1/complete/sql_complete.cpp')
-rw-r--r--yql/essentials/sql/v1/complete/sql_complete.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/yql/essentials/sql/v1/complete/sql_complete.cpp b/yql/essentials/sql/v1/complete/sql_complete.cpp
index 282ceca41b1..fa84e749a8c 100644
--- a/yql/essentials/sql/v1/complete/sql_complete.cpp
+++ b/yql/essentials/sql/v1/complete/sql_complete.cpp
@@ -20,6 +20,14 @@
namespace NSQLComplete {
+ TString TCandidate::FilterText() const {
+ TStringBuf text = Content;
+ if (IsQuoted(text)) {
+ text = Unquoted(text);
+ }
+ return ToLowerUTF8(text);
+ }
+
class TSqlCompletionEngine: public ISqlCompletionEngine {
public:
TSqlCompletionEngine(