summaryrefslogtreecommitdiffstats
path: root/library/cpp/yt
diff options
context:
space:
mode:
authordgolear <[email protected]>2026-04-30 14:50:22 +0300
committerdgolear <[email protected]>2026-04-30 15:18:42 +0300
commitff286f36b5f9efa572d1fecc8bed6ea553614716 (patch)
tree959a8ebecb0c5d09b57bc53651c543b90522b12a /library/cpp/yt
parent7a0a5317feb7f89e5fe304d73580b033c96177aa (diff)
YT: Add missing 16bit types to TErrorAttribute conversions
commit_hash:7e973890af2061e2a78b34d31c404f000375a88b
Diffstat (limited to 'library/cpp/yt')
-rw-r--r--library/cpp/yt/error/error_attribute.h2
-rw-r--r--library/cpp/yt/error/text_yson.cpp12
-rw-r--r--library/cpp/yt/error/text_yson.h8
3 files changed, 22 insertions, 0 deletions
diff --git a/library/cpp/yt/error/error_attribute.h b/library/cpp/yt/error/error_attribute.h
index 24ebf30ee72..6646b59a4cb 100644
--- a/library/cpp/yt/error/error_attribute.h
+++ b/library/cpp/yt/error/error_attribute.h
@@ -14,9 +14,11 @@ namespace NYT {
template <class T>
concept CPrimitiveConvertible =
std::same_as<T, i8> ||
+ std::same_as<T, i16> ||
std::same_as<T, i32> ||
std::same_as<T, i64> ||
std::same_as<T, ui8> ||
+ std::same_as<T, ui16> ||
std::same_as<T, ui32> ||
std::same_as<T, ui64> ||
std::same_as<T, float> ||
diff --git a/library/cpp/yt/error/text_yson.cpp b/library/cpp/yt/error/text_yson.cpp
index 698c2fd244a..545f38be5aa 100644
--- a/library/cpp/yt/error/text_yson.cpp
+++ b/library/cpp/yt/error/text_yson.cpp
@@ -87,6 +87,12 @@ std::string ConvertToTextYsonString<i8>(const i8& value)
}
template <>
+std::string ConvertToTextYsonString<i16>(const i16& value)
+{
+ return ConvertToTextYsonString(static_cast<i64>(value));
+}
+
+template <>
std::string ConvertToTextYsonString<i32>(const i32& value)
{
return ConvertToTextYsonString(static_cast<i64>(value));
@@ -105,6 +111,12 @@ std::string ConvertToTextYsonString<ui8>(const ui8& value)
}
template <>
+std::string ConvertToTextYsonString<ui16>(const ui16& value)
+{
+ return ConvertToTextYsonString(static_cast<ui64>(value));
+}
+
+template <>
std::string ConvertToTextYsonString<ui32>(const ui32& value)
{
return ConvertToTextYsonString(static_cast<ui64>(value));
diff --git a/library/cpp/yt/error/text_yson.h b/library/cpp/yt/error/text_yson.h
index efd3d562bf2..27e2f49f0e3 100644
--- a/library/cpp/yt/error/text_yson.h
+++ b/library/cpp/yt/error/text_yson.h
@@ -30,6 +30,8 @@ T ConvertFromTextYsonString(TStringBuf str) = delete;
template <>
std::string ConvertToTextYsonString<i8>(const i8& value);
template <>
+std::string ConvertToTextYsonString<i16>(const i16& value);
+template <>
std::string ConvertToTextYsonString<i32>(const i32& value);
template <>
std::string ConvertToTextYsonString<i64>(const i64& value);
@@ -37,6 +39,8 @@ std::string ConvertToTextYsonString<i64>(const i64& value);
template <>
std::string ConvertToTextYsonString<ui8>(const ui8& value);
template <>
+std::string ConvertToTextYsonString<ui16>(const ui16& value);
+template <>
std::string ConvertToTextYsonString<ui32>(const ui32& value);
template <>
std::string ConvertToTextYsonString<ui64>(const ui64& value);
@@ -66,6 +70,8 @@ std::string ConvertToTextYsonString<TGuid>(const TGuid& value);
template <>
i8 ConvertFromTextYsonString<i8>(TStringBuf str);
template <>
+i16 ConvertFromTextYsonString<i16>(TStringBuf str);
+template <>
i32 ConvertFromTextYsonString<i32>(TStringBuf str);
template <>
i64 ConvertFromTextYsonString<i64>(TStringBuf str);
@@ -73,6 +79,8 @@ i64 ConvertFromTextYsonString<i64>(TStringBuf str);
template <>
ui8 ConvertFromTextYsonString<ui8>(TStringBuf str);
template <>
+ui16 ConvertFromTextYsonString<ui16>(TStringBuf str);
+template <>
ui32 ConvertFromTextYsonString<ui32>(TStringBuf str);
template <>
ui64 ConvertFromTextYsonString<ui64>(TStringBuf str);