/*
 * Copyright 2017-present Open Networking Foundation

 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at

 * http://www.apache.org/licenses/LICENSE-2.0

 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Code generated by protoc-gen-go.
// source: yang_options.proto
// DO NOT EDIT!

/*
Package voltha is a generated protocol buffer package.

It is generated from these files:
	yang_options.proto

It has these top-level messages:
	InlineNode
	RpcReturnDef
*/
package yang_options

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import google_protobuf "github.com/golang/protobuf/protoc-gen-go/descriptor"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

type MessageParserOption int32

const (
	// Move any enclosing child enum/message definition to the same level
	// as the parent (this message) in the yang generated file
	MessageParserOption_MOVE_TO_PARENT_LEVEL MessageParserOption = 0
	// Create both a grouping and a container for this message.  The container
	// name will be the message name.  The grouping name will be the message
	// name prefixed with "grouping_"
	MessageParserOption_CREATE_BOTH_GROUPING_AND_CONTAINER MessageParserOption = 1
)

var MessageParserOption_name = map[int32]string{
	0: "MOVE_TO_PARENT_LEVEL",
	1: "CREATE_BOTH_GROUPING_AND_CONTAINER",
}
var MessageParserOption_value = map[string]int32{
	"MOVE_TO_PARENT_LEVEL":               0,
	"CREATE_BOTH_GROUPING_AND_CONTAINER": 1,
}

func (x MessageParserOption) String() string {
	return proto.EnumName(MessageParserOption_name, int32(x))
}
func (MessageParserOption) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }

type InlineNode struct {
	Id   string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
	Type string `protobuf:"bytes,2,opt,name=type" json:"type,omitempty"`
}

func (m *InlineNode) Reset()                    { *m = InlineNode{} }
func (m *InlineNode) String() string            { return proto.CompactTextString(m) }
func (*InlineNode) ProtoMessage()               {}
func (*InlineNode) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }

func (m *InlineNode) GetId() string {
	if m != nil {
		return m.Id
	}
	return ""
}

func (m *InlineNode) GetType() string {
	if m != nil {
		return m.Type
	}
	return ""
}

type RpcReturnDef struct {
	// The gRPC methods return message types.  NETCONF expects an actual
	// attribute as defined in the YANG schema.  The xnl_tag will be used
	// as the top most tag when translating a gRPC response into an xml
	// response
	XmlTag string `protobuf:"bytes,1,opt,name=xml_tag,json=xmlTag" json:"xml_tag,omitempty"`
	// When the gRPC response is a list of items, we need to differentiate
	// between a YANG schema attribute whose name is "items" and when "items"
	// is used only to indicate a list of items is being returned.  The default
	// behavior assumes a list is returned when "items" is present in
	// the response.  This option will therefore be used when the attribute
	// name in the YANG schema is 'items'
	ListItemsName string `protobuf:"bytes,2,opt,name=list_items_name,json=listItemsName" json:"list_items_name,omitempty"`
}

func (m *RpcReturnDef) Reset()                    { *m = RpcReturnDef{} }
func (m *RpcReturnDef) String() string            { return proto.CompactTextString(m) }
func (*RpcReturnDef) ProtoMessage()               {}
func (*RpcReturnDef) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }

func (m *RpcReturnDef) GetXmlTag() string {
	if m != nil {
		return m.XmlTag
	}
	return ""
}

func (m *RpcReturnDef) GetListItemsName() string {
	if m != nil {
		return m.ListItemsName
	}
	return ""
}

var E_YangChildRule = &proto.ExtensionDesc{
	ExtendedType:  (*google_protobuf.MessageOptions)(nil),
	ExtensionType: (*MessageParserOption)(nil),
	Field:         7761774,
	Name:          "voltha.yang_child_rule",
	Tag:           "varint,7761774,opt,name=yang_child_rule,json=yangChildRule,enum=voltha.MessageParserOption",
	Filename:      "yang_options.proto",
}

var E_YangMessageRule = &proto.ExtensionDesc{
	ExtendedType:  (*google_protobuf.MessageOptions)(nil),
	ExtensionType: (*MessageParserOption)(nil),
	Field:         7761775,
	Name:          "voltha.yang_message_rule",
	Tag:           "varint,7761775,opt,name=yang_message_rule,json=yangMessageRule,enum=voltha.MessageParserOption",
	Filename:      "yang_options.proto",
}

var E_YangInlineNode = &proto.ExtensionDesc{
	ExtendedType:  (*google_protobuf.FieldOptions)(nil),
	ExtensionType: (*InlineNode)(nil),
	Field:         7761776,
	Name:          "voltha.yang_inline_node",
	Tag:           "bytes,7761776,opt,name=yang_inline_node,json=yangInlineNode",
	Filename:      "yang_options.proto",
}

var E_YangXmlTag = &proto.ExtensionDesc{
	ExtendedType:  (*google_protobuf.MethodOptions)(nil),
	ExtensionType: (*RpcReturnDef)(nil),
	Field:         7761777,
	Name:          "voltha.yang_xml_tag",
	Tag:           "bytes,7761777,opt,name=yang_xml_tag,json=yangXmlTag",
	Filename:      "yang_options.proto",
}

func init() {
	proto.RegisterType((*InlineNode)(nil), "voltha.InlineNode")
	proto.RegisterType((*RpcReturnDef)(nil), "voltha.RpcReturnDef")
	proto.RegisterEnum("voltha.MessageParserOption", MessageParserOption_name, MessageParserOption_value)
	proto.RegisterExtension(E_YangChildRule)
	proto.RegisterExtension(E_YangMessageRule)
	proto.RegisterExtension(E_YangInlineNode)
	proto.RegisterExtension(E_YangXmlTag)
}

func init() { proto.RegisterFile("yang_options.proto", fileDescriptor0) }

var fileDescriptor0 = []byte{
	// 416 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0xcf, 0x8e, 0xd3, 0x30,
	0x10, 0x87, 0x49, 0x41, 0x45, 0x0c, 0xbb, 0xdd, 0x62, 0x56, 0x22, 0x02, 0x01, 0x55, 0x0f, 0xab,
	0x15, 0x87, 0x2c, 0x5a, 0x6e, 0xbd, 0x85, 0x6e, 0x28, 0x91, 0xda, 0xa4, 0xb2, 0x42, 0x81, 0x0b,
	0x96, 0xdb, 0xb8, 0xa9, 0x85, 0x13, 0x47, 0xb1, 0x83, 0xda, 0x47, 0xe5, 0xc2, 0x23, 0xf0, 0xe7,
	0x0d, 0x50, 0x9c, 0x84, 0x22, 0x6d, 0x0f, 0xbd, 0x25, 0x13, 0xe7, 0xfb, 0x3c, 0xf3, 0x1b, 0x40,
	0x3b, 0x9a, 0x25, 0x44, 0xe6, 0x9a, 0xcb, 0x4c, 0x39, 0x79, 0x21, 0xb5, 0x44, 0xdd, 0x6f, 0x52,
	0xe8, 0x0d, 0x7d, 0x3a, 0x48, 0xa4, 0x4c, 0x04, 0xbb, 0x32, 0xd5, 0x65, 0xb9, 0xbe, 0x8a, 0x99,
	0x5a, 0x15, 0x3c, 0xd7, 0xb2, 0xa8, 0x4f, 0x0e, 0x5f, 0x03, 0xf8, 0x99, 0xe0, 0x19, 0x0b, 0x64,
	0xcc, 0x50, 0x0f, 0x3a, 0x3c, 0xb6, 0xad, 0x81, 0x75, 0xf9, 0x00, 0x77, 0x78, 0x8c, 0x10, 0xdc,
	0xd3, 0xbb, 0x9c, 0xd9, 0x1d, 0x53, 0x31, 0xcf, 0xc3, 0x10, 0x4e, 0x70, 0xbe, 0xc2, 0x4c, 0x97,
	0x45, 0x76, 0xc3, 0xd6, 0xe8, 0x09, 0xdc, 0xdf, 0xa6, 0x82, 0x68, 0x9a, 0x34, 0x3f, 0x76, 0xb7,
	0xa9, 0x88, 0x68, 0x82, 0x2e, 0xe0, 0x4c, 0x70, 0xa5, 0x09, 0xd7, 0x2c, 0x55, 0x24, 0xa3, 0x69,
	0xcb, 0x39, 0xad, 0xca, 0x7e, 0x55, 0x0d, 0x68, 0xca, 0x5e, 0x7d, 0x84, 0xc7, 0x33, 0xa6, 0x14,
	0x4d, 0xd8, 0x9c, 0x16, 0x8a, 0x15, 0xa1, 0x69, 0x05, 0xd9, 0x70, 0x3e, 0x0b, 0x17, 0x1e, 0x89,
	0x42, 0x32, 0x77, 0xb1, 0x17, 0x44, 0x64, 0xea, 0x2d, 0xbc, 0x69, 0xff, 0x0e, 0xba, 0x80, 0xe1,
	0x18, 0x7b, 0x6e, 0xe4, 0x91, 0xb7, 0x61, 0xf4, 0x9e, 0x4c, 0x70, 0xf8, 0x61, 0xee, 0x07, 0x13,
	0xe2, 0x06, 0x37, 0x64, 0x1c, 0x06, 0x91, 0xeb, 0x07, 0x1e, 0xee, 0x5b, 0xa3, 0x04, 0xce, 0xcc,
	0x6c, 0x56, 0x1b, 0x2e, 0x62, 0x52, 0x94, 0x82, 0xa1, 0x97, 0x4e, 0x3d, 0x11, 0xa7, 0x9d, 0x88,
	0xd3, 0xa8, 0x6b, 0xa9, 0xb2, 0x7f, 0xfe, 0xf8, 0x7e, 0x77, 0x60, 0x5d, 0xf6, 0xae, 0x9f, 0x39,
	0xf5, 0x0c, 0x9d, 0x03, 0x77, 0xc3, 0xa7, 0x15, 0x77, 0x5c, 0x61, 0x71, 0x29, 0xd8, 0xe8, 0x2b,
	0x3c, 0x32, 0xa2, 0xb4, 0x3e, 0x7a, 0xa4, 0xea, 0xd7, 0x51, 0x2a, 0xd3, 0x42, 0xf3, 0xc1, 0xc8,
	0xbe, 0x40, 0xdf, 0xc8, 0xb8, 0x89, 0x8d, 0x64, 0x55, 0x6e, 0xcf, 0x6f, 0xb9, 0xde, 0x71, 0x26,
	0xe2, 0xd6, 0xf4, 0xbb, 0x36, 0x3d, 0xbc, 0x46, 0xad, 0x69, 0x9f, 0x39, 0xee, 0x55, 0xb4, 0xfd,
	0xfb, 0xe8, 0x33, 0x9c, 0x18, 0x7e, 0x13, 0x2a, 0x7a, 0x71, 0xa0, 0x0f, 0xbd, 0x91, 0xff, 0xe0,
	0x7f, 0x5a, 0xf8, 0x79, 0x0b, 0xff, 0x7f, 0x3d, 0x30, 0x54, 0xb0, 0x4f, 0x66, 0x23, 0x96, 0x5d,
	0x83, 0x78, 0xf3, 0x37, 0x00, 0x00, 0xff, 0xff, 0x4e, 0x8b, 0xcb, 0x68, 0xb3, 0x02, 0x00, 0x00,
}
