// Code generated by protoc-gen-go.
// source: google/protobuf/descriptor.proto
// DO NOT EDIT!

package google_protobuf

import proto "github.com/golang/protobuf/proto"
import "math"

// Reference proto and math imports to suppress error if they are not otherwise used.
var _ = proto.GetString
var _ = math.Inf

type FieldDescriptorProto_Type int32

const (
	FieldDescriptorProto_TYPE_DOUBLE   FieldDescriptorProto_Type = 1
	FieldDescriptorProto_TYPE_FLOAT    FieldDescriptorProto_Type = 2
	FieldDescriptorProto_TYPE_INT64    FieldDescriptorProto_Type = 3
	FieldDescriptorProto_TYPE_UINT64   FieldDescriptorProto_Type = 4
	FieldDescriptorProto_TYPE_INT32    FieldDescriptorProto_Type = 5
	FieldDescriptorProto_TYPE_FIXED64  FieldDescriptorProto_Type = 6
	FieldDescriptorProto_TYPE_FIXED32  FieldDescriptorProto_Type = 7
	FieldDescriptorProto_TYPE_BOOL     FieldDescriptorProto_Type = 8
	FieldDescriptorProto_TYPE_STRING   FieldDescriptorProto_Type = 9
	FieldDescriptorProto_TYPE_GROUP    FieldDescriptorProto_Type = 10
	FieldDescriptorProto_TYPE_MESSAGE  FieldDescriptorProto_Type = 11
	FieldDescriptorProto_TYPE_BYTES    FieldDescriptorProto_Type = 12
	FieldDescriptorProto_TYPE_UINT32   FieldDescriptorProto_Type = 13
	FieldDescriptorProto_TYPE_ENUM     FieldDescriptorProto_Type = 14
	FieldDescriptorProto_TYPE_SFIXED32 FieldDescriptorProto_Type = 15
	FieldDescriptorProto_TYPE_SFIXED64 FieldDescriptorProto_Type = 16
	FieldDescriptorProto_TYPE_SINT32   FieldDescriptorProto_Type = 17
	FieldDescriptorProto_TYPE_SINT64   FieldDescriptorProto_Type = 18
)

var FieldDescriptorProto_Type_name = map[int32]string{
	1:  "TYPE_DOUBLE",
	2:  "TYPE_FLOAT",
	3:  "TYPE_INT64",
	4:  "TYPE_UINT64",
	5:  "TYPE_INT32",
	6:  "TYPE_FIXED64",
	7:  "TYPE_FIXED32",
	8:  "TYPE_BOOL",
	9:  "TYPE_STRING",
	10: "TYPE_GROUP",
	11: "TYPE_MESSAGE",
	12: "TYPE_BYTES",
	13: "TYPE_UINT32",
	14: "TYPE_ENUM",
	15: "TYPE_SFIXED32",
	16: "TYPE_SFIXED64",
	17: "TYPE_SINT32",
	18: "TYPE_SINT64",
}
var FieldDescriptorProto_Type_value = map[string]int32{
	"TYPE_DOUBLE":   1,
	"TYPE_FLOAT":    2,
	"TYPE_INT64":    3,
	"TYPE_UINT64":   4,
	"TYPE_INT32":    5,
	"TYPE_FIXED64":  6,
	"TYPE_FIXED32":  7,
	"TYPE_BOOL":     8,
	"TYPE_STRING":   9,
	"TYPE_GROUP":    10,
	"TYPE_MESSAGE":  11,
	"TYPE_BYTES":    12,
	"TYPE_UINT32":   13,
	"TYPE_ENUM":     14,
	"TYPE_SFIXED32": 15,
	"TYPE_SFIXED64": 16,
	"TYPE_SINT32":   17,
	"TYPE_SINT64":   18,
}

// NewFieldDescriptorProto_Type is deprecated. Use x.Enum() instead.
func NewFieldDescriptorProto_Type(x FieldDescriptorProto_Type) *FieldDescriptorProto_Type {
	e := FieldDescriptorProto_Type(x)
	return &e
}
func (x FieldDescriptorProto_Type) Enum() *FieldDescriptorProto_Type {
	p := new(FieldDescriptorProto_Type)
	*p = x
	return p
}
func (x FieldDescriptorProto_Type) String() string {
	return proto.EnumName(FieldDescriptorProto_Type_name, int32(x))
}

type FieldDescriptorProto_Label int32

const (
	FieldDescriptorProto_LABEL_OPTIONAL FieldDescriptorProto_Label = 1
	FieldDescriptorProto_LABEL_REQUIRED FieldDescriptorProto_Label = 2
	FieldDescriptorProto_LABEL_REPEATED FieldDescriptorProto_Label = 3
)

var FieldDescriptorProto_Label_name = map[int32]string{
	1: "LABEL_OPTIONAL",
	2: "LABEL_REQUIRED",
	3: "LABEL_REPEATED",
}
var FieldDescriptorProto_Label_value = map[string]int32{
	"LABEL_OPTIONAL": 1,
	"LABEL_REQUIRED": 2,
	"LABEL_REPEATED": 3,
}

// NewFieldDescriptorProto_Label is deprecated. Use x.Enum() instead.
func NewFieldDescriptorProto_Label(x FieldDescriptorProto_Label) *FieldDescriptorProto_Label {
	e := FieldDescriptorProto_Label(x)
	return &e
}
func (x FieldDescriptorProto_Label) Enum() *FieldDescriptorProto_Label {
	p := new(FieldDescriptorProto_Label)
	*p = x
	return p
}
func (x FieldDescriptorProto_Label) String() string {
	return proto.EnumName(FieldDescriptorProto_Label_name, int32(x))
}

type FileOptions_OptimizeMode int32

const (
	FileOptions_SPEED        FileOptions_OptimizeMode = 1
	FileOptions_CODE_SIZE    FileOptions_OptimizeMode = 2
	FileOptions_LITE_RUNTIME FileOptions_OptimizeMode = 3
)

var FileOptions_OptimizeMode_name = map[int32]string{
	1: "SPEED",
	2: "CODE_SIZE",
	3: "LITE_RUNTIME",
}
var FileOptions_OptimizeMode_value = map[string]int32{
	"SPEED":        1,
	"CODE_SIZE":    2,
	"LITE_RUNTIME": 3,
}

// NewFileOptions_OptimizeMode is deprecated. Use x.Enum() instead.
func NewFileOptions_OptimizeMode(x FileOptions_OptimizeMode) *FileOptions_OptimizeMode {
	e := FileOptions_OptimizeMode(x)
	return &e
}
func (x FileOptions_OptimizeMode) Enum() *FileOptions_OptimizeMode {
	p := new(FileOptions_OptimizeMode)
	*p = x
	return p
}
func (x FileOptions_OptimizeMode) String() string {
	return proto.EnumName(FileOptions_OptimizeMode_name, int32(x))
}

type FieldOptions_CType int32

const (
	FieldOptions_STRING       FieldOptions_CType = 0
	FieldOptions_CORD         FieldOptions_CType = 1
	FieldOptions_STRING_PIECE FieldOptions_CType = 2
)

var FieldOptions_CType_name = map[int32]string{
	0: "STRING",
	1: "CORD",
	2: "STRING_PIECE",
}
var FieldOptions_CType_value = map[string]int32{
	"STRING":       0,
	"CORD":         1,
	"STRING_PIECE": 2,
}

// NewFieldOptions_CType is deprecated. Use x.Enum() instead.
func NewFieldOptions_CType(x FieldOptions_CType) *FieldOptions_CType {
	e := FieldOptions_CType(x)
	return &e
}
func (x FieldOptions_CType) Enum() *FieldOptions_CType {
	p := new(FieldOptions_CType)
	*p = x
	return p
}
func (x FieldOptions_CType) String() string {
	return proto.EnumName(FieldOptions_CType_name, int32(x))
}

type StreamOptions_TokenUnit int32

const (
	StreamOptions_MESSAGE StreamOptions_TokenUnit = 0
	StreamOptions_BYTE    StreamOptions_TokenUnit = 1
)

var StreamOptions_TokenUnit_name = map[int32]string{
	0: "MESSAGE",
	1: "BYTE",
}
var StreamOptions_TokenUnit_value = map[string]int32{
	"MESSAGE": 0,
	"BYTE":    1,
}

// NewStreamOptions_TokenUnit is deprecated. Use x.Enum() instead.
func NewStreamOptions_TokenUnit(x StreamOptions_TokenUnit) *StreamOptions_TokenUnit {
	e := StreamOptions_TokenUnit(x)
	return &e
}
func (x StreamOptions_TokenUnit) Enum() *StreamOptions_TokenUnit {
	p := new(StreamOptions_TokenUnit)
	*p = x
	return p
}
func (x StreamOptions_TokenUnit) String() string {
	return proto.EnumName(StreamOptions_TokenUnit_name, int32(x))
}

type FileDescriptorSet struct {
	File             []*FileDescriptorProto `protobuf:"bytes,1,rep,name=file" json:"file,omitempty"`
	XXX_unrecognized []byte                 `json:"-"`
}

func (this *FileDescriptorSet) Reset()         { *this = FileDescriptorSet{} }
func (this *FileDescriptorSet) String() string { return proto.CompactTextString(this) }
func (*FileDescriptorSet) ProtoMessage()       {}

type FileDescriptorProto struct {
	Name             *string                   `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Package          *string                   `protobuf:"bytes,2,opt,name=package" json:"package,omitempty"`
	Dependency       []string                  `protobuf:"bytes,3,rep,name=dependency" json:"dependency,omitempty"`
	PublicDependency []int32                   `protobuf:"varint,10,rep,name=public_dependency" json:"public_dependency,omitempty"`
	WeakDependency   []int32                   `protobuf:"varint,11,rep,name=weak_dependency" json:"weak_dependency,omitempty"`
	MessageType      []*DescriptorProto        `protobuf:"bytes,4,rep,name=message_type" json:"message_type,omitempty"`
	EnumType         []*EnumDescriptorProto    `protobuf:"bytes,5,rep,name=enum_type" json:"enum_type,omitempty"`
	Service          []*ServiceDescriptorProto `protobuf:"bytes,6,rep,name=service" json:"service,omitempty"`
	Extension        []*FieldDescriptorProto   `protobuf:"bytes,7,rep,name=extension" json:"extension,omitempty"`
	Options          *FileOptions              `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"`
	SourceCodeInfo   *SourceCodeInfo           `protobuf:"bytes,9,opt,name=source_code_info" json:"source_code_info,omitempty"`
	XXX_unrecognized []byte                    `json:"-"`
}

func (this *FileDescriptorProto) Reset()         { *this = FileDescriptorProto{} }
func (this *FileDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*FileDescriptorProto) ProtoMessage()       {}

func (this *FileDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *FileDescriptorProto) GetPackage() string {
	if this != nil && this.Package != nil {
		return *this.Package
	}
	return ""
}

func (this *FileDescriptorProto) GetOptions() *FileOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

func (this *FileDescriptorProto) GetSourceCodeInfo() *SourceCodeInfo {
	if this != nil {
		return this.SourceCodeInfo
	}
	return nil
}

type DescriptorProto struct {
	Name             *string                           `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Field            []*FieldDescriptorProto           `protobuf:"bytes,2,rep,name=field" json:"field,omitempty"`
	Extension        []*FieldDescriptorProto           `protobuf:"bytes,6,rep,name=extension" json:"extension,omitempty"`
	NestedType       []*DescriptorProto                `protobuf:"bytes,3,rep,name=nested_type" json:"nested_type,omitempty"`
	EnumType         []*EnumDescriptorProto            `protobuf:"bytes,4,rep,name=enum_type" json:"enum_type,omitempty"`
	ExtensionRange   []*DescriptorProto_ExtensionRange `protobuf:"bytes,5,rep,name=extension_range" json:"extension_range,omitempty"`
	Options          *MessageOptions                   `protobuf:"bytes,7,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized []byte                            `json:"-"`
}

func (this *DescriptorProto) Reset()         { *this = DescriptorProto{} }
func (this *DescriptorProto) String() string { return proto.CompactTextString(this) }
func (*DescriptorProto) ProtoMessage()       {}

func (this *DescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *DescriptorProto) GetOptions() *MessageOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type DescriptorProto_ExtensionRange struct {
	Start            *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"`
	End              *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

func (this *DescriptorProto_ExtensionRange) Reset()         { *this = DescriptorProto_ExtensionRange{} }
func (this *DescriptorProto_ExtensionRange) String() string { return proto.CompactTextString(this) }
func (*DescriptorProto_ExtensionRange) ProtoMessage()       {}

func (this *DescriptorProto_ExtensionRange) GetStart() int32 {
	if this != nil && this.Start != nil {
		return *this.Start
	}
	return 0
}

func (this *DescriptorProto_ExtensionRange) GetEnd() int32 {
	if this != nil && this.End != nil {
		return *this.End
	}
	return 0
}

type FieldDescriptorProto struct {
	Name             *string                     `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Number           *int32                      `protobuf:"varint,3,opt,name=number" json:"number,omitempty"`
	Label            *FieldDescriptorProto_Label `protobuf:"varint,4,opt,name=label,enum=proto2.FieldDescriptorProto_Label" json:"label,omitempty"`
	Type             *FieldDescriptorProto_Type  `protobuf:"varint,5,opt,name=type,enum=proto2.FieldDescriptorProto_Type" json:"type,omitempty"`
	TypeName         *string                     `protobuf:"bytes,6,opt,name=type_name" json:"type_name,omitempty"`
	Extendee         *string                     `protobuf:"bytes,2,opt,name=extendee" json:"extendee,omitempty"`
	DefaultValue     *string                     `protobuf:"bytes,7,opt,name=default_value" json:"default_value,omitempty"`
	Options          *FieldOptions               `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized []byte                      `json:"-"`
}

func (this *FieldDescriptorProto) Reset()         { *this = FieldDescriptorProto{} }
func (this *FieldDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*FieldDescriptorProto) ProtoMessage()       {}

func (this *FieldDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *FieldDescriptorProto) GetNumber() int32 {
	if this != nil && this.Number != nil {
		return *this.Number
	}
	return 0
}

func (this *FieldDescriptorProto) GetLabel() FieldDescriptorProto_Label {
	if this != nil && this.Label != nil {
		return *this.Label
	}
	return 0
}

func (this *FieldDescriptorProto) GetType() FieldDescriptorProto_Type {
	if this != nil && this.Type != nil {
		return *this.Type
	}
	return 0
}

func (this *FieldDescriptorProto) GetTypeName() string {
	if this != nil && this.TypeName != nil {
		return *this.TypeName
	}
	return ""
}

func (this *FieldDescriptorProto) GetExtendee() string {
	if this != nil && this.Extendee != nil {
		return *this.Extendee
	}
	return ""
}

func (this *FieldDescriptorProto) GetDefaultValue() string {
	if this != nil && this.DefaultValue != nil {
		return *this.DefaultValue
	}
	return ""
}

func (this *FieldDescriptorProto) GetOptions() *FieldOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type EnumDescriptorProto struct {
	Name             *string                     `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Value            []*EnumValueDescriptorProto `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"`
	Options          *EnumOptions                `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized []byte                      `json:"-"`
}

func (this *EnumDescriptorProto) Reset()         { *this = EnumDescriptorProto{} }
func (this *EnumDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*EnumDescriptorProto) ProtoMessage()       {}

func (this *EnumDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *EnumDescriptorProto) GetOptions() *EnumOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type EnumValueDescriptorProto struct {
	Name             *string           `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Number           *int32            `protobuf:"varint,2,opt,name=number" json:"number,omitempty"`
	Options          *EnumValueOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized []byte            `json:"-"`
}

func (this *EnumValueDescriptorProto) Reset()         { *this = EnumValueDescriptorProto{} }
func (this *EnumValueDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*EnumValueDescriptorProto) ProtoMessage()       {}

func (this *EnumValueDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *EnumValueDescriptorProto) GetNumber() int32 {
	if this != nil && this.Number != nil {
		return *this.Number
	}
	return 0
}

func (this *EnumValueDescriptorProto) GetOptions() *EnumValueOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type ServiceDescriptorProto struct {
	Name             *string                  `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Method           []*MethodDescriptorProto `protobuf:"bytes,2,rep,name=method" json:"method,omitempty"`
	Stream           []*StreamDescriptorProto `protobuf:"bytes,4,rep,name=stream" json:"stream,omitempty"`
	Options          *ServiceOptions          `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized []byte                   `json:"-"`
}

func (this *ServiceDescriptorProto) Reset()         { *this = ServiceDescriptorProto{} }
func (this *ServiceDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*ServiceDescriptorProto) ProtoMessage()       {}

func (this *ServiceDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *ServiceDescriptorProto) GetOptions() *ServiceOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type MethodDescriptorProto struct {
	Name             *string        `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	InputType        *string        `protobuf:"bytes,2,opt,name=input_type" json:"input_type,omitempty"`
	OutputType       *string        `protobuf:"bytes,3,opt,name=output_type" json:"output_type,omitempty"`
	Options          *MethodOptions `protobuf:"bytes,4,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized []byte         `json:"-"`
}

func (this *MethodDescriptorProto) Reset()         { *this = MethodDescriptorProto{} }
func (this *MethodDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*MethodDescriptorProto) ProtoMessage()       {}

func (this *MethodDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *MethodDescriptorProto) GetInputType() string {
	if this != nil && this.InputType != nil {
		return *this.InputType
	}
	return ""
}

func (this *MethodDescriptorProto) GetOutputType() string {
	if this != nil && this.OutputType != nil {
		return *this.OutputType
	}
	return ""
}

func (this *MethodDescriptorProto) GetOptions() *MethodOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type StreamDescriptorProto struct {
	Name              *string        `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	ClientMessageType *string        `protobuf:"bytes,2,opt,name=client_message_type" json:"client_message_type,omitempty"`
	ServerMessageType *string        `protobuf:"bytes,3,opt,name=server_message_type" json:"server_message_type,omitempty"`
	Options           *StreamOptions `protobuf:"bytes,4,opt,name=options" json:"options,omitempty"`
	XXX_unrecognized  []byte         `json:"-"`
}

func (this *StreamDescriptorProto) Reset()         { *this = StreamDescriptorProto{} }
func (this *StreamDescriptorProto) String() string { return proto.CompactTextString(this) }
func (*StreamDescriptorProto) ProtoMessage()       {}

func (this *StreamDescriptorProto) GetName() string {
	if this != nil && this.Name != nil {
		return *this.Name
	}
	return ""
}

func (this *StreamDescriptorProto) GetClientMessageType() string {
	if this != nil && this.ClientMessageType != nil {
		return *this.ClientMessageType
	}
	return ""
}

func (this *StreamDescriptorProto) GetServerMessageType() string {
	if this != nil && this.ServerMessageType != nil {
		return *this.ServerMessageType
	}
	return ""
}

func (this *StreamDescriptorProto) GetOptions() *StreamOptions {
	if this != nil {
		return this.Options
	}
	return nil
}

type FileOptions struct {
	JavaPackage               *string                   `protobuf:"bytes,1,opt,name=java_package" json:"java_package,omitempty"`
	JavaOuterClassname        *string                   `protobuf:"bytes,8,opt,name=java_outer_classname" json:"java_outer_classname,omitempty"`
	JavaMultipleFiles         *bool                     `protobuf:"varint,10,opt,name=java_multiple_files,def=0" json:"java_multiple_files,omitempty"`
	JavaGenerateEqualsAndHash *bool                     `protobuf:"varint,20,opt,name=java_generate_equals_and_hash,def=0" json:"java_generate_equals_and_hash,omitempty"`
	OptimizeFor               *FileOptions_OptimizeMode `protobuf:"varint,9,opt,name=optimize_for,enum=proto2.FileOptions_OptimizeMode,def=1" json:"optimize_for,omitempty"`
	GoPackage                 *string                   `protobuf:"bytes,11,opt,name=go_package" json:"go_package,omitempty"`
	CcGenericServices         *bool                     `protobuf:"varint,16,opt,name=cc_generic_services,def=0" json:"cc_generic_services,omitempty"`
	JavaGenericServices       *bool                     `protobuf:"varint,17,opt,name=java_generic_services,def=0" json:"java_generic_services,omitempty"`
	PyGenericServices         *bool                     `protobuf:"varint,18,opt,name=py_generic_services,def=0" json:"py_generic_services,omitempty"`
	UninterpretedOption       []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions            map[int32]proto.Extension `json:"-"`
	XXX_unrecognized          []byte                    `json:"-"`
}

func (this *FileOptions) Reset()         { *this = FileOptions{} }
func (this *FileOptions) String() string { return proto.CompactTextString(this) }
func (*FileOptions) ProtoMessage()       {}

var extRange_FileOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*FileOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_FileOptions
}
func (this *FileOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

const Default_FileOptions_JavaMultipleFiles bool = false
const Default_FileOptions_JavaGenerateEqualsAndHash bool = false
const Default_FileOptions_OptimizeFor FileOptions_OptimizeMode = FileOptions_SPEED
const Default_FileOptions_CcGenericServices bool = false
const Default_FileOptions_JavaGenericServices bool = false
const Default_FileOptions_PyGenericServices bool = false

func (this *FileOptions) GetJavaPackage() string {
	if this != nil && this.JavaPackage != nil {
		return *this.JavaPackage
	}
	return ""
}

func (this *FileOptions) GetJavaOuterClassname() string {
	if this != nil && this.JavaOuterClassname != nil {
		return *this.JavaOuterClassname
	}
	return ""
}

func (this *FileOptions) GetJavaMultipleFiles() bool {
	if this != nil && this.JavaMultipleFiles != nil {
		return *this.JavaMultipleFiles
	}
	return Default_FileOptions_JavaMultipleFiles
}

func (this *FileOptions) GetJavaGenerateEqualsAndHash() bool {
	if this != nil && this.JavaGenerateEqualsAndHash != nil {
		return *this.JavaGenerateEqualsAndHash
	}
	return Default_FileOptions_JavaGenerateEqualsAndHash
}

func (this *FileOptions) GetOptimizeFor() FileOptions_OptimizeMode {
	if this != nil && this.OptimizeFor != nil {
		return *this.OptimizeFor
	}
	return Default_FileOptions_OptimizeFor
}

func (this *FileOptions) GetGoPackage() string {
	if this != nil && this.GoPackage != nil {
		return *this.GoPackage
	}
	return ""
}

func (this *FileOptions) GetCcGenericServices() bool {
	if this != nil && this.CcGenericServices != nil {
		return *this.CcGenericServices
	}
	return Default_FileOptions_CcGenericServices
}

func (this *FileOptions) GetJavaGenericServices() bool {
	if this != nil && this.JavaGenericServices != nil {
		return *this.JavaGenericServices
	}
	return Default_FileOptions_JavaGenericServices
}

func (this *FileOptions) GetPyGenericServices() bool {
	if this != nil && this.PyGenericServices != nil {
		return *this.PyGenericServices
	}
	return Default_FileOptions_PyGenericServices
}

type MessageOptions struct {
	MessageSetWireFormat         *bool                     `protobuf:"varint,1,opt,name=message_set_wire_format,def=0" json:"message_set_wire_format,omitempty"`
	NoStandardDescriptorAccessor *bool                     `protobuf:"varint,2,opt,name=no_standard_descriptor_accessor,def=0" json:"no_standard_descriptor_accessor,omitempty"`
	UninterpretedOption          []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions               map[int32]proto.Extension `json:"-"`
	XXX_unrecognized             []byte                    `json:"-"`
}

func (this *MessageOptions) Reset()         { *this = MessageOptions{} }
func (this *MessageOptions) String() string { return proto.CompactTextString(this) }
func (*MessageOptions) ProtoMessage()       {}

var extRange_MessageOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*MessageOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_MessageOptions
}
func (this *MessageOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

const Default_MessageOptions_MessageSetWireFormat bool = false
const Default_MessageOptions_NoStandardDescriptorAccessor bool = false

func (this *MessageOptions) GetMessageSetWireFormat() bool {
	if this != nil && this.MessageSetWireFormat != nil {
		return *this.MessageSetWireFormat
	}
	return Default_MessageOptions_MessageSetWireFormat
}

func (this *MessageOptions) GetNoStandardDescriptorAccessor() bool {
	if this != nil && this.NoStandardDescriptorAccessor != nil {
		return *this.NoStandardDescriptorAccessor
	}
	return Default_MessageOptions_NoStandardDescriptorAccessor
}

type FieldOptions struct {
	Ctype               *FieldOptions_CType       `protobuf:"varint,1,opt,name=ctype,enum=proto2.FieldOptions_CType,def=0" json:"ctype,omitempty"`
	Packed              *bool                     `protobuf:"varint,2,opt,name=packed" json:"packed,omitempty"`
	Lazy                *bool                     `protobuf:"varint,5,opt,name=lazy,def=0" json:"lazy,omitempty"`
	Deprecated          *bool                     `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
	ExperimentalMapKey  *string                   `protobuf:"bytes,9,opt,name=experimental_map_key" json:"experimental_map_key,omitempty"`
	Weak                *bool                     `protobuf:"varint,10,opt,name=weak,def=0" json:"weak,omitempty"`
	UninterpretedOption []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions      map[int32]proto.Extension `json:"-"`
	XXX_unrecognized    []byte                    `json:"-"`
}

func (this *FieldOptions) Reset()         { *this = FieldOptions{} }
func (this *FieldOptions) String() string { return proto.CompactTextString(this) }
func (*FieldOptions) ProtoMessage()       {}

var extRange_FieldOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*FieldOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_FieldOptions
}
func (this *FieldOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

const Default_FieldOptions_Ctype FieldOptions_CType = FieldOptions_STRING
const Default_FieldOptions_Lazy bool = false
const Default_FieldOptions_Deprecated bool = false
const Default_FieldOptions_Weak bool = false

func (this *FieldOptions) GetCtype() FieldOptions_CType {
	if this != nil && this.Ctype != nil {
		return *this.Ctype
	}
	return Default_FieldOptions_Ctype
}

func (this *FieldOptions) GetPacked() bool {
	if this != nil && this.Packed != nil {
		return *this.Packed
	}
	return false
}

func (this *FieldOptions) GetLazy() bool {
	if this != nil && this.Lazy != nil {
		return *this.Lazy
	}
	return Default_FieldOptions_Lazy
}

func (this *FieldOptions) GetDeprecated() bool {
	if this != nil && this.Deprecated != nil {
		return *this.Deprecated
	}
	return Default_FieldOptions_Deprecated
}

func (this *FieldOptions) GetExperimentalMapKey() string {
	if this != nil && this.ExperimentalMapKey != nil {
		return *this.ExperimentalMapKey
	}
	return ""
}

func (this *FieldOptions) GetWeak() bool {
	if this != nil && this.Weak != nil {
		return *this.Weak
	}
	return Default_FieldOptions_Weak
}

type EnumOptions struct {
	AllowAlias          *bool                     `protobuf:"varint,2,opt,name=allow_alias,def=1" json:"allow_alias,omitempty"`
	UninterpretedOption []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions      map[int32]proto.Extension `json:"-"`
	XXX_unrecognized    []byte                    `json:"-"`
}

func (this *EnumOptions) Reset()         { *this = EnumOptions{} }
func (this *EnumOptions) String() string { return proto.CompactTextString(this) }
func (*EnumOptions) ProtoMessage()       {}

var extRange_EnumOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*EnumOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_EnumOptions
}
func (this *EnumOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

const Default_EnumOptions_AllowAlias bool = true

func (this *EnumOptions) GetAllowAlias() bool {
	if this != nil && this.AllowAlias != nil {
		return *this.AllowAlias
	}
	return Default_EnumOptions_AllowAlias
}

type EnumValueOptions struct {
	UninterpretedOption []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions      map[int32]proto.Extension `json:"-"`
	XXX_unrecognized    []byte                    `json:"-"`
}

func (this *EnumValueOptions) Reset()         { *this = EnumValueOptions{} }
func (this *EnumValueOptions) String() string { return proto.CompactTextString(this) }
func (*EnumValueOptions) ProtoMessage()       {}

var extRange_EnumValueOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*EnumValueOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_EnumValueOptions
}
func (this *EnumValueOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

type ServiceOptions struct {
	UninterpretedOption []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions      map[int32]proto.Extension `json:"-"`
	XXX_unrecognized    []byte                    `json:"-"`
}

func (this *ServiceOptions) Reset()         { *this = ServiceOptions{} }
func (this *ServiceOptions) String() string { return proto.CompactTextString(this) }
func (*ServiceOptions) ProtoMessage()       {}

var extRange_ServiceOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*ServiceOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_ServiceOptions
}
func (this *ServiceOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

type MethodOptions struct {
	UninterpretedOption []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions      map[int32]proto.Extension `json:"-"`
	XXX_unrecognized    []byte                    `json:"-"`
}

func (this *MethodOptions) Reset()         { *this = MethodOptions{} }
func (this *MethodOptions) String() string { return proto.CompactTextString(this) }
func (*MethodOptions) ProtoMessage()       {}

var extRange_MethodOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*MethodOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_MethodOptions
}
func (this *MethodOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

type StreamOptions struct {
	UninterpretedOption []*UninterpretedOption    `protobuf:"bytes,999,rep,name=uninterpreted_option" json:"uninterpreted_option,omitempty"`
	XXX_extensions      map[int32]proto.Extension `json:"-"`
	XXX_unrecognized    []byte                    `json:"-"`
}

func (this *StreamOptions) Reset()         { *this = StreamOptions{} }
func (this *StreamOptions) String() string { return proto.CompactTextString(this) }
func (*StreamOptions) ProtoMessage()       {}

var extRange_StreamOptions = []proto.ExtensionRange{
	{1000, 536870911},
}

func (*StreamOptions) ExtensionRangeArray() []proto.ExtensionRange {
	return extRange_StreamOptions
}
func (this *StreamOptions) ExtensionMap() map[int32]proto.Extension {
	if this.XXX_extensions == nil {
		this.XXX_extensions = make(map[int32]proto.Extension)
	}
	return this.XXX_extensions
}

type UninterpretedOption struct {
	Name             []*UninterpretedOption_NamePart `protobuf:"bytes,2,rep,name=name" json:"name,omitempty"`
	IdentifierValue  *string                         `protobuf:"bytes,3,opt,name=identifier_value" json:"identifier_value,omitempty"`
	PositiveIntValue *uint64                         `protobuf:"varint,4,opt,name=positive_int_value" json:"positive_int_value,omitempty"`
	NegativeIntValue *int64                          `protobuf:"varint,5,opt,name=negative_int_value" json:"negative_int_value,omitempty"`
	DoubleValue      *float64                        `protobuf:"fixed64,6,opt,name=double_value" json:"double_value,omitempty"`
	StringValue      []byte                          `protobuf:"bytes,7,opt,name=string_value" json:"string_value,omitempty"`
	AggregateValue   *string                         `protobuf:"bytes,8,opt,name=aggregate_value" json:"aggregate_value,omitempty"`
	XXX_unrecognized []byte                          `json:"-"`
}

func (this *UninterpretedOption) Reset()         { *this = UninterpretedOption{} }
func (this *UninterpretedOption) String() string { return proto.CompactTextString(this) }
func (*UninterpretedOption) ProtoMessage()       {}

func (this *UninterpretedOption) GetIdentifierValue() string {
	if this != nil && this.IdentifierValue != nil {
		return *this.IdentifierValue
	}
	return ""
}

func (this *UninterpretedOption) GetPositiveIntValue() uint64 {
	if this != nil && this.PositiveIntValue != nil {
		return *this.PositiveIntValue
	}
	return 0
}

func (this *UninterpretedOption) GetNegativeIntValue() int64 {
	if this != nil && this.NegativeIntValue != nil {
		return *this.NegativeIntValue
	}
	return 0
}

func (this *UninterpretedOption) GetDoubleValue() float64 {
	if this != nil && this.DoubleValue != nil {
		return *this.DoubleValue
	}
	return 0
}

func (this *UninterpretedOption) GetStringValue() []byte {
	if this != nil {
		return this.StringValue
	}
	return nil
}

func (this *UninterpretedOption) GetAggregateValue() string {
	if this != nil && this.AggregateValue != nil {
		return *this.AggregateValue
	}
	return ""
}

type UninterpretedOption_NamePart struct {
	NamePart         *string `protobuf:"bytes,1,req,name=name_part" json:"name_part,omitempty"`
	IsExtension      *bool   `protobuf:"varint,2,req,name=is_extension" json:"is_extension,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

func (this *UninterpretedOption_NamePart) Reset()         { *this = UninterpretedOption_NamePart{} }
func (this *UninterpretedOption_NamePart) String() string { return proto.CompactTextString(this) }
func (*UninterpretedOption_NamePart) ProtoMessage()       {}

func (this *UninterpretedOption_NamePart) GetNamePart() string {
	if this != nil && this.NamePart != nil {
		return *this.NamePart
	}
	return ""
}

func (this *UninterpretedOption_NamePart) GetIsExtension() bool {
	if this != nil && this.IsExtension != nil {
		return *this.IsExtension
	}
	return false
}

type SourceCodeInfo struct {
	Location         []*SourceCodeInfo_Location `protobuf:"bytes,1,rep,name=location" json:"location,omitempty"`
	XXX_unrecognized []byte                     `json:"-"`
}

func (this *SourceCodeInfo) Reset()         { *this = SourceCodeInfo{} }
func (this *SourceCodeInfo) String() string { return proto.CompactTextString(this) }
func (*SourceCodeInfo) ProtoMessage()       {}

type SourceCodeInfo_Location struct {
	Path             []int32 `protobuf:"varint,1,rep,packed,name=path" json:"path,omitempty"`
	Span             []int32 `protobuf:"varint,2,rep,packed,name=span" json:"span,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

func (this *SourceCodeInfo_Location) Reset()         { *this = SourceCodeInfo_Location{} }
func (this *SourceCodeInfo_Location) String() string { return proto.CompactTextString(this) }
func (*SourceCodeInfo_Location) ProtoMessage()       {}

func init() {
	proto.RegisterEnum("google_protobuf.FieldDescriptorProto_Type", FieldDescriptorProto_Type_name, FieldDescriptorProto_Type_value)
	proto.RegisterEnum("google_protobuf.FieldDescriptorProto_Label", FieldDescriptorProto_Label_name, FieldDescriptorProto_Label_value)
	proto.RegisterEnum("google_protobuf.FileOptions_OptimizeMode", FileOptions_OptimizeMode_name, FileOptions_OptimizeMode_value)
	proto.RegisterEnum("google_protobuf.FieldOptions_CType", FieldOptions_CType_name, FieldOptions_CType_value)
	proto.RegisterEnum("google_protobuf.StreamOptions_TokenUnit", StreamOptions_TokenUnit_name, StreamOptions_TokenUnit_value)
}
