/** * Autogenerated by Thrift for thrift/compiler/test/fixtures/complex-struct/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/complex-struct/gen-cpp2/module_types.h" namespace apache { namespace thrift { template <> struct TEnumDataStorage<::cpp2::MyEnum> { using type = ::cpp2::MyEnum; static constexpr const std::size_t size = 5; static constexpr std::array values = { { type::MyValue1, type::MyValue2, type::MyValue3, type::MyValue4, type::MyValue5, }}; static constexpr std::array names = { { "MyValue1"sv, "MyValue2"sv, "MyValue3"sv, "MyValue4"sv, "MyValue5"sv, }}; }; template <> struct TEnumDataStorage<::cpp2::MyUnion::Type> { using type = ::cpp2::MyUnion::Type; static constexpr const std::size_t size = 6; static constexpr std::array values = { { type::myEnum, type::myStruct, type::myDataItem, type::complexNestedStruct, type::longValue, type::intValue, }}; static constexpr std::array names = { { "myEnum"sv, "myStruct"sv, "myDataItem"sv, "complexNestedStruct"sv, "longValue"sv, "intValue"sv, }}; }; template <> struct TEnumDataStorage<::cpp2::MyUnionFloatFieldThrowExp::Type> { using type = ::cpp2::MyUnionFloatFieldThrowExp::Type; static constexpr const std::size_t size = 4; static constexpr std::array values = { { type::myEnum, type::setFloat, type::myDataItem, type::complexNestedStruct, }}; static constexpr std::array names = { { "myEnum"sv, "setFloat"sv, "myDataItem"sv, "complexNestedStruct"sv, }}; }; template <> struct TStructDataStorage<::cpp2::MyStructFloatFieldThrowExp> { 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<::cpp2::MyStructMapFloatThrowExp> { static constexpr const std::size_t fields_size = 2; 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<::cpp2::MyStruct> { static constexpr const std::size_t fields_size = 28; 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<::cpp2::SimpleStruct> { static constexpr const std::size_t fields_size = 2; 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<::cpp2::defaultStruct> { static constexpr const std::size_t fields_size = 22; 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<::cpp2::MyStructTypeDef> { static constexpr const std::size_t fields_size = 9; 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<::cpp2::MyDataItem> { static constexpr const std::size_t fields_size = 0; 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<::cpp2::MyUnion> { static constexpr const std::size_t fields_size = 6; 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<::cpp2::MyUnionFloatFieldThrowExp> { 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<::cpp2::ComplexNestedStruct> { static constexpr const std::size_t fields_size = 18; 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<::cpp2::TypeRemapped> { 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<::cpp2::emptyXcep> { static constexpr const std::size_t fields_size = 0; 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<::cpp2::reqXcep> { static constexpr const std::size_t fields_size = 2; 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<::cpp2::optXcep> { static constexpr const std::size_t fields_size = 2; 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<::cpp2::complexException> { static constexpr const std::size_t fields_size = 6; 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