diff options
| author | dgolear <[email protected]> | 2026-04-30 14:50:22 +0300 |
|---|---|---|
| committer | dgolear <[email protected]> | 2026-04-30 15:18:42 +0300 |
| commit | ff286f36b5f9efa572d1fecc8bed6ea553614716 (patch) | |
| tree | 959a8ebecb0c5d09b57bc53651c543b90522b12a /library/cpp/yt | |
| parent | 7a0a5317feb7f89e5fe304d73580b033c96177aa (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.h | 2 | ||||
| -rw-r--r-- | library/cpp/yt/error/text_yson.cpp | 12 | ||||
| -rw-r--r-- | library/cpp/yt/error/text_yson.h | 8 |
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); |
