diff options
author | vityaman <vityaman.dev@yandex.ru> | 2025-06-06 11:09:02 +0300 |
---|---|---|
committer | robot-piglet <robot-piglet@yandex-team.com> | 2025-06-06 11:32:08 +0300 |
commit | 1df1c560c27a041991c7fc59bcdf232eb57ad11f (patch) | |
tree | cec61c97b18b46a460d157325e568187e5133f20 | |
parent | 082adff1a90a22e29aa0a831de5255fcef65da0e (diff) | |
download | ydb-1df1c560c27a041991c7fc59bcdf232eb57ad11f.tar.gz |
YQL-19747: Fix some TODOs and Clang Tidy checks
Clang Tidy is cool, but too slow ;(. Btw, should we respect `misc-include-cleaner` check?
```bash
ya dump compile-commands > /tmp/cc/compile_commands.json
find . -type f \( -name "*.cpp" -o -name "*.h" \) -exec clang-tidy {} -p /tmp/cc {} -checks="misc-*" \;
```
---
- Related to `YQL-19747`
- Related to https://github.com/ydb-platform/ydb/issues/9056
---
Pull Request resolved: https://github.com/ytsaurus/ytsaurus/pull/1305
commit_hash:c2ecf638062dcdd0730fed3381da4a230f5352c3
24 files changed, 49 insertions, 48 deletions
diff --git a/yql/essentials/sql/v1/complete/antlr4/c3i.h b/yql/essentials/sql/v1/complete/antlr4/c3i.h index 89201e12562..52920882ee0 100644 --- a/yql/essentials/sql/v1/complete/antlr4/c3i.h +++ b/yql/essentials/sql/v1/complete/antlr4/c3i.h @@ -39,8 +39,8 @@ namespace NSQLComplete { std::unordered_set<TRuleId> IgnoredRules; }; - virtual TC3Candidates Complete(TStringBuf text, size_t caretTokenIndex) = 0; virtual ~IC3Engine() = default; + virtual TC3Candidates Complete(TStringBuf text, size_t caretTokenIndex) = 0; }; } // namespace NSQLComplete diff --git a/yql/essentials/sql/v1/complete/name/cluster/discovery.h b/yql/essentials/sql/v1/complete/name/cluster/discovery.h index 6b496f15546..90592793ea7 100644 --- a/yql/essentials/sql/v1/complete/name/cluster/discovery.h +++ b/yql/essentials/sql/v1/complete/name/cluster/discovery.h @@ -12,7 +12,7 @@ namespace NSQLComplete { public: using TPtr = TIntrusivePtr<IClusterDiscovery>; - virtual ~IClusterDiscovery() = default; + ~IClusterDiscovery() override = default; virtual NThreading::TFuture<TClusterList> Query() const = 0; }; diff --git a/yql/essentials/sql/v1/complete/name/object/schema.cpp b/yql/essentials/sql/v1/complete/name/object/schema.cpp index ba9e09b2ee7..ef64e0d371d 100644 --- a/yql/essentials/sql/v1/complete/name/object/schema.cpp +++ b/yql/essentials/sql/v1/complete/name/object/schema.cpp @@ -1,6 +1,6 @@ #include "schema.h" template <> -void Out<NSQLComplete::TFolderEntry>(IOutputStream& out, const NSQLComplete::TFolderEntry& entry) { - out << "{" << entry.Type << ", " << entry.Name << "}"; +void Out<NSQLComplete::TFolderEntry>(IOutputStream& out, const NSQLComplete::TFolderEntry& value) { + out << "{" << value.Type << ", " << value.Name << "}"; } diff --git a/yql/essentials/sql/v1/complete/name/object/schema.h b/yql/essentials/sql/v1/complete/name/object/schema.h index 687f92d7e8a..b9aa720d36f 100644 --- a/yql/essentials/sql/v1/complete/name/object/schema.h +++ b/yql/essentials/sql/v1/complete/name/object/schema.h @@ -45,7 +45,7 @@ namespace NSQLComplete { public: using TPtr = TIntrusivePtr<ISchema>; - virtual ~ISchema() = default; + ~ISchema() override = default; virtual NThreading::TFuture<TListResponse> List(const TListRequest& request) const = 0; }; diff --git a/yql/essentials/sql/v1/complete/name/object/simple/schema.cpp b/yql/essentials/sql/v1/complete/name/object/simple/schema.cpp index dbf3a8eef45..a9dd20ada99 100644 --- a/yql/essentials/sql/v1/complete/name/object/simple/schema.cpp +++ b/yql/essentials/sql/v1/complete/name/object/simple/schema.cpp @@ -19,7 +19,7 @@ namespace NSQLComplete { } static auto FilterByTypes(TMaybe<THashSet<TString>> types) { - return [types = std::move(types)](auto f) { + return [types = std::move(types)](auto f) mutable { TVector<TFolderEntry> entries = f.ExtractValue(); EraseIf(entries, [types = std::move(types)](const TFolderEntry& entry) { return types && !types->contains(entry.Type); @@ -56,7 +56,7 @@ namespace NSQLComplete { auto [path, name] = Simple_->Split(request.Path); return Simple_->List(request.Cluster, TString(path)) .Apply(FilterByName(TString(name))) - .Apply(FilterByTypes(std::move(request.Filter.Types))) + .Apply(FilterByTypes(request.Filter.Types)) .Apply(Crop(request.Limit)) .Apply(ToResponse(name)); } @@ -69,12 +69,12 @@ namespace NSQLComplete { NThreading::TFuture<TVector<TFolderEntry>> ISimpleSchema::List(TString folder) const { - return List(/* cluster = */ "", folder); + return List(/* cluster = */ "", std::move(folder)); } NThreading::TFuture<TVector<TFolderEntry>> ISimpleSchema::List(TString /* cluster */, TString folder) const { - return List(folder); + return List(std::move(folder)); } ISchema::TPtr MakeSimpleSchema(ISimpleSchema::TPtr simple) { diff --git a/yql/essentials/sql/v1/complete/name/object/simple/schema.h b/yql/essentials/sql/v1/complete/name/object/simple/schema.h index 2bc7ebb9d97..e3b5cb4cb1b 100644 --- a/yql/essentials/sql/v1/complete/name/object/simple/schema.h +++ b/yql/essentials/sql/v1/complete/name/object/simple/schema.h @@ -13,7 +13,7 @@ namespace NSQLComplete { public: using TPtr = TIntrusivePtr<ISimpleSchema>; - virtual ~ISimpleSchema() = default; + ~ISimpleSchema() override = default; virtual TSplittedPath Split(TStringBuf path) const = 0; diff --git a/yql/essentials/sql/v1/complete/name/service/name_service.cpp b/yql/essentials/sql/v1/complete/name/service/name_service.cpp index 92d8b50e98f..529adce4dc1 100644 --- a/yql/essentials/sql/v1/complete/name/service/name_service.cpp +++ b/yql/essentials/sql/v1/complete/name/service/name_service.cpp @@ -8,7 +8,7 @@ namespace NSQLComplete { namespace { - void SetPrefix(TString& name, const TStringBuf delimeter, const TNamespaced& namespaced) { + void SetPrefix(TString& name, TStringBuf delimeter, const TNamespaced& namespaced) { if (namespaced.Namespace.empty()) { return; } @@ -17,7 +17,7 @@ namespace NSQLComplete { name.prepend(namespaced.Namespace); } - void FixPrefix(TString& name, const TStringBuf delimeter, const TNamespaced& namespaced) { + void FixPrefix(TString& name, TStringBuf delimeter, const TNamespaced& namespaced) { if (namespaced.Namespace.empty()) { return; } diff --git a/yql/essentials/sql/v1/complete/name/service/name_service.h b/yql/essentials/sql/v1/complete/name/service/name_service.h index bff94f9504c..2095cb35335 100644 --- a/yql/essentials/sql/v1/complete/name/service/name_service.h +++ b/yql/essentials/sql/v1/complete/name/service/name_service.h @@ -125,8 +125,8 @@ namespace NSQLComplete { public: using TPtr = TIntrusivePtr<INameService>; + ~INameService() override = default; virtual NThreading::TFuture<TNameResponse> Lookup(TNameRequest request) const = 0; - virtual ~INameService() = default; }; TString NormalizeName(TStringBuf name); diff --git a/yql/essentials/sql/v1/complete/name/service/ranking/frequency.cpp b/yql/essentials/sql/v1/complete/name/service/ranking/frequency.cpp index 5b4d6088bf5..9c5f0cadefe 100644 --- a/yql/essentials/sql/v1/complete/name/service/ranking/frequency.cpp +++ b/yql/essentials/sql/v1/complete/name/service/ranking/frequency.cpp @@ -50,7 +50,7 @@ namespace NSQLComplete { return items; } - static TVector<TFrequencyItem> ParseListFromJsonText(const TStringBuf text) { + static TVector<TFrequencyItem> ParseListFromJsonText(TStringBuf text) { NJson::TJsonValue json = NJson::ReadJsonFastTree(text); return ParseListFromJsonArray(json.GetArraySafe()); } @@ -104,7 +104,7 @@ namespace NSQLComplete { }); } - TFrequencyData ParseJsonFrequencyData(const TStringBuf text) { + TFrequencyData ParseJsonFrequencyData(TStringBuf text) { return Collect(TFrequencyItem::ParseListFromJsonText(text)); } diff --git a/yql/essentials/sql/v1/complete/name/service/ranking/frequency.h b/yql/essentials/sql/v1/complete/name/service/ranking/frequency.h index 1e729bac1d3..92a5ca6b810 100644 --- a/yql/essentials/sql/v1/complete/name/service/ranking/frequency.h +++ b/yql/essentials/sql/v1/complete/name/service/ranking/frequency.h @@ -15,7 +15,7 @@ namespace NSQLComplete { TFrequencyData Pruned(const TFrequencyData& data); - TFrequencyData ParseJsonFrequencyData(const TStringBuf text); + TFrequencyData ParseJsonFrequencyData(TStringBuf text); TFrequencyData LoadFrequencyData(); diff --git a/yql/essentials/sql/v1/complete/name/service/ranking/ranking.cpp b/yql/essentials/sql/v1/complete/name/service/ranking/ranking.cpp index 6b8aa42bc5e..9f30ead37d5 100644 --- a/yql/essentials/sql/v1/complete/name/service/ranking/ranking.cpp +++ b/yql/essentials/sql/v1/complete/name/service/ranking/ranking.cpp @@ -15,7 +15,7 @@ namespace NSQLComplete { public: explicit TRanking(TFrequencyData frequency) - : Frequency_(frequency) + : Frequency_(std::move(frequency)) { } @@ -108,7 +108,7 @@ namespace NSQLComplete { return std::numeric_limits<size_t>::max() - weight; } - const TStringBuf ContentView(const TGenericName& name Y_LIFETIME_BOUND) const { + TStringBuf ContentView(const TGenericName& name Y_LIFETIME_BOUND) const { return std::visit([](const auto& name) -> TStringBuf { using T = std::decay_t<decltype(name)>; if constexpr (std::is_base_of_v<TKeyword, T>) { diff --git a/yql/essentials/sql/v1/complete/name/service/ranking/ranking.h b/yql/essentials/sql/v1/complete/name/service/ranking/ranking.h index ac6329bbaf9..5fadad65f8b 100644 --- a/yql/essentials/sql/v1/complete/name/service/ranking/ranking.h +++ b/yql/essentials/sql/v1/complete/name/service/ranking/ranking.h @@ -11,11 +11,11 @@ namespace NSQLComplete { public: using TPtr = TIntrusivePtr<IRanking>; + ~IRanking() override = default; virtual void CropToSortedPrefix( TVector<TGenericName>& names, const TNameConstraints& constraints, size_t limit) const = 0; - virtual ~IRanking() = default; }; // TODO(YQL-19747): Migrate YDB CLI to MakeDefaultRanking(...) diff --git a/yql/essentials/sql/v1/complete/name/service/static/name_service.cpp b/yql/essentials/sql/v1/complete/name/service/static/name_service.cpp index fd6aad714ee..b294953720f 100644 --- a/yql/essentials/sql/v1/complete/name/service/static/name_service.cpp +++ b/yql/essentials/sql/v1/complete/name/service/static/name_service.cpp @@ -86,7 +86,7 @@ namespace NSQLComplete { class TPragmaNameService: public IRankingNameService { public: - explicit TPragmaNameService(IRanking::TPtr ranking, TVector<TString> pragmas) + TPragmaNameService(IRanking::TPtr ranking, TVector<TString> pragmas) : IRankingNameService(std::move(ranking)) , Pragmas_(BuildNameIndex(std::move(pragmas), NormalizeName)) { @@ -110,7 +110,7 @@ namespace NSQLComplete { class TTypeNameService: public IRankingNameService { public: - explicit TTypeNameService(IRanking::TPtr ranking, TVector<TString> types) + TTypeNameService(IRanking::TPtr ranking, TVector<TString> types) : IRankingNameService(std::move(ranking)) , Types_(BuildNameIndex(std::move(types), NormalizeName)) { @@ -134,7 +134,7 @@ namespace NSQLComplete { class TFunctionNameService: public IRankingNameService { public: - explicit TFunctionNameService(IRanking::TPtr ranking, TVector<TString> functions) + TFunctionNameService(IRanking::TPtr ranking, TVector<TString> functions) : IRankingNameService(std::move(ranking)) , Functions_(BuildNameIndex(std::move(functions), NormalizeName)) { @@ -158,7 +158,7 @@ namespace NSQLComplete { class THintNameService: public IRankingNameService { public: - explicit THintNameService( + THintNameService( IRanking::TPtr ranking, THashMap<EStatementKind, TVector<TString>> hints) : IRankingNameService(std::move(ranking)) diff --git a/yql/essentials/sql/v1/complete/name/service/static/name_set.h b/yql/essentials/sql/v1/complete/name/service/static/name_set.h index fd5d01b69d4..2e723e65a72 100644 --- a/yql/essentials/sql/v1/complete/name/service/static/name_set.h +++ b/yql/essentials/sql/v1/complete/name/service/static/name_set.h @@ -16,7 +16,7 @@ namespace NSQLComplete { THashMap<EStatementKind, TVector<TString>> Hints; }; - // TODO(YQL-19747): Migrate YDB CLI to TNameSet + // TODO(YQL-19747): Mirate YDB CLI to TNameSet using NameSet = TNameSet; TNameSet Pruned(TNameSet names, const TFrequencyData& frequency); diff --git a/yql/essentials/sql/v1/complete/name/service/static/name_set_json.cpp b/yql/essentials/sql/v1/complete/name/service/static/name_set_json.cpp index ba80d5d4c36..72e8b1da6c0 100644 --- a/yql/essentials/sql/v1/complete/name/service/static/name_set_json.cpp +++ b/yql/essentials/sql/v1/complete/name/service/static/name_set_json.cpp @@ -10,7 +10,7 @@ namespace NSQLComplete { - NJson::TJsonValue LoadJsonResource(const TStringBuf filename) { + NJson::TJsonValue LoadJsonResource(TStringBuf filename) { TString text; Y_ENSURE(NResource::FindExact(filename, &text)); return NJson::ReadJsonFastTree(text); diff --git a/yql/essentials/sql/v1/complete/name/service/static/name_set_json.h b/yql/essentials/sql/v1/complete/name/service/static/name_set_json.h index 03d5083c432..06180b1167f 100644 --- a/yql/essentials/sql/v1/complete/name/service/static/name_set_json.h +++ b/yql/essentials/sql/v1/complete/name/service/static/name_set_json.h @@ -10,7 +10,7 @@ namespace NSQLComplete { - NJson::TJsonValue LoadJsonResource(const TStringBuf filename); + NJson::TJsonValue LoadJsonResource(TStringBuf filename); template <class T, class U> T Merge(T lhs, U rhs) { diff --git a/yql/essentials/sql/v1/complete/sql_complete.cpp b/yql/essentials/sql/v1/complete/sql_complete.cpp index 3fe82f63fea..c9ab8d7eade 100644 --- a/yql/essentials/sql/v1/complete/sql_complete.cpp +++ b/yql/essentials/sql/v1/complete/sql_complete.cpp @@ -17,7 +17,7 @@ namespace NSQLComplete { class TSqlCompletionEngine: public ISqlCompletionEngine { public: - explicit TSqlCompletionEngine( + TSqlCompletionEngine( TLexerSupplier lexer, INameService::TPtr names, ISqlCompletionEngine::TConfiguration configuration) @@ -28,11 +28,12 @@ namespace NSQLComplete { { } - TCompletion Complete(TCompletionInput input) override { - return CompleteAsync(std::move(input), {}).ExtractValueSync(); + TCompletion + Complete(TCompletionInput input, TEnvironment env = {}) override { + return CompleteAsync(input, env).ExtractValueSync(); } - virtual NThreading::TFuture<TCompletion> CompleteAsync(TCompletionInput input, TEnvironment env) override { + NThreading::TFuture<TCompletion> CompleteAsync(TCompletionInput input, TEnvironment env) override { if ( input.CursorPosition < input.Text.length() && IsUTF8ContinuationByte(input.Text.at(input.CursorPosition)) || @@ -285,8 +286,8 @@ namespace NSQLComplete { } // namespace NSQLComplete template <> -void Out<NSQLComplete::ECandidateKind>(IOutputStream& out, NSQLComplete::ECandidateKind kind) { - switch (kind) { +void Out<NSQLComplete::ECandidateKind>(IOutputStream& out, NSQLComplete::ECandidateKind value) { + switch (value) { case NSQLComplete::ECandidateKind::Keyword: out << "Keyword"; break; @@ -321,6 +322,6 @@ void Out<NSQLComplete::ECandidateKind>(IOutputStream& out, NSQLComplete::ECandid } template <> -void Out<NSQLComplete::TCandidate>(IOutputStream& out, const NSQLComplete::TCandidate& candidate) { - out << "{" << candidate.Kind << ", \"" << candidate.Content << "\"}"; +void Out<NSQLComplete::TCandidate>(IOutputStream& out, const NSQLComplete::TCandidate& value) { + out << "{" << value.Kind << ", \"" << value.Content << "\"}"; } diff --git a/yql/essentials/sql/v1/complete/sql_complete.h b/yql/essentials/sql/v1/complete/sql_complete.h index 6174f913254..df5159aff3c 100644 --- a/yql/essentials/sql/v1/complete/sql_complete.h +++ b/yql/essentials/sql/v1/complete/sql_complete.h @@ -54,8 +54,9 @@ namespace NSQLComplete { }; virtual ~ISqlCompletionEngine() = default; - virtual TCompletion Complete(TCompletionInput input) = 0; // TODO(YQL-19747): migrate YDB CLI to CompleteAsync - virtual NThreading::TFuture<TCompletion> + virtual TCompletion + Complete(TCompletionInput input, TEnvironment env = {}) = 0; + virtual NThreading::TFuture<TCompletion> // TODO(YQL-19747): Migrate YDB CLI to `Complete` method CompleteAsync(TCompletionInput input, TEnvironment env = {}) = 0; }; diff --git a/yql/essentials/sql/v1/complete/sql_complete_ut.cpp b/yql/essentials/sql/v1/complete/sql_complete_ut.cpp index ebc6500b901..0d80ff816e2 100644 --- a/yql/essentials/sql/v1/complete/sql_complete_ut.cpp +++ b/yql/essentials/sql/v1/complete/sql_complete_ut.cpp @@ -125,7 +125,7 @@ Y_UNIT_TEST_SUITE(SqlCompleteTests) { } TVector<TCandidate> CompleteTop(size_t limit, ISqlCompletionEngine::TPtr& engine, TString sharped) { - auto candidates = Complete(engine, sharped); + auto candidates = Complete(engine, std::move(sharped)); candidates.crop(limit); return candidates; } diff --git a/yql/essentials/sql/v1/complete/syntax/format.cpp b/yql/essentials/sql/v1/complete/syntax/format.cpp index 19c7c9d2148..855c152bed4 100644 --- a/yql/essentials/sql/v1/complete/syntax/format.cpp +++ b/yql/essentials/sql/v1/complete/syntax/format.cpp @@ -11,7 +11,7 @@ namespace NSQLComplete { namespace { - static const THashSet<std::string> Keywords = [] { + const THashSet<std::string> Keywords = [] { const auto& grammar = GetSqlGrammar(); const auto& vocabulary = grammar.GetVocabulary(); @@ -22,7 +22,7 @@ namespace NSQLComplete { return keywords; }(); - static const THashSet<TString> TypeConstructors = { + const THashSet<TString> TypeConstructors = { "DECIMAL", "OPTIONAL", "TUPLE", diff --git a/yql/essentials/sql/v1/complete/syntax/grammar.h b/yql/essentials/sql/v1/complete/syntax/grammar.h index 4a259493dbc..29b81a78984 100644 --- a/yql/essentials/sql/v1/complete/syntax/grammar.h +++ b/yql/essentials/sql/v1/complete/syntax/grammar.h @@ -13,13 +13,13 @@ #endif #include <yql/essentials/parser/antlr_ast/gen/v1_antlr4/SQLv1Antlr4Parser.h> -#define RULE_(mode, name) NALA##mode##Antlr4::SQLv1Antlr4Parser::Rule##name -#define RULE(name) RULE_(Default, name) +#define RULE(name) NALADefaultAntlr4::SQLv1Antlr4Parser::Rule##name namespace NSQLComplete { class ISqlGrammar { public: + virtual ~ISqlGrammar() = default; virtual const antlr4::dfa::Vocabulary& GetVocabulary() const = 0; virtual const std::string& SymbolizedRule(TRuleId rule) const = 0; virtual TRuleId GetRuleId(std::string_view symbolized) const = 0; @@ -27,7 +27,6 @@ namespace NSQLComplete { virtual const std::unordered_set<TTokenId>& GetAllTokens() const = 0; virtual const std::unordered_set<TTokenId>& GetKeywordTokens() const = 0; virtual const std::unordered_set<TTokenId>& GetPunctuationTokens() const = 0; - virtual ~ISqlGrammar() = default; }; const ISqlGrammar& GetSqlGrammar(); diff --git a/yql/essentials/sql/v1/complete/syntax/local.cpp b/yql/essentials/sql/v1/complete/syntax/local.cpp index 8e956dc66db..151fa645bf7 100644 --- a/yql/essentials/sql/v1/complete/syntax/local.cpp +++ b/yql/essentials/sql/v1/complete/syntax/local.cpp @@ -49,7 +49,7 @@ namespace NSQLComplete { TDefaultYQLGrammar>; public: - explicit TSpecializedLocalSyntaxAnalysis( + TSpecializedLocalSyntaxAnalysis( TLexerSupplier lexer, const THashSet<TString>& IgnoredRules) : Grammar_(&GetSqlGrammar()) , Lexer_(lexer(/* ansi = */ IsAnsiLexer)) @@ -88,7 +88,9 @@ namespace NSQLComplete { if (auto enclosing = context.Enclosing()) { if (enclosing->IsLiteral()) { return result; - } else if (enclosing->Base->Name == "ID_QUOTED") { + } + + if (enclosing->Base->Name == "ID_QUOTED") { result.Object = ObjectMatch(context, candidates); return result; } @@ -327,7 +329,7 @@ namespace NSQLComplete { class TLocalSyntaxAnalysis: public ILocalSyntaxAnalysis { public: - explicit TLocalSyntaxAnalysis( + TLocalSyntaxAnalysis( TLexerSupplier lexer, const THashSet<TString>& IgnoredRules) : DefaultEngine_(lexer, IgnoredRules) , AnsiEngine_(lexer, IgnoredRules) diff --git a/yql/essentials/sql/v1/complete/syntax/local.h b/yql/essentials/sql/v1/complete/syntax/local.h index da44969c746..5557d6b6dc0 100644 --- a/yql/essentials/sql/v1/complete/syntax/local.h +++ b/yql/essentials/sql/v1/complete/syntax/local.h @@ -63,8 +63,8 @@ namespace NSQLComplete { public: using TPtr = THolder<ILocalSyntaxAnalysis>; - virtual TLocalSyntaxContext Analyze(TCompletionInput input) = 0; virtual ~ILocalSyntaxAnalysis() = default; + virtual TLocalSyntaxContext Analyze(TCompletionInput input) = 0; }; ILocalSyntaxAnalysis::TPtr MakeLocalSyntaxAnalysis( diff --git a/yql/essentials/sql/v1/complete/ya.make b/yql/essentials/sql/v1/complete/ya.make index aeec31d506a..5c1db05bb8c 100644 --- a/yql/essentials/sql/v1/complete/ya.make +++ b/yql/essentials/sql/v1/complete/ya.make @@ -16,8 +16,6 @@ PEERDIR( # TODO(YQL-19747): extract NameIndex yql/essentials/sql/v1/complete/name/service/ranking yql/essentials/sql/v1/complete/name/service/binding - # TODO(YQL-19747): add it to YDB CLI PEERDIR - yql/essentials/sql/v1/complete/name/service/static ) END() |