/* Generated by the protocol buffer compiler.  DO NOT EDIT! */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C_NO_DEPRECATED
#define PROTOBUF_C_NO_DEPRECATED
#endif

#include "scalar-types.pb-c.h"
void   test__scalar_types__init
                     (Test__ScalarTypes         *message)
{
  static Test__ScalarTypes init_value = TEST__SCALAR_TYPES__INIT;
  *message = init_value;
}
size_t test__scalar_types__get_packed_size
                     (const Test__ScalarTypes *message)
{
  PROTOBUF_C_ASSERT (message->base.descriptor == &test__scalar_types__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t test__scalar_types__pack
                     (const Test__ScalarTypes *message,
                      uint8_t       *out)
{
  PROTOBUF_C_ASSERT (message->base.descriptor == &test__scalar_types__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t test__scalar_types__pack_to_buffer
                     (const Test__ScalarTypes *message,
                      ProtobufCBuffer *buffer)
{
  PROTOBUF_C_ASSERT (message->base.descriptor == &test__scalar_types__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Test__ScalarTypes *
       test__scalar_types__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Test__ScalarTypes *)
     protobuf_c_message_unpack (&test__scalar_types__descriptor,
                                allocator, len, data);
}
void   test__scalar_types__free_unpacked
                     (Test__ScalarTypes *message,
                      ProtobufCAllocator *allocator)
{
  PROTOBUF_C_ASSERT (message->base.descriptor == &test__scalar_types__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCFieldDescriptor test__scalar_types__field_descriptors[15] =
{
  {
    "field_string",
    1,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_string),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_double",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_DOUBLE,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_double),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_double),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_float",
    3,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_FLOAT,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, n_field_float),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_float),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_int32",
    4,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_INT32,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_int32),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_int32),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_int64",
    5,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_INT64,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_int64),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_int64),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_uint32",
    6,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT32,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_uint32),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_uint32),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_uint64",
    7,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_uint64),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_uint64),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_sint32",
    8,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_SINT32,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_sint32),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_sint32),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_sint64",
    9,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_SINT64,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_sint64),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_sint64),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_fixed32",
    10,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_FIXED32,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_fixed32),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_fixed32),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_fixed64",
    11,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_FIXED64,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_fixed64),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_fixed64),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_sfixed32",
    12,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_SFIXED32,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_sfixed32),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_sfixed32),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_sfixed64",
    13,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_SFIXED64,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_sfixed64),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_sfixed64),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_bool",
    14,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BOOL,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_bool),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_bool),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "field_bytes",
    15,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, has_field_bytes),
    PROTOBUF_C_OFFSETOF(Test__ScalarTypes, field_bytes),
    NULL,
    NULL,
    0,            /* packed */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned test__scalar_types__field_indices_by_name[] = {
  13,   /* field[13] = field_bool */
  14,   /* field[14] = field_bytes */
  1,   /* field[1] = field_double */
  9,   /* field[9] = field_fixed32 */
  10,   /* field[10] = field_fixed64 */
  2,   /* field[2] = field_float */
  3,   /* field[3] = field_int32 */
  4,   /* field[4] = field_int64 */
  11,   /* field[11] = field_sfixed32 */
  12,   /* field[12] = field_sfixed64 */
  7,   /* field[7] = field_sint32 */
  8,   /* field[8] = field_sint64 */
  0,   /* field[0] = field_string */
  5,   /* field[5] = field_uint32 */
  6,   /* field[6] = field_uint64 */
};
static const ProtobufCIntRange test__scalar_types__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 15 }
};
const ProtobufCMessageDescriptor test__scalar_types__descriptor =
{
  PROTOBUF_C_MESSAGE_DESCRIPTOR_MAGIC,
  "Test.ScalarTypes",
  "ScalarTypes",
  "Test__ScalarTypes",
  "Test",
  sizeof(Test__ScalarTypes),
  15,
  test__scalar_types__field_descriptors,
  test__scalar_types__field_indices_by_name,
  1,  test__scalar_types__number_ranges,
  (ProtobufCMessageInit) test__scalar_types__init,
  NULL,NULL,NULL    /* reserved[123] */
};
