/** * Autogenerated by Thrift for thrift/compiler/test/fixtures/enums/src/module.thrift * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @nocommit */ #pragma once #include #include "thrift/compiler/test/fixtures/enums/gen-cpp2/module_types.h" namespace apache { namespace thrift { template <> struct TEnumDataStorage<::test::fixtures::enums::Metasyntactic> { using type = ::test::fixtures::enums::Metasyntactic; static constexpr const std::size_t size = 4; static constexpr std::array values = { { type::FOO, type::BAR, type::BAZ, type::BAX, }}; static constexpr std::array names = { { "FOO"sv, "BAR"sv, "BAZ"sv, "BAX"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::enums::MyEnum1> { using type = ::test::fixtures::enums::MyEnum1; static constexpr const std::size_t size = 6; static constexpr std::array values = { { type::ME1_0, type::ME1_1, type::ME1_2, type::ME1_3, type::ME1_5, type::ME1_6, }}; static constexpr std::array names = { { "ME1_0"sv, "ME1_1"sv, "ME1_2"sv, "ME1_3"sv, "ME1_5"sv, "ME1_6"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::enums::MyEnum2> { using type = ::test::fixtures::enums::MyEnum2; static constexpr const std::size_t size = 3; static constexpr std::array values = { { type::ME2_0, type::ME2_1, type::ME2_2, }}; static constexpr std::array names = { { "ME2_0"sv, "ME2_1"sv, "ME2_2"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::enums::MyEnum3> { using type = ::test::fixtures::enums::MyEnum3; static constexpr const std::size_t size = 6; static constexpr std::array values = { { type::ME3_0, type::ME3_1, type::ME3_N2, type::ME3_N1, type::ME3_9, type::ME3_10, }}; static constexpr std::array names = { { "ME3_0"sv, "ME3_1"sv, "ME3_N2"sv, "ME3_N1"sv, "ME3_9"sv, "ME3_10"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::enums::MyEnum4> { using type = ::test::fixtures::enums::MyEnum4; static constexpr const std::size_t size = 4; static constexpr std::array values = { { type::ME4_A, type::ME4_B, type::ME4_C, type::ME4_D, }}; static constexpr std::array names = { { "ME4_A"sv, "ME4_B"sv, "ME4_C"sv, "ME4_D"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::enums::MyBitmaskEnum1> { using type = ::test::fixtures::enums::MyBitmaskEnum1; static constexpr const std::size_t size = 3; static constexpr std::array values = { { type::ONE, type::TWO, type::FOUR, }}; static constexpr std::array names = { { "ONE"sv, "TWO"sv, "FOUR"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::enums::MyBitmaskEnum2> { using type = ::test::fixtures::enums::MyBitmaskEnum2; static constexpr const std::size_t size = 3; static constexpr std::array values = { { type::ONE, type::TWO, type::FOUR, }}; static constexpr std::array names = { { "ONE"sv, "TWO"sv, "FOUR"sv, }}; }; template <> struct TStructDataStorage<::test::fixtures::enums::SomeStruct> { static constexpr const std::size_t fields_size = 4; static const std::string_view name; static const std::array fields_names; static const std::array fields_ids; static const std::array fields_types; private: // The following fields describe internal storage metadata, and are private to // prevent user logic from accessing them, but they can be inspected by // debuggers. static const std::array storage_names; // -1 if the field has no isset. static const std::array isset_indexes; }; template <> struct TStructDataStorage<::test::fixtures::enums::MyStruct> { static constexpr const std::size_t fields_size = 4; static const std::string_view name; static const std::array fields_names; static const std::array fields_ids; static const std::array fields_types; private: // The following fields describe internal storage metadata, and are private to // prevent user logic from accessing them, but they can be inspected by // debuggers. static const std::array storage_names; // -1 if the field has no isset. static const std::array isset_indexes; }; }} // apache::thrift