1#ifndef ZSERIO_ENUMS_H_INC
2#define ZSERIO_ENUMS_H_INC
104std::enable_if_t<std::is_enum_v<T>> validate(T value, std::string_view fieldName)
110std::enable_if_t<std::is_enum_v<T>,
BitSize> bitSizeOf(T value,
BitSize bitPosition = 0)
116std::enable_if_t<std::is_enum_v<T>> write(BitStreamWriter& writer, T value)
124 typename EnumTraits<T>::ZserioType rawValue;
125 read(reader, rawValue);
126 value = valueToEnum<T>(rawValue);
129template <
typename T, std::enable_if_t<std::is_enum_v<T>,
int> = 0>
130inline void initContext(DeltaContext& deltaContext, T value)
136std::enable_if_t<std::is_enum_v<T>,
BitSize> bitSizeOf(DeltaContext& deltaContext, T value,
BitSize = 0)
142std::enable_if_t<std::is_enum_v<T>> write(DeltaContext& deltaContext, BitStreamWriter& writer, T value)
148std::enable_if_t<std::is_enum_v<T>> read(DeltaContext& deltaContext, BitStreamReader& reader, T& value)
150 typename EnumTraits<T>::ZserioType rawValue;
151 deltaContext.read(reader, rawValue);
152 value = valueToEnum<T>(rawValue);
165template <
typename T, std::enable_if_t<std::is_enum_v<T>,
int> = 0>
166CppRuntimeException&
operator<<(CppRuntimeException& exception, T value)
T valueToEnum(typename EnumTraits< T >::ZserioType rawValue)
CppRuntimeException & operator<<(CppRuntimeException &exception, const BasicBitBuffer< ALLOC > &bitBuffer)
T stringToEnum(std::string_view itemName)
std::string_view enumToString(T value)
size_t enumToOrdinal(T value)
constexpr EnumTraits< T >::ZserioType enumToValue(T value)