diff options
author | vvvv <vvvv@ydb.tech> | 2023-06-08 17:41:15 +0300 |
---|---|---|
committer | vvvv <vvvv@ydb.tech> | 2023-06-08 17:41:15 +0300 |
commit | 2628f63cd297b95651c7f2e58237faea8ffd0c33 (patch) | |
tree | 6651932f620284c5e73ebb3232b592c5fce515a7 | |
parent | d8ffca06077f82939f880ce805c07cb7bc946755 (diff) | |
download | ydb-2628f63cd297b95651c7f2e58237faea8ffd0c33.tar.gz |
Move ctors for versioned ABI interfaces to .cpp
-rw-r--r-- | ydb/library/yql/public/udf/CMakeLists.darwin-x86_64.txt | 2 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/CMakeLists.linux-aarch64.txt | 2 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/CMakeLists.linux-x86_64.txt | 2 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/CMakeLists.windows-x86_64.txt | 2 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_type_builder.cpp | 10 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_type_builder.h | 2 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_types.cpp | 12 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_types.h | 54 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_value.cpp | 9 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_value.h | 30 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_value_builder.cpp | 16 | ||||
-rw-r--r-- | ydb/library/yql/public/udf/udf_value_builder.h | 66 |
12 files changed, 178 insertions, 29 deletions
diff --git a/ydb/library/yql/public/udf/CMakeLists.darwin-x86_64.txt b/ydb/library/yql/public/udf/CMakeLists.darwin-x86_64.txt index fbdaa1df7ce..b23af34525d 100644 --- a/ydb/library/yql/public/udf/CMakeLists.darwin-x86_64.txt +++ b/ydb/library/yql/public/udf/CMakeLists.darwin-x86_64.txt @@ -33,10 +33,12 @@ target_sources(yql-public-udf PRIVATE ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_registrator.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_static_registry.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_string.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_inspection.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_printer.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_types.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_validate.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_version.cpp ) diff --git a/ydb/library/yql/public/udf/CMakeLists.linux-aarch64.txt b/ydb/library/yql/public/udf/CMakeLists.linux-aarch64.txt index 32b31cde2df..4903599672f 100644 --- a/ydb/library/yql/public/udf/CMakeLists.linux-aarch64.txt +++ b/ydb/library/yql/public/udf/CMakeLists.linux-aarch64.txt @@ -34,10 +34,12 @@ target_sources(yql-public-udf PRIVATE ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_registrator.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_static_registry.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_string.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_inspection.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_printer.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_types.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_validate.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_version.cpp ) diff --git a/ydb/library/yql/public/udf/CMakeLists.linux-x86_64.txt b/ydb/library/yql/public/udf/CMakeLists.linux-x86_64.txt index 32b31cde2df..4903599672f 100644 --- a/ydb/library/yql/public/udf/CMakeLists.linux-x86_64.txt +++ b/ydb/library/yql/public/udf/CMakeLists.linux-x86_64.txt @@ -34,10 +34,12 @@ target_sources(yql-public-udf PRIVATE ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_registrator.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_static_registry.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_string.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_inspection.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_printer.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_types.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_validate.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_version.cpp ) diff --git a/ydb/library/yql/public/udf/CMakeLists.windows-x86_64.txt b/ydb/library/yql/public/udf/CMakeLists.windows-x86_64.txt index fbdaa1df7ce..b23af34525d 100644 --- a/ydb/library/yql/public/udf/CMakeLists.windows-x86_64.txt +++ b/ydb/library/yql/public/udf/CMakeLists.windows-x86_64.txt @@ -33,10 +33,12 @@ target_sources(yql-public-udf PRIVATE ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_registrator.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_static_registry.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_string.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_inspection.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_type_printer.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_types.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_validate.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value.cpp + ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_value_builder.cpp ${CMAKE_SOURCE_DIR}/ydb/library/yql/public/udf/udf_version.cpp ) diff --git a/ydb/library/yql/public/udf/udf_type_builder.cpp b/ydb/library/yql/public/udf/udf_type_builder.cpp new file mode 100644 index 00000000000..321d36685c7 --- /dev/null +++ b/ydb/library/yql/public/udf/udf_type_builder.cpp @@ -0,0 +1,10 @@ +#include "udf_type_builder.h" + +namespace NYql { +namespace NUdf { + +IFunctionTypeInfoBuilder::IFunctionTypeInfoBuilder() +{} + +} // namespace NUdf +} // namespace NYql diff --git a/ydb/library/yql/public/udf/udf_type_builder.h b/ydb/library/yql/public/udf/udf_type_builder.h index 3a593045b3a..cc2b1a0bf46 100644 --- a/ydb/library/yql/public/udf/udf_type_builder.h +++ b/ydb/library/yql/public/udf/udf_type_builder.h @@ -689,6 +689,8 @@ using IFunctionTypeInfoBuilderImpl = IFunctionTypeInfoBuilder1; class IFunctionTypeInfoBuilder: public IFunctionTypeInfoBuilderImpl { public: + IFunctionTypeInfoBuilder(); + IFunctionTypeInfoBuilder& Implementation( TUniquePtr<IBoxedValue> impl) { ImplementationImpl(std::move(impl)); diff --git a/ydb/library/yql/public/udf/udf_types.cpp b/ydb/library/yql/public/udf/udf_types.cpp index 6703e779ab5..3fa8d9774bb 100644 --- a/ydb/library/yql/public/udf/udf_types.cpp +++ b/ydb/library/yql/public/udf/udf_types.cpp @@ -1 +1,13 @@ #include "udf_types.h" + +namespace NYql { +namespace NUdf { + +ITypeVisitor::ITypeVisitor() +{} + +ITypeInfoHelper::ITypeInfoHelper() +{} + +} // namspace NUdf +} // namspace NYql diff --git a/ydb/library/yql/public/udf/udf_types.h b/ydb/library/yql/public/udf/udf_types.h index cc31f536c4d..8fadafe9002 100644 --- a/ydb/library/yql/public/udf/udf_types.h +++ b/ydb/library/yql/public/udf/udf_types.h @@ -215,17 +215,35 @@ public: #endif #if UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 26) -using ITypeVisitor = ITypeVisitor6; +class ITypeVisitor : public ITypeVisitor6 { +protected: + ITypeVisitor(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 25) -using ITypeVisitor = ITypeVisitor5; +class ITypeVisitor : public ITypeVisitor5 { +protected: + ITypeVisitor(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 21) -using ITypeVisitor = ITypeVisitor4; +class ITypeVisitor : public ITypeVisitor4 { +protected: + ITypeVisitor(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 15) -using ITypeVisitor = ITypeVisitor3; +class ITypeVisitor : public ITypeVisitor3 { +protected: + ITypeVisitor(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 13) -using ITypeVisitor = ITypeVisitor2; +class ITypeVisitor : public ITypeVisitor2 { +protected: + ITypeVisitor(); +}; #else -using ITypeVisitor = ITypeVisitor1; +class ITypeVisitor : public ITypeVisitor1 { +protected: + ITypeVisitor(); +}; #endif UDF_ASSERT_TYPE_SIZE(ITypeVisitor, 16); @@ -320,13 +338,29 @@ public: #endif #if UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 29) -using ITypeInfoHelper = ITypeInfoHelper4; +class ITypeInfoHelper : public ITypeInfoHelper4 { +public: + using TPtr = TRefCountedPtr<ITypeInfoHelper>; + ITypeInfoHelper(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 26) -using ITypeInfoHelper = ITypeInfoHelper3; +class ITypeInfoHelper : public ITypeInfoHelper3 { +public: + using TPtr = TRefCountedPtr<ITypeInfoHelper>; + ITypeInfoHelper(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 25) -using ITypeInfoHelper = ITypeInfoHelper2; +class ITypeInfoHelper : public ITypeInfoHelper2 { +public: + using TPtr = TRefCountedPtr<ITypeInfoHelper>; + ITypeInfoHelper(); +}; #else -using ITypeInfoHelper = ITypeInfoHelper1; +class ITypeInfoHelper : public ITypeInfoHelper1 { +public: + using TPtr = TRefCountedPtr<ITypeInfoHelper>; + ITypeInfoHelper(); +}; #endif UDF_ASSERT_TYPE_SIZE(ITypeInfoHelper, 16); diff --git a/ydb/library/yql/public/udf/udf_value.cpp b/ydb/library/yql/public/udf/udf_value.cpp index d80ef72fb9f..8d8add7393e 100644 --- a/ydb/library/yql/public/udf/udf_value.cpp +++ b/ydb/library/yql/public/udf/udf_value.cpp @@ -1 +1,10 @@ #include "udf_value.h" + +namespace NYql { +namespace NUdf { + +IBoxedValue::IBoxedValue() +{} + +} +}
\ No newline at end of file diff --git a/ydb/library/yql/public/udf/udf_value.h b/ydb/library/yql/public/udf/udf_value.h index 09f98b390c0..ea57da77535 100644 --- a/ydb/library/yql/public/udf/udf_value.h +++ b/ydb/library/yql/public/udf/udf_value.h @@ -182,17 +182,35 @@ private: #endif #if UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 30) -class IBoxedValue : public IBoxedValue6 {}; +class IBoxedValue : public IBoxedValue6 { +protected: + IBoxedValue(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 19) -class IBoxedValue : public IBoxedValue5 {}; +class IBoxedValue : public IBoxedValue5 { +protected: + IBoxedValue(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 12) -class IBoxedValue : public IBoxedValue4 {}; +class IBoxedValue : public IBoxedValue4 { +protected: + IBoxedValue(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 11) -class IBoxedValue : public IBoxedValue3 {}; +class IBoxedValue : public IBoxedValue3 { +protected: + IBoxedValue(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 3) -class IBoxedValue : public IBoxedValue2 {}; +class IBoxedValue : public IBoxedValue2 { +protected: + IBoxedValue(); +}; #else -class IBoxedValue : public IBoxedValue1 {}; +class IBoxedValue : public IBoxedValue1 { +protected: + IBoxedValue(); +}; #endif UDF_ASSERT_TYPE_SIZE(IBoxedValue, 16); diff --git a/ydb/library/yql/public/udf/udf_value_builder.cpp b/ydb/library/yql/public/udf/udf_value_builder.cpp new file mode 100644 index 00000000000..1d0662f7702 --- /dev/null +++ b/ydb/library/yql/public/udf/udf_value_builder.cpp @@ -0,0 +1,16 @@ +#include "udf_value_builder.h" + +namespace NYql { +namespace NUdf { + +IDateBuilder::IDateBuilder() +{} + +IPgBuilder::IPgBuilder() +{} + +IValueBuilder::IValueBuilder() +{} + +} // namespace NUdf +} // namespace NYql diff --git a/ydb/library/yql/public/udf/udf_value_builder.h b/ydb/library/yql/public/udf/udf_value_builder.h index 6b41af3ea11..82459127113 100644 --- a/ydb/library/yql/public/udf/udf_value_builder.h +++ b/ydb/library/yql/public/udf/udf_value_builder.h @@ -98,11 +98,20 @@ public: #endif #if UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 24) -class IDateBuilder: public IDateBuilder3 {}; +class IDateBuilder: public IDateBuilder3 { +protected: + IDateBuilder(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 7) -class IDateBuilder: public IDateBuilder2 {}; +class IDateBuilder: public IDateBuilder2 { +protected: + IDateBuilder(); +}; #else -class IDateBuilder: public IDateBuilder1 {}; +class IDateBuilder: public IDateBuilder1 { +protected: + IDateBuilder(); +}; #endif UDF_ASSERT_TYPE_SIZE(IDateBuilder, 8); @@ -148,11 +157,20 @@ public: #endif #if UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 33) -class IPgBuilder: public IPgBuilder3 {}; +class IPgBuilder: public IPgBuilder3 { +protected: + IPgBuilder(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 31) -class IPgBuilder: public IPgBuilder2 {}; +class IPgBuilder: public IPgBuilder2 { +protected: + IPgBuilder(); +}; #else -class IPgBuilder: public IPgBuilder1 {}; +class IPgBuilder: public IPgBuilder1 { +protected: + IPgBuilder(); +}; #endif UDF_ASSERT_TYPE_SIZE(IPgBuilder, 8); @@ -258,19 +276,41 @@ public: #endif #if UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 27) -class IValueBuilder: public IValueBuilder7 {}; +class IValueBuilder: public IValueBuilder7 { +protected: + IValueBuilder(); +}; + #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 25) -class IValueBuilder: public IValueBuilder6 {}; +class IValueBuilder: public IValueBuilder6 { +protected: + IValueBuilder(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 19) -class IValueBuilder: public IValueBuilder5 {}; +class IValueBuilder: public IValueBuilder5 { +protected: + IValueBuilder(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 17) -class IValueBuilder: public IValueBuilder4 {}; +class IValueBuilder: public IValueBuilder4 { +protected: + IValueBuilder(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 14) -class IValueBuilder: public IValueBuilder3 {}; +class IValueBuilder: public IValueBuilder3 { +protected: + IValueBuilder(); +}; #elif UDF_ABI_COMPATIBILITY_VERSION_CURRENT >= UDF_ABI_COMPATIBILITY_VERSION(2, 1) -class IValueBuilder: public IValueBuilder2 {}; +class IValueBuilder: public IValueBuilder2 { +protected: + IValueBuilder(); +}; #else -class IValueBuilder: public IValueBuilder1 {}; +class IValueBuilder: public IValueBuilder1 { +protected: + IValueBuilder(); +}; #endif UDF_ASSERT_TYPE_SIZE(IValueBuilder, 8); |