1#ifndef ZSERIO_GENERIC_ACCESSOR_INC_H
2#define ZSERIO_GENERIC_ACCESSOR_INC_H
14template <
typename T,
typename =
void>
15struct generic_accessor;
18struct generic_accessor<T,
std::enable_if_t<std::is_enum_v<T>>>
24struct generic_accessor<T,
std::enable_if_t<is_bitmask_v<T>>>
26 using type =
typename T::Values;
29template <
typename T,
typename U>
30void setGenericOffset(T& offsetField, U bytesOffset)
32 offsetField =
static_cast<typename T::ValueType
>(bytesOffset);
46template <
typename ALLOC,
typename T>
64template <
typename ALLOC,
typename T>
const T & genericAccessor(const T &value)
typename detail::generic_accessor< T >::type generic_accessor_t