Crunch
A Message Definition Language for Getting Things Right
Loading...
Searching...
No Matches
crunch_enum.hpp
1#pragma once
2
3#include <crunch/fields/crunch_scalar.hpp>
4#include <crunch/validators/crunch_validators.hpp>
5#include <type_traits>
6
7namespace Crunch::fields {
8
19template <typename E, typename... Validators>
20 requires std::is_enum_v<E> &&
21 std::is_same_v<std::underlying_type_t<E>, int32_t>
22using Enum = Scalar<E, Validators...>;
23
24} // namespace Crunch::fields