/** * Autogenerated by Thrift for thrift/compiler/test/fixtures/patch/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/patch/gen-cpp2/module_types.h" namespace apache { namespace thrift { template <> struct TEnumDataStorage<::test::fixtures::patch::MyEnum> { using type = ::test::fixtures::patch::MyEnum; static constexpr const std::size_t size = 1; static constexpr std::array values = { { type::MyValue0, }}; static constexpr std::array names = { { "MyValue0"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::patch::InnerUnion::Type> { using type = ::test::fixtures::patch::InnerUnion::Type; static constexpr const std::size_t size = 1; static constexpr std::array values = { { type::innerOption, }}; static constexpr std::array names = { { "innerOption"sv, }}; }; template <> struct TEnumDataStorage<::test::fixtures::patch::MyUnion::Type> { using type = ::test::fixtures::patch::MyUnion::Type; static constexpr const std::size_t size = 3; static constexpr std::array values = { { type::option1, type::option2, type::option3, }}; static constexpr std::array names = { { "option1"sv, "option2"sv, "option3"sv, }}; }; template <> struct TStructDataStorage<::test::fixtures::patch::MyData> { 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<::test::fixtures::patch::MyDataWithCustomDefault> { 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<::test::fixtures::patch::InnerUnion> { static constexpr const std::size_t fields_size = 1; 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::patch::MyUnion> { static constexpr const std::size_t fields_size = 3; 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::patch::MyStruct> { static constexpr const std::size_t fields_size = 33; 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::patch::LateDefStruct> { 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<::test::fixtures::patch::Recursive> { static constexpr const std::size_t fields_size = 1; 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::patch::Bar> { static constexpr const std::size_t fields_size = 1; 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::patch::Loop> { static constexpr const std::size_t fields_size = 1; 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::patch::RefFields> { static constexpr const std::size_t fields_size = 7; 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::patch::MyDataPatchStruct> { 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<::test::fixtures::patch::MyDataFieldPatchStruct> { 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<::test::fixtures::patch::MyDataEnsureStruct> { 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<::test::fixtures::patch::MyDataSafePatch> { 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<::test::fixtures::patch::MyDataWithCustomDefaultPatchStruct> { 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<::test::fixtures::patch::MyDataWithCustomDefaultFieldPatchStruct> { 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<::test::fixtures::patch::MyDataWithCustomDefaultEnsureStruct> { 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<::test::fixtures::patch::MyDataWithCustomDefaultSafePatch> { 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<::test::fixtures::patch::InnerUnionPatchStruct> { static constexpr const std::size_t fields_size = 5; 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::patch::InnerUnionFieldPatchStruct> { static constexpr const std::size_t fields_size = 1; 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::patch::InnerUnionSafePatch> { 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<::test::fixtures::patch::MyUnionPatchStruct> { static constexpr const std::size_t fields_size = 5; 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::patch::MyUnionFieldPatchStruct> { static constexpr const std::size_t fields_size = 3; 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::patch::MyUnionSafePatch> { 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<::test::fixtures::patch::MyStructPatchStruct> { 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<::test::fixtures::patch::MyStructField10PatchStruct> { 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<::test::fixtures::patch::MyStructField23PatchStruct> { 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<::test::fixtures::patch::MyStructField26PatchStruct> { 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::patch::MyStructField27PatchStruct> { 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::patch::MyStructField28PatchStruct> { static constexpr const std::size_t fields_size = 7; 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::patch::MyStructField29PatchStruct> { 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::patch::MyStructField30PatchStruct> { static constexpr const std::size_t fields_size = 7; 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::patch::MyStructField30Patch1Struct> { static constexpr const std::size_t fields_size = 7; 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::patch::MyStructFieldPatchStruct> { static constexpr const std::size_t fields_size = 33; 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::patch::MyStructEnsureStruct> { static constexpr const std::size_t fields_size = 33; 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::patch::MyStructSafePatch> { 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<::test::fixtures::patch::LateDefStructPatchStruct> { 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<::test::fixtures::patch::LateDefStructFieldPatchStruct> { 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<::test::fixtures::patch::LateDefStructEnsureStruct> { 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<::test::fixtures::patch::LateDefStructSafePatch> { 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<::test::fixtures::patch::RecursivePatchStruct> { 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<::test::fixtures::patch::RecursiveField1PatchStruct> { 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<::test::fixtures::patch::RecursiveFieldPatchStruct> { static constexpr const std::size_t fields_size = 1; 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::patch::RecursiveEnsureStruct> { static constexpr const std::size_t fields_size = 1; 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::patch::RecursiveSafePatch> { 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<::test::fixtures::patch::BarPatchStruct> { 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<::test::fixtures::patch::BarFieldPatchStruct> { static constexpr const std::size_t fields_size = 1; 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::patch::BarEnsureStruct> { static constexpr const std::size_t fields_size = 1; 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::patch::BarSafePatch> { 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<::test::fixtures::patch::LoopPatchStruct> { 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<::test::fixtures::patch::LoopSafePatch> { 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<::test::fixtures::patch::RefFieldsPatchStruct> { 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<::test::fixtures::patch::RefFieldsField1PatchStruct> { 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::patch::RefFieldsField4PatchStruct> { 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::patch::RefFieldsField7PatchStruct> { 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::patch::RefFieldsFieldPatchStruct> { static constexpr const std::size_t fields_size = 3; 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::patch::RefFieldsEnsureStruct> { static constexpr const std::size_t fields_size = 7; 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::patch::RefFieldsSafePatch> { 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; }; }} // apache::thrift