diff options
author | marsaly <marsaly@yandex-team.com> | 2023-02-06 11:39:01 +0300 |
---|---|---|
committer | marsaly <marsaly@yandex-team.com> | 2023-02-06 11:39:01 +0300 |
commit | 23338f4ee0f34efa1dccab91c361fca60361d63f (patch) | |
tree | d29659597e7304b00b2ceec6ef76f3c9aca89dcf | |
parent | 732d6740cb6e70e1cbe0dea39977f9d4ea7e1545 (diff) | |
download | ydb-23338f4ee0f34efa1dccab91c361fca60361d63f.tar.gz |
Fix IsStrict in set UDF
IsStrict() is always called
-rw-r--r-- | ydb/library/yql/udfs/common/set/set_udf.cpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/ydb/library/yql/udfs/common/set/set_udf.cpp b/ydb/library/yql/udfs/common/set/set_udf.cpp index b915443bcad..878821a4507 100644 --- a/ydb/library/yql/udfs/common/set/set_udf.cpp +++ b/ydb/library/yql/udfs/common/set/set_udf.cpp @@ -453,11 +453,11 @@ public: } if (name == CreateName) { + builder.IsStrict(); + builder.Args()->Add(valueType).Add<ui32>().Done().Returns(setType); if (!typesOnly) { - builder.IsStrict(); - if (isGeneric) { builder.Implementation(new TSetCreate(hash, equate)); } else { @@ -469,11 +469,11 @@ public: } if (name == AddValueName) { + builder.IsStrict(); + builder.Args()->Add(setType).Add(valueType).Done().Returns(setType); if (!typesOnly) { - builder.IsStrict(); - if (isGeneric) { builder.Implementation(new TSetAddValue); } else { @@ -485,11 +485,11 @@ public: } if (name == WasChangedName) { + builder.IsStrict(); + builder.Args()->Add(setType).Done().Returns<bool>(); if (!typesOnly) { - builder.IsStrict(); - if (isGeneric) { builder.Implementation(new TSetWasChanged); } else { @@ -501,11 +501,11 @@ public: } if (name == MergeName) { + builder.IsStrict(); + builder.Args()->Add(setType).Add(setType).Done().Returns(setType); if (!typesOnly) { - builder.IsStrict(); - if (isGeneric) { builder.Implementation(new TSetMerge(hash, equate)); } else { @@ -517,11 +517,11 @@ public: } if (name == SerializeName) { + builder.IsStrict(); + builder.Args()->Add(setType).Done().Returns(serializedType); if (!typesOnly) { - builder.IsStrict(); - if (isGeneric) { builder.Implementation(new TSetSerialize); } else { @@ -549,11 +549,11 @@ public: if (name == GetResultName) { auto resultType = builder.List()->Item(valueType).Build(); + builder.IsStrict(); + builder.Args()->Add(setType).Done().Returns(resultType); if (!typesOnly) { - builder.IsStrict(); - if (isGeneric) { builder.Implementation(new TSetGetResult); } else { |