1*1c12ee1eSDan Willemsen// Copyright 2019 The Go Authors. All rights reserved. 2*1c12ee1eSDan Willemsen// Use of this source code is governed by a BSD-style 3*1c12ee1eSDan Willemsen// license that can be found in the LICENSE file. 4*1c12ee1eSDan Willemsen 5*1c12ee1eSDan Willemsen// Package descopts contains the nil pointers to concrete descriptor options. 6*1c12ee1eSDan Willemsen// 7*1c12ee1eSDan Willemsen// This package exists as a form of reverse dependency injection so that certain 8*1c12ee1eSDan Willemsen// packages (e.g., internal/filedesc and internal/filetype can avoid a direct 9*1c12ee1eSDan Willemsen// dependency on the descriptor proto package). 10*1c12ee1eSDan Willemsenpackage descopts 11*1c12ee1eSDan Willemsen 12*1c12ee1eSDan Willemsenimport pref "google.golang.org/protobuf/reflect/protoreflect" 13*1c12ee1eSDan Willemsen 14*1c12ee1eSDan Willemsen// These variables are set by the init function in descriptor.pb.go via logic 15*1c12ee1eSDan Willemsen// in internal/filetype. In other words, so long as the descriptor proto package 16*1c12ee1eSDan Willemsen// is linked in, these variables will be populated. 17*1c12ee1eSDan Willemsen// 18*1c12ee1eSDan Willemsen// Each variable is populated with a nil pointer to the options struct. 19*1c12ee1eSDan Willemsenvar ( 20*1c12ee1eSDan Willemsen File pref.ProtoMessage 21*1c12ee1eSDan Willemsen Enum pref.ProtoMessage 22*1c12ee1eSDan Willemsen EnumValue pref.ProtoMessage 23*1c12ee1eSDan Willemsen Message pref.ProtoMessage 24*1c12ee1eSDan Willemsen Field pref.ProtoMessage 25*1c12ee1eSDan Willemsen Oneof pref.ProtoMessage 26*1c12ee1eSDan Willemsen ExtensionRange pref.ProtoMessage 27*1c12ee1eSDan Willemsen Service pref.ProtoMessage 28*1c12ee1eSDan Willemsen Method pref.ProtoMessage 29*1c12ee1eSDan Willemsen) 30