--Generated By protoc-gen-lua Do not Edit
local protobuf = require "Framework.Net.Protobuf.protobuf"
local test_common_pb = require("Net.Protol.test_common_pb")
local _M = {}

_M.PERSON = protobuf.Descriptor();
_M.PERSON_HEADER_FIELD = protobuf.FieldDescriptor();
_M.PERSON_ID_FIELD = protobuf.FieldDescriptor();
_M.PERSON_NAME_FIELD = protobuf.FieldDescriptor();
_M.PERSON_AGE_FIELD = protobuf.FieldDescriptor();
_M.PERSON_EMAIL_FIELD = protobuf.FieldDescriptor();
_M.PERSON_ARRAY_FIELD = protobuf.FieldDescriptor();
_M.PHONE = protobuf.Descriptor();
_M.PHONE_PHONE_TYPE = protobuf.EnumDescriptor();
_M.PHONE_PHONE_TYPE_MOBILE_ENUM = protobuf.EnumValueDescriptor();
_M.PHONE_PHONE_TYPE_HOME_ENUM = protobuf.EnumValueDescriptor();
_M.PHONE_NUM_FIELD = protobuf.FieldDescriptor();
_M.PHONE_TYPE_FIELD = protobuf.FieldDescriptor();
_M.PHONE_PHONES_FIELD = protobuf.FieldDescriptor();

_M.PERSON_HEADER_FIELD.name = "header"
_M.PERSON_HEADER_FIELD.full_name = ".Person.header"
_M.PERSON_HEADER_FIELD.number = 1
_M.PERSON_HEADER_FIELD.index = 0
_M.PERSON_HEADER_FIELD.label = 2
_M.PERSON_HEADER_FIELD.has_default_value = false
_M.PERSON_HEADER_FIELD.default_value = nil
_M.PERSON_HEADER_FIELD.message_type = test_common_pb.HEADER
_M.PERSON_HEADER_FIELD.type = 11
_M.PERSON_HEADER_FIELD.cpp_type = 10

_M.PERSON_ID_FIELD.name = "id"
_M.PERSON_ID_FIELD.full_name = ".Person.id"
_M.PERSON_ID_FIELD.number = 2
_M.PERSON_ID_FIELD.index = 1
_M.PERSON_ID_FIELD.label = 2
_M.PERSON_ID_FIELD.has_default_value = false
_M.PERSON_ID_FIELD.default_value = ""
_M.PERSON_ID_FIELD.type = 9
_M.PERSON_ID_FIELD.cpp_type = 9

_M.PERSON_NAME_FIELD.name = "name"
_M.PERSON_NAME_FIELD.full_name = ".Person.name"
_M.PERSON_NAME_FIELD.number = 3
_M.PERSON_NAME_FIELD.index = 2
_M.PERSON_NAME_FIELD.label = 2
_M.PERSON_NAME_FIELD.has_default_value = false
_M.PERSON_NAME_FIELD.default_value = ""
_M.PERSON_NAME_FIELD.type = 9
_M.PERSON_NAME_FIELD.cpp_type = 9

_M.PERSON_AGE_FIELD.name = "age"
_M.PERSON_AGE_FIELD.full_name = ".Person.age"
_M.PERSON_AGE_FIELD.number = 4
_M.PERSON_AGE_FIELD.index = 3
_M.PERSON_AGE_FIELD.label = 1
_M.PERSON_AGE_FIELD.has_default_value = true
_M.PERSON_AGE_FIELD.default_value = 18
_M.PERSON_AGE_FIELD.type = 5
_M.PERSON_AGE_FIELD.cpp_type = 1

_M.PERSON_EMAIL_FIELD.name = "email"
_M.PERSON_EMAIL_FIELD.full_name = ".Person.email"
_M.PERSON_EMAIL_FIELD.number = 5
_M.PERSON_EMAIL_FIELD.index = 4
_M.PERSON_EMAIL_FIELD.label = 1
_M.PERSON_EMAIL_FIELD.has_default_value = true
_M.PERSON_EMAIL_FIELD.default_value = "703016035@qq.com"
_M.PERSON_EMAIL_FIELD.type = 9
_M.PERSON_EMAIL_FIELD.cpp_type = 9

_M.PERSON_ARRAY_FIELD.name = "array"
_M.PERSON_ARRAY_FIELD.full_name = ".Person.array"
_M.PERSON_ARRAY_FIELD.number = 6
_M.PERSON_ARRAY_FIELD.index = 5
_M.PERSON_ARRAY_FIELD.label = 3
_M.PERSON_ARRAY_FIELD.has_default_value = false
_M.PERSON_ARRAY_FIELD.default_value = {}
_M.PERSON_ARRAY_FIELD.type = 5
_M.PERSON_ARRAY_FIELD.cpp_type = 1

_M.PERSON.name = "Person"
_M.PERSON.full_name = ".Person"
_M.PERSON.nested_types = {}
_M.PERSON.enum_types = {}
_M.PERSON.fields = {_M.PERSON_HEADER_FIELD, _M.PERSON_ID_FIELD, _M.PERSON_NAME_FIELD, _M.PERSON_AGE_FIELD, _M.PERSON_EMAIL_FIELD, _M.PERSON_ARRAY_FIELD}
_M.PERSON.is_extendable = true
_M.PERSON.extensions = {}
_M.PHONE_PHONE_TYPE_MOBILE_ENUM.name = "MOBILE"
_M.PHONE_PHONE_TYPE_MOBILE_ENUM.index = 0
_M.PHONE_PHONE_TYPE_MOBILE_ENUM.number = 1
_M.PHONE_PHONE_TYPE_HOME_ENUM.name = "HOME"
_M.PHONE_PHONE_TYPE_HOME_ENUM.index = 1
_M.PHONE_PHONE_TYPE_HOME_ENUM.number = 2
_M.PHONE_PHONE_TYPE.name = "PHONE_TYPE"
_M.PHONE_PHONE_TYPE.full_name = ".Phone.PHONE_TYPE"
_M.PHONE_PHONE_TYPE.values = {_M.PHONE_PHONE_TYPE_MOBILE_ENUM,_M.PHONE_PHONE_TYPE_HOME_ENUM}
_M.PHONE_NUM_FIELD.name = "num"
_M.PHONE_NUM_FIELD.full_name = ".Phone.num"
_M.PHONE_NUM_FIELD.number = 1
_M.PHONE_NUM_FIELD.index = 0
_M.PHONE_NUM_FIELD.label = 1
_M.PHONE_NUM_FIELD.has_default_value = false
_M.PHONE_NUM_FIELD.default_value = ""
_M.PHONE_NUM_FIELD.type = 9
_M.PHONE_NUM_FIELD.cpp_type = 9

_M.PHONE_TYPE_FIELD.name = "type"
_M.PHONE_TYPE_FIELD.full_name = ".Phone.type"
_M.PHONE_TYPE_FIELD.number = 2
_M.PHONE_TYPE_FIELD.index = 1
_M.PHONE_TYPE_FIELD.label = 1
_M.PHONE_TYPE_FIELD.has_default_value = false
_M.PHONE_TYPE_FIELD.default_value = nil
_M.PHONE_TYPE_FIELD.enum_type = _M.PHONE_PHONE_TYPE
_M.PHONE_TYPE_FIELD.type = 14
_M.PHONE_TYPE_FIELD.cpp_type = 8

_M.PHONE_PHONES_FIELD.name = "phones"
_M.PHONE_PHONES_FIELD.full_name = ".Phone.phones"
_M.PHONE_PHONES_FIELD.number = 10
_M.PHONE_PHONES_FIELD.index = 0
_M.PHONE_PHONES_FIELD.label = 3
_M.PHONE_PHONES_FIELD.has_default_value = false
_M.PHONE_PHONES_FIELD.default_value = {}
_M.PHONE_PHONES_FIELD.message_type = _M.PHONE
_M.PHONE_PHONES_FIELD.type = 11
_M.PHONE_PHONES_FIELD.cpp_type = 10

_M.PHONE.name = "Phone"
_M.PHONE.full_name = ".Phone"
_M.PHONE.nested_types = {}
_M.PHONE.enum_types = {_M.PHONE_PHONE_TYPE}
_M.PHONE.fields = {_M.PHONE_NUM_FIELD, _M.PHONE_TYPE_FIELD}
_M.PHONE.is_extendable = false
_M.PHONE.extensions = {_M.PHONE_PHONES_FIELD}

_M.Person = protobuf.Message(_M.PERSON)
_M.Phone = protobuf.Message(_M.PHONE)

_M.Person.RegisterExtension(_M.PHONE_PHONES_FIELD)
return _M