diff options
| author | atarasov5 <[email protected]> | 2025-05-14 14:41:50 +0300 |
|---|---|---|
| committer | atarasov5 <[email protected]> | 2025-05-14 14:56:21 +0300 |
| commit | 1565ceee67746697db75e898d9f6ebb51232bc5f (patch) | |
| tree | a7851e1c17965654194ae5a9d000b50223348db2 /yql/essentials/minikql/mkql_program_builder.cpp | |
| parent | 75945316e2777e65ff19c9aafc661efbecad682a (diff) | |
YQL-19765: Store IHash, ICompare, IEquate by type value instead of pointer
commit_hash:9e278f075e1a9c899d4ef9c137eee25958597358
Diffstat (limited to 'yql/essentials/minikql/mkql_program_builder.cpp')
| -rw-r--r-- | yql/essentials/minikql/mkql_program_builder.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/yql/essentials/minikql/mkql_program_builder.cpp b/yql/essentials/minikql/mkql_program_builder.cpp index b472f648575..adff3a372ac 100644 --- a/yql/essentials/minikql/mkql_program_builder.cpp +++ b/yql/essentials/minikql/mkql_program_builder.cpp @@ -72,11 +72,11 @@ class TJavascriptTypeChecker : public TExploringNodeVisitor { void EnsureScriptSpecificTypes( EScriptType scriptType, TCallableType* funcType, - const TTypeEnvironment& env) + std::vector<TNode*>& nodeStack) { switch (scriptType) { case EScriptType::Lua: - return TLuaTypeChecker().Walk(funcType, env); + return TLuaTypeChecker().Walk(funcType, nodeStack); case EScriptType::Python: case EScriptType::Python2: case EScriptType::Python3: @@ -94,9 +94,9 @@ void EnsureScriptSpecificTypes( case EScriptType::SystemPython3_11: case EScriptType::SystemPython3_12: case EScriptType::SystemPython3_13: - return TPythonTypeChecker().Walk(funcType, env); + return TPythonTypeChecker().Walk(funcType, nodeStack); case EScriptType::Javascript: - return TJavascriptTypeChecker().Walk(funcType, env); + return TJavascriptTypeChecker().Walk(funcType, nodeStack); default: MKQL_ENSURE(false, "Unknown script type " << static_cast<ui32>(scriptType)); } @@ -4166,7 +4166,7 @@ TRuntimeNode TProgramBuilder::ScriptUdf( MKQL_ENSURE(funcType->IsCallable(), "type must be callable"); auto scriptType = NKikimr::NMiniKQL::ScriptTypeFromStr(moduleName); MKQL_ENSURE(scriptType != EScriptType::Unknown, "unknown script type '" << moduleName << "'"); - EnsureScriptSpecificTypes(scriptType, static_cast<TCallableType*>(funcType), Env); + EnsureScriptSpecificTypes(scriptType, static_cast<TCallableType*>(funcType), Env.GetNodeStack()); auto scriptTypeStr = IsCustomPython(scriptType) ? moduleName : ScriptTypeAsStr(CanonizeScriptType(scriptType)); @@ -6148,7 +6148,7 @@ bool CanExportType(TType* type, const TTypeEnvironment& env) { } TExploringNodeVisitor explorer; - explorer.Walk(type, env); + explorer.Walk(type, env.GetNodeStack()); bool canExport = true; for (auto& node : explorer.GetNodes()) { switch (static_cast<TType*>(node)->GetKind()) { |
