Browse Source

Revert "YT-21306: Add EnumHasDefaultValue"

This reverts commit d9b67f1778da2d15dd94f7285afe4e3490a233ab, reversing
changes made to 461a09e0c18bd14cef7df8060e7f9537e3ad74b5.
92cdaf4185661b7058f6a30d5a532ad40b725345
dtorilov 6 months ago
parent
commit
f5f12e973b

+ 0 - 4
library/cpp/yt/misc/cast-inl.h

@@ -124,10 +124,6 @@ T CheckedEnumCast(S value)
 {
     T result;
     if (!TryEnumCast<T>(value, &result)) {
-        if constexpr (TEnumHasDefaultValue<T>::value) {
-            return GetDefaultValue(T{});
-        }
-
         throw TSimpleException(Sprintf("Error casting %s value \"%d\" to enum %s",
             TypeName<S>().c_str(),
             static_cast<int>(value),

+ 0 - 14
library/cpp/yt/misc/enum.h

@@ -197,20 +197,6 @@ constexpr bool None(E value) noexcept;
 
 ////////////////////////////////////////////////////////////////////////////////
 
-template <typename E, typename = void>
-    requires TEnumTraits<E>::IsEnum
-struct TEnumHasDefaultValue
-    : std::false_type
-{ };
-
-template <typename E>
-    requires TEnumTraits<E>::IsEnum
-struct TEnumHasDefaultValue<E, std::void_t<decltype(GetDefaultValue(std::declval<E>()))>>
-    : std::is_same<decltype(GetDefaultValue(std::declval<E>())), E>
-{ };
-
-////////////////////////////////////////////////////////////////////////////////
-
 } // namespace NYT
 
 #define ENUM_INL_H_

+ 0 - 5
library/cpp/yt/string/enum-inl.h

@@ -87,11 +87,6 @@ T ParseEnum(TStringBuf value)
     if (auto optionalResult = TryParseEnum<T>(value)) {
         return *optionalResult;
     }
-
-    if constexpr (TEnumHasDefaultValue<T>::value) {
-        return GetDefaultValue(T{});
-    }
-
     NYT::NDetail::ThrowMalformedEnumValueException(TEnumTraits<T>::GetTypeName(), value);
 }
 

+ 1 - 7
yt/yt/core/bus/public.cpp

@@ -9,11 +9,5 @@ const TString LocalNetworkName("local");
 
 ////////////////////////////////////////////////////////////////////////////////
 
-EMultiplexingBand GetDefaultValue(EMultiplexingBand)
-{
-    return EMultiplexingBand::Default;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
 } // namespace NYT::NBus
+

+ 1 - 2
yt/yt/core/bus/public.h

@@ -36,8 +36,6 @@ DEFINE_ENUM(EMultiplexingBand,
     ((RealTime)              (4))
 );
 
-EMultiplexingBand GetDefaultValue(EMultiplexingBand);
-
 YT_DEFINE_ERROR_ENUM(
     ((TransportError)       (100))
     ((SslError)             (119))
@@ -61,3 +59,4 @@ extern const TString LocalNetworkName;
 ////////////////////////////////////////////////////////////////////////////////
 
 } // namespace NYT::NBus
+

+ 2 - 10
yt/yt/core/misc/protobuf_helpers-inl.h

@@ -181,11 +181,7 @@ template <class T>
     requires TEnumTraits<T>::IsEnum && (!TEnumTraits<T>::IsBitEnum)
 void FromProto(T* original, int serialized)
 {
-    if constexpr (TEnumHasDefaultValue<T>::value) {
-        *original = CheckedEnumCast<T>(serialized);
-    } else {
-        *original = static_cast<T>(serialized);
-    }
+    *original = static_cast<T>(serialized);
 }
 
 template <class T>
@@ -199,11 +195,7 @@ template <class T>
     requires TEnumTraits<T>::IsBitEnum
 void FromProto(T* original, ui64 serialized)
 {
-    if constexpr (TEnumHasDefaultValue<T>::value) {
-        *original = CheckedEnumCast<T>(serialized);
-    } else {
-        *original = static_cast<T>(serialized);
-    }
+    *original = static_cast<T>(serialized);
 }
 
 ////////////////////////////////////////////////////////////////////////////////

+ 0 - 2
yt/yt_proto/yt/client/api/rpc_proxy/proto/api_service.proto

@@ -225,8 +225,6 @@ enum EMultiplexingBand
     MB_CONTROL = 1;
     MB_HEAVY = 2;
     MB_INTERACTIVE = 3;
-    MB_REAL_TIME = 4;
-    MB_JOURNAL = 5;
 }
 
 enum ETableSchemaModification