/**
 * Autogenerated by Thrift for /opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_devel_fbthrift/fbthrift/work/fbthrift-2024.01.22.00/thrift/lib/thrift/standard.thrift
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 *  @generated @nocommit
 */
#pragma once

#include <thrift/lib/cpp2/gen/module_data_h.h>

#include "thrift/lib/thrift/gen-cpp2/standard_types.h"

namespace apache { namespace thrift {

template <> struct TEnumDataStorage<::apache::thrift::type::Void> {
  using type = ::apache::thrift::type::Void;
  static constexpr const std::size_t size = 1;
  static constexpr std::array<type, size> values = {{
      type::Unused,
  }};
  static constexpr std::array<folly::StringPiece, size> names = {{
      "Unused",
  }};
};

template <> struct TEnumDataStorage<::apache::thrift::type::StandardProtocol> {
  using type = ::apache::thrift::type::StandardProtocol;
  static constexpr const std::size_t size = 5;
  static constexpr std::array<type, size> values = {{
      type::Custom,
      type::Binary,
      type::Compact,
      type::Json,
      type::SimpleJson,
  }};
  static constexpr std::array<folly::StringPiece, size> names = {{
      "Custom",
      "Binary",
      "Compact",
      "Json",
      "SimpleJson",
  }};
};

template <> struct TEnumDataStorage<::apache::thrift::type::TypeUri::Type> {
  using type = ::apache::thrift::type::TypeUri::Type;
  static constexpr const std::size_t size = 3;
  static constexpr std::array<type, size> values = {{
      type::uri,
      type::typeHashPrefixSha2_256,
      type::scopedName,
  }};
  static constexpr std::array<folly::StringPiece, size> names = {{
      "uri",
      "typeHashPrefixSha2_256",
      "scopedName",
  }};
};

template <> struct TEnumDataStorage<::apache::thrift::type::TypeName::Type> {
  using type = ::apache::thrift::type::TypeName::Type;
  static constexpr const std::size_t size = 17;
  static constexpr std::array<type, size> values = {{
      type::boolType,
      type::byteType,
      type::i16Type,
      type::i32Type,
      type::i64Type,
      type::floatType,
      type::doubleType,
      type::stringType,
      type::binaryType,
      type::enumType,
      type::typedefType,
      type::structType,
      type::unionType,
      type::exceptionType,
      type::listType,
      type::setType,
      type::mapType,
  }};
  static constexpr std::array<folly::StringPiece, size> names = {{
      "boolType",
      "byteType",
      "i16Type",
      "i32Type",
      "i64Type",
      "floatType",
      "doubleType",
      "stringType",
      "binaryType",
      "enumType",
      "typedefType",
      "structType",
      "unionType",
      "exceptionType",
      "listType",
      "setType",
      "mapType",
  }};
};

template <> struct TStructDataStorage<::apache::thrift::type::TypeUri> {
  static constexpr const std::size_t fields_size = 3;
  static const folly::StringPiece name;
  static const std::array<folly::StringPiece, fields_size> fields_names;
  static const std::array<int16_t, fields_size> fields_ids;
  static const std::array<protocol::TType, fields_size> 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<folly::StringPiece, fields_size> storage_names;
  // -1 if the field has no isset.
  static const std::array<int, fields_size> isset_indexes;
};

template <> struct TStructDataStorage<::apache::thrift::type::TypeName> {
  static constexpr const std::size_t fields_size = 17;
  static const folly::StringPiece name;
  static const std::array<folly::StringPiece, fields_size> fields_names;
  static const std::array<int16_t, fields_size> fields_ids;
  static const std::array<protocol::TType, fields_size> 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<folly::StringPiece, fields_size> storage_names;
  // -1 if the field has no isset.
  static const std::array<int, fields_size> isset_indexes;
};

}} // apache::thrift
