mirror of
				https://gitea.com/Lydanne/buildx.git
				synced 2025-11-04 18:13:42 +08:00 
			
		
		
		
	vendor: update buildkit v0.14-dev version 549891b
Brings in formatter for lint requests. Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
This commit is contained in:
		
							
								
								
									
										183
									
								
								vendor/google.golang.org/protobuf/internal/descfmt/stringer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										183
									
								
								vendor/google.golang.org/protobuf/internal/descfmt/stringer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -83,7 +83,13 @@ func formatListOpt(vs list, isRoot, allowMulti bool) string {
 | 
			
		||||
	case protoreflect.FileImports:
 | 
			
		||||
		for i := 0; i < vs.Len(); i++ {
 | 
			
		||||
			var rs records
 | 
			
		||||
			rs.Append(reflect.ValueOf(vs.Get(i)), "Path", "Package", "IsPublic", "IsWeak")
 | 
			
		||||
			rv := reflect.ValueOf(vs.Get(i))
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Path"), "Path"},
 | 
			
		||||
				{rv.MethodByName("Package"), "Package"},
 | 
			
		||||
				{rv.MethodByName("IsPublic"), "IsPublic"},
 | 
			
		||||
				{rv.MethodByName("IsWeak"), "IsWeak"},
 | 
			
		||||
			}...)
 | 
			
		||||
			ss = append(ss, "{"+rs.Join()+"}")
 | 
			
		||||
		}
 | 
			
		||||
		return start + joinStrings(ss, allowMulti) + end
 | 
			
		||||
@@ -92,34 +98,26 @@ func formatListOpt(vs list, isRoot, allowMulti bool) string {
 | 
			
		||||
		for i := 0; i < vs.Len(); i++ {
 | 
			
		||||
			m := reflect.ValueOf(vs).MethodByName("Get")
 | 
			
		||||
			v := m.Call([]reflect.Value{reflect.ValueOf(i)})[0].Interface()
 | 
			
		||||
			ss = append(ss, formatDescOpt(v.(protoreflect.Descriptor), false, allowMulti && !isEnumValue))
 | 
			
		||||
			ss = append(ss, formatDescOpt(v.(protoreflect.Descriptor), false, allowMulti && !isEnumValue, nil))
 | 
			
		||||
		}
 | 
			
		||||
		return start + joinStrings(ss, allowMulti && isEnumValue) + end
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// descriptorAccessors is a list of accessors to print for each descriptor.
 | 
			
		||||
//
 | 
			
		||||
// Do not print all accessors since some contain redundant information,
 | 
			
		||||
// while others are pointers that we do not want to follow since the descriptor
 | 
			
		||||
// is actually a cyclic graph.
 | 
			
		||||
//
 | 
			
		||||
// Using a list allows us to print the accessors in a sensible order.
 | 
			
		||||
var descriptorAccessors = map[reflect.Type][]string{
 | 
			
		||||
	reflect.TypeOf((*protoreflect.FileDescriptor)(nil)).Elem():      {"Path", "Package", "Imports", "Messages", "Enums", "Extensions", "Services"},
 | 
			
		||||
	reflect.TypeOf((*protoreflect.MessageDescriptor)(nil)).Elem():   {"IsMapEntry", "Fields", "Oneofs", "ReservedNames", "ReservedRanges", "RequiredNumbers", "ExtensionRanges", "Messages", "Enums", "Extensions"},
 | 
			
		||||
	reflect.TypeOf((*protoreflect.FieldDescriptor)(nil)).Elem():     {"Number", "Cardinality", "Kind", "HasJSONName", "JSONName", "HasPresence", "IsExtension", "IsPacked", "IsWeak", "IsList", "IsMap", "MapKey", "MapValue", "HasDefault", "Default", "ContainingOneof", "ContainingMessage", "Message", "Enum"},
 | 
			
		||||
	reflect.TypeOf((*protoreflect.OneofDescriptor)(nil)).Elem():     {"Fields"}, // not directly used; must keep in sync with formatDescOpt
 | 
			
		||||
	reflect.TypeOf((*protoreflect.EnumDescriptor)(nil)).Elem():      {"Values", "ReservedNames", "ReservedRanges"},
 | 
			
		||||
	reflect.TypeOf((*protoreflect.EnumValueDescriptor)(nil)).Elem(): {"Number"},
 | 
			
		||||
	reflect.TypeOf((*protoreflect.ServiceDescriptor)(nil)).Elem():   {"Methods"},
 | 
			
		||||
	reflect.TypeOf((*protoreflect.MethodDescriptor)(nil)).Elem():    {"Input", "Output", "IsStreamingClient", "IsStreamingServer"},
 | 
			
		||||
type methodAndName struct {
 | 
			
		||||
	method reflect.Value
 | 
			
		||||
	name   string
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func FormatDesc(s fmt.State, r rune, t protoreflect.Descriptor) {
 | 
			
		||||
	io.WriteString(s, formatDescOpt(t, true, r == 'v' && (s.Flag('+') || s.Flag('#'))))
 | 
			
		||||
	io.WriteString(s, formatDescOpt(t, true, r == 'v' && (s.Flag('+') || s.Flag('#')), nil))
 | 
			
		||||
}
 | 
			
		||||
func formatDescOpt(t protoreflect.Descriptor, isRoot, allowMulti bool) string {
 | 
			
		||||
 | 
			
		||||
func InternalFormatDescOptForTesting(t protoreflect.Descriptor, isRoot, allowMulti bool, record func(string)) string {
 | 
			
		||||
	return formatDescOpt(t, isRoot, allowMulti, record)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func formatDescOpt(t protoreflect.Descriptor, isRoot, allowMulti bool, record func(string)) string {
 | 
			
		||||
	rv := reflect.ValueOf(t)
 | 
			
		||||
	rt := rv.MethodByName("ProtoType").Type().In(0)
 | 
			
		||||
 | 
			
		||||
@@ -129,26 +127,60 @@ func formatDescOpt(t protoreflect.Descriptor, isRoot, allowMulti bool) string {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	_, isFile := t.(protoreflect.FileDescriptor)
 | 
			
		||||
	rs := records{allowMulti: allowMulti}
 | 
			
		||||
	rs := records{
 | 
			
		||||
		allowMulti: allowMulti,
 | 
			
		||||
		record:     record,
 | 
			
		||||
	}
 | 
			
		||||
	if t.IsPlaceholder() {
 | 
			
		||||
		if isFile {
 | 
			
		||||
			rs.Append(rv, "Path", "Package", "IsPlaceholder")
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Path"), "Path"},
 | 
			
		||||
				{rv.MethodByName("Package"), "Package"},
 | 
			
		||||
				{rv.MethodByName("IsPlaceholder"), "IsPlaceholder"},
 | 
			
		||||
			}...)
 | 
			
		||||
		} else {
 | 
			
		||||
			rs.Append(rv, "FullName", "IsPlaceholder")
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("FullName"), "FullName"},
 | 
			
		||||
				{rv.MethodByName("IsPlaceholder"), "IsPlaceholder"},
 | 
			
		||||
			}...)
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		switch {
 | 
			
		||||
		case isFile:
 | 
			
		||||
			rs.Append(rv, "Syntax")
 | 
			
		||||
			rs.Append(rv, methodAndName{rv.MethodByName("Syntax"), "Syntax"})
 | 
			
		||||
		case isRoot:
 | 
			
		||||
			rs.Append(rv, "Syntax", "FullName")
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Syntax"), "Syntax"},
 | 
			
		||||
				{rv.MethodByName("FullName"), "FullName"},
 | 
			
		||||
			}...)
 | 
			
		||||
		default:
 | 
			
		||||
			rs.Append(rv, "Name")
 | 
			
		||||
			rs.Append(rv, methodAndName{rv.MethodByName("Name"), "Name"})
 | 
			
		||||
		}
 | 
			
		||||
		switch t := t.(type) {
 | 
			
		||||
		case protoreflect.FieldDescriptor:
 | 
			
		||||
			for _, s := range descriptorAccessors[rt] {
 | 
			
		||||
				switch s {
 | 
			
		||||
			accessors := []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Number"), "Number"},
 | 
			
		||||
				{rv.MethodByName("Cardinality"), "Cardinality"},
 | 
			
		||||
				{rv.MethodByName("Kind"), "Kind"},
 | 
			
		||||
				{rv.MethodByName("HasJSONName"), "HasJSONName"},
 | 
			
		||||
				{rv.MethodByName("JSONName"), "JSONName"},
 | 
			
		||||
				{rv.MethodByName("HasPresence"), "HasPresence"},
 | 
			
		||||
				{rv.MethodByName("IsExtension"), "IsExtension"},
 | 
			
		||||
				{rv.MethodByName("IsPacked"), "IsPacked"},
 | 
			
		||||
				{rv.MethodByName("IsWeak"), "IsWeak"},
 | 
			
		||||
				{rv.MethodByName("IsList"), "IsList"},
 | 
			
		||||
				{rv.MethodByName("IsMap"), "IsMap"},
 | 
			
		||||
				{rv.MethodByName("MapKey"), "MapKey"},
 | 
			
		||||
				{rv.MethodByName("MapValue"), "MapValue"},
 | 
			
		||||
				{rv.MethodByName("HasDefault"), "HasDefault"},
 | 
			
		||||
				{rv.MethodByName("Default"), "Default"},
 | 
			
		||||
				{rv.MethodByName("ContainingOneof"), "ContainingOneof"},
 | 
			
		||||
				{rv.MethodByName("ContainingMessage"), "ContainingMessage"},
 | 
			
		||||
				{rv.MethodByName("Message"), "Message"},
 | 
			
		||||
				{rv.MethodByName("Enum"), "Enum"},
 | 
			
		||||
			}
 | 
			
		||||
			for _, s := range accessors {
 | 
			
		||||
				switch s.name {
 | 
			
		||||
				case "MapKey":
 | 
			
		||||
					if k := t.MapKey(); k != nil {
 | 
			
		||||
						rs.recs = append(rs.recs, [2]string{"MapKey", k.Kind().String()})
 | 
			
		||||
@@ -157,20 +189,20 @@ func formatDescOpt(t protoreflect.Descriptor, isRoot, allowMulti bool) string {
 | 
			
		||||
					if v := t.MapValue(); v != nil {
 | 
			
		||||
						switch v.Kind() {
 | 
			
		||||
						case protoreflect.EnumKind:
 | 
			
		||||
							rs.recs = append(rs.recs, [2]string{"MapValue", string(v.Enum().FullName())})
 | 
			
		||||
							rs.AppendRecs("MapValue", [2]string{"MapValue", string(v.Enum().FullName())})
 | 
			
		||||
						case protoreflect.MessageKind, protoreflect.GroupKind:
 | 
			
		||||
							rs.recs = append(rs.recs, [2]string{"MapValue", string(v.Message().FullName())})
 | 
			
		||||
							rs.AppendRecs("MapValue", [2]string{"MapValue", string(v.Message().FullName())})
 | 
			
		||||
						default:
 | 
			
		||||
							rs.recs = append(rs.recs, [2]string{"MapValue", v.Kind().String()})
 | 
			
		||||
							rs.AppendRecs("MapValue", [2]string{"MapValue", v.Kind().String()})
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				case "ContainingOneof":
 | 
			
		||||
					if od := t.ContainingOneof(); od != nil {
 | 
			
		||||
						rs.recs = append(rs.recs, [2]string{"Oneof", string(od.Name())})
 | 
			
		||||
						rs.AppendRecs("ContainingOneof", [2]string{"Oneof", string(od.Name())})
 | 
			
		||||
					}
 | 
			
		||||
				case "ContainingMessage":
 | 
			
		||||
					if t.IsExtension() {
 | 
			
		||||
						rs.recs = append(rs.recs, [2]string{"Extendee", string(t.ContainingMessage().FullName())})
 | 
			
		||||
						rs.AppendRecs("ContainingMessage", [2]string{"Extendee", string(t.ContainingMessage().FullName())})
 | 
			
		||||
					}
 | 
			
		||||
				case "Message":
 | 
			
		||||
					if !t.IsMap() {
 | 
			
		||||
@@ -187,13 +219,61 @@ func formatDescOpt(t protoreflect.Descriptor, isRoot, allowMulti bool) string {
 | 
			
		||||
				ss = append(ss, string(fs.Get(i).Name()))
 | 
			
		||||
			}
 | 
			
		||||
			if len(ss) > 0 {
 | 
			
		||||
				rs.recs = append(rs.recs, [2]string{"Fields", "[" + joinStrings(ss, false) + "]"})
 | 
			
		||||
				rs.AppendRecs("Fields", [2]string{"Fields", "[" + joinStrings(ss, false) + "]"})
 | 
			
		||||
			}
 | 
			
		||||
		default:
 | 
			
		||||
			rs.Append(rv, descriptorAccessors[rt]...)
 | 
			
		||||
 | 
			
		||||
		case protoreflect.FileDescriptor:
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Path"), "Path"},
 | 
			
		||||
				{rv.MethodByName("Package"), "Package"},
 | 
			
		||||
				{rv.MethodByName("Imports"), "Imports"},
 | 
			
		||||
				{rv.MethodByName("Messages"), "Messages"},
 | 
			
		||||
				{rv.MethodByName("Enums"), "Enums"},
 | 
			
		||||
				{rv.MethodByName("Extensions"), "Extensions"},
 | 
			
		||||
				{rv.MethodByName("Services"), "Services"},
 | 
			
		||||
			}...)
 | 
			
		||||
 | 
			
		||||
		case protoreflect.MessageDescriptor:
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("IsMapEntry"), "IsMapEntry"},
 | 
			
		||||
				{rv.MethodByName("Fields"), "Fields"},
 | 
			
		||||
				{rv.MethodByName("Oneofs"), "Oneofs"},
 | 
			
		||||
				{rv.MethodByName("ReservedNames"), "ReservedNames"},
 | 
			
		||||
				{rv.MethodByName("ReservedRanges"), "ReservedRanges"},
 | 
			
		||||
				{rv.MethodByName("RequiredNumbers"), "RequiredNumbers"},
 | 
			
		||||
				{rv.MethodByName("ExtensionRanges"), "ExtensionRanges"},
 | 
			
		||||
				{rv.MethodByName("Messages"), "Messages"},
 | 
			
		||||
				{rv.MethodByName("Enums"), "Enums"},
 | 
			
		||||
				{rv.MethodByName("Extensions"), "Extensions"},
 | 
			
		||||
			}...)
 | 
			
		||||
 | 
			
		||||
		case protoreflect.EnumDescriptor:
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Values"), "Values"},
 | 
			
		||||
				{rv.MethodByName("ReservedNames"), "ReservedNames"},
 | 
			
		||||
				{rv.MethodByName("ReservedRanges"), "ReservedRanges"},
 | 
			
		||||
			}...)
 | 
			
		||||
 | 
			
		||||
		case protoreflect.EnumValueDescriptor:
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Number"), "Number"},
 | 
			
		||||
			}...)
 | 
			
		||||
 | 
			
		||||
		case protoreflect.ServiceDescriptor:
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Methods"), "Methods"},
 | 
			
		||||
			}...)
 | 
			
		||||
 | 
			
		||||
		case protoreflect.MethodDescriptor:
 | 
			
		||||
			rs.Append(rv, []methodAndName{
 | 
			
		||||
				{rv.MethodByName("Input"), "Input"},
 | 
			
		||||
				{rv.MethodByName("Output"), "Output"},
 | 
			
		||||
				{rv.MethodByName("IsStreamingClient"), "IsStreamingClient"},
 | 
			
		||||
				{rv.MethodByName("IsStreamingServer"), "IsStreamingServer"},
 | 
			
		||||
			}...)
 | 
			
		||||
		}
 | 
			
		||||
		if rv.MethodByName("GoType").IsValid() {
 | 
			
		||||
			rs.Append(rv, "GoType")
 | 
			
		||||
		if m := rv.MethodByName("GoType"); m.IsValid() {
 | 
			
		||||
			rs.Append(rv, methodAndName{m, "GoType"})
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	return start + rs.Join() + end
 | 
			
		||||
@@ -202,19 +282,34 @@ func formatDescOpt(t protoreflect.Descriptor, isRoot, allowMulti bool) string {
 | 
			
		||||
type records struct {
 | 
			
		||||
	recs       [][2]string
 | 
			
		||||
	allowMulti bool
 | 
			
		||||
 | 
			
		||||
	// record is a function that will be called for every Append() or
 | 
			
		||||
	// AppendRecs() call, to be used for testing with the
 | 
			
		||||
	// InternalFormatDescOptForTesting function.
 | 
			
		||||
	record func(string)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (rs *records) Append(v reflect.Value, accessors ...string) {
 | 
			
		||||
func (rs *records) AppendRecs(fieldName string, newRecs [2]string) {
 | 
			
		||||
	if rs.record != nil {
 | 
			
		||||
		rs.record(fieldName)
 | 
			
		||||
	}
 | 
			
		||||
	rs.recs = append(rs.recs, newRecs)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (rs *records) Append(v reflect.Value, accessors ...methodAndName) {
 | 
			
		||||
	for _, a := range accessors {
 | 
			
		||||
		if rs.record != nil {
 | 
			
		||||
			rs.record(a.name)
 | 
			
		||||
		}
 | 
			
		||||
		var rv reflect.Value
 | 
			
		||||
		if m := v.MethodByName(a); m.IsValid() {
 | 
			
		||||
			rv = m.Call(nil)[0]
 | 
			
		||||
		if a.method.IsValid() {
 | 
			
		||||
			rv = a.method.Call(nil)[0]
 | 
			
		||||
		}
 | 
			
		||||
		if v.Kind() == reflect.Struct && !rv.IsValid() {
 | 
			
		||||
			rv = v.FieldByName(a)
 | 
			
		||||
			rv = v.FieldByName(a.name)
 | 
			
		||||
		}
 | 
			
		||||
		if !rv.IsValid() {
 | 
			
		||||
			panic(fmt.Sprintf("unknown accessor: %v.%s", v.Type(), a))
 | 
			
		||||
			panic(fmt.Sprintf("unknown accessor: %v.%s", v.Type(), a.name))
 | 
			
		||||
		}
 | 
			
		||||
		if _, ok := rv.Interface().(protoreflect.Value); ok {
 | 
			
		||||
			rv = rv.MethodByName("Interface").Call(nil)[0]
 | 
			
		||||
@@ -261,7 +356,7 @@ func (rs *records) Append(v reflect.Value, accessors ...string) {
 | 
			
		||||
		default:
 | 
			
		||||
			s = fmt.Sprint(v)
 | 
			
		||||
		}
 | 
			
		||||
		rs.recs = append(rs.recs, [2]string{a, s})
 | 
			
		||||
		rs.recs = append(rs.recs, [2]string{a.name, s})
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								vendor/google.golang.org/protobuf/internal/editiondefaults/defaults.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								vendor/google.golang.org/protobuf/internal/editiondefaults/defaults.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
// Copyright 2024 The Go Authors. All rights reserved.
 | 
			
		||||
// Use of this source code is governed by a BSD-style
 | 
			
		||||
// license that can be found in the LICENSE file.
 | 
			
		||||
 | 
			
		||||
// Package editiondefaults contains the binary representation of the editions
 | 
			
		||||
// defaults.
 | 
			
		||||
package editiondefaults
 | 
			
		||||
 | 
			
		||||
import _ "embed"
 | 
			
		||||
 | 
			
		||||
//go:embed editions_defaults.binpb
 | 
			
		||||
var Defaults []byte
 | 
			
		||||
							
								
								
									
										4
									
								
								vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
 | 
			
		||||
 (0<18>
 | 
			
		||||
 (0<18>
 | 
			
		||||
 (0<18> <20>(<28>
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/encoding/json/decode.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/encoding/json/decode.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -121,7 +121,7 @@ func (d *Decoder) Read() (Token, error) {
 | 
			
		||||
 | 
			
		||||
	case ObjectClose:
 | 
			
		||||
		if len(d.openStack) == 0 ||
 | 
			
		||||
			d.lastToken.kind == comma ||
 | 
			
		||||
			d.lastToken.kind&(Name|comma) != 0 ||
 | 
			
		||||
			d.openStack[len(d.openStack)-1] != ObjectOpen {
 | 
			
		||||
			return Token{}, d.newSyntaxError(tok.pos, unexpectedFmt, tok.RawString())
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										102
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/desc.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										102
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/desc.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -21,11 +21,26 @@ import (
 | 
			
		||||
	"google.golang.org/protobuf/reflect/protoregistry"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Edition is an Enum for proto2.Edition
 | 
			
		||||
type Edition int32
 | 
			
		||||
 | 
			
		||||
// These values align with the value of Enum in descriptor.proto which allows
 | 
			
		||||
// direct conversion between the proto enum and this enum.
 | 
			
		||||
const (
 | 
			
		||||
	EditionUnknown     Edition = 0
 | 
			
		||||
	EditionProto2      Edition = 998
 | 
			
		||||
	EditionProto3      Edition = 999
 | 
			
		||||
	Edition2023        Edition = 1000
 | 
			
		||||
	EditionUnsupported Edition = 100000
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// The types in this file may have a suffix:
 | 
			
		||||
//	• L0: Contains fields common to all descriptors (except File) and
 | 
			
		||||
//	must be initialized up front.
 | 
			
		||||
//	• L1: Contains fields specific to a descriptor and
 | 
			
		||||
//	must be initialized up front.
 | 
			
		||||
//	must be initialized up front. If the associated proto uses Editions, the
 | 
			
		||||
//  Editions features must always be resolved. If not explicitly set, the
 | 
			
		||||
//  appropriate default must be resolved and set.
 | 
			
		||||
//	• L2: Contains fields that are lazily initialized when constructing
 | 
			
		||||
//	from the raw file descriptor. When constructing as a literal, the L2
 | 
			
		||||
//	fields must be initialized up front.
 | 
			
		||||
@@ -44,6 +59,7 @@ type (
 | 
			
		||||
	}
 | 
			
		||||
	FileL1 struct {
 | 
			
		||||
		Syntax  protoreflect.Syntax
 | 
			
		||||
		Edition Edition // Only used if Syntax == Editions
 | 
			
		||||
		Path    string
 | 
			
		||||
		Package protoreflect.FullName
 | 
			
		||||
 | 
			
		||||
@@ -51,12 +67,41 @@ type (
 | 
			
		||||
		Messages   Messages
 | 
			
		||||
		Extensions Extensions
 | 
			
		||||
		Services   Services
 | 
			
		||||
 | 
			
		||||
		EditionFeatures EditionFeatures
 | 
			
		||||
	}
 | 
			
		||||
	FileL2 struct {
 | 
			
		||||
		Options   func() protoreflect.ProtoMessage
 | 
			
		||||
		Imports   FileImports
 | 
			
		||||
		Locations SourceLocations
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	EditionFeatures struct {
 | 
			
		||||
		// IsFieldPresence is true if field_presence is EXPLICIT
 | 
			
		||||
		// https://protobuf.dev/editions/features/#field_presence
 | 
			
		||||
		IsFieldPresence bool
 | 
			
		||||
		// IsFieldPresence is true if field_presence is LEGACY_REQUIRED
 | 
			
		||||
		// https://protobuf.dev/editions/features/#field_presence
 | 
			
		||||
		IsLegacyRequired bool
 | 
			
		||||
		// IsOpenEnum is true if enum_type is OPEN
 | 
			
		||||
		// https://protobuf.dev/editions/features/#enum_type
 | 
			
		||||
		IsOpenEnum bool
 | 
			
		||||
		// IsPacked is true if repeated_field_encoding is PACKED
 | 
			
		||||
		// https://protobuf.dev/editions/features/#repeated_field_encoding
 | 
			
		||||
		IsPacked bool
 | 
			
		||||
		// IsUTF8Validated is true if utf_validation is VERIFY
 | 
			
		||||
		// https://protobuf.dev/editions/features/#utf8_validation
 | 
			
		||||
		IsUTF8Validated bool
 | 
			
		||||
		// IsDelimitedEncoded is true if message_encoding is DELIMITED
 | 
			
		||||
		// https://protobuf.dev/editions/features/#message_encoding
 | 
			
		||||
		IsDelimitedEncoded bool
 | 
			
		||||
		// IsJSONCompliant is true if json_format is ALLOW
 | 
			
		||||
		// https://protobuf.dev/editions/features/#json_format
 | 
			
		||||
		IsJSONCompliant bool
 | 
			
		||||
		// GenerateLegacyUnmarshalJSON determines if the plugin generates the
 | 
			
		||||
		// UnmarshalJSON([]byte) error method for enums.
 | 
			
		||||
		GenerateLegacyUnmarshalJSON bool
 | 
			
		||||
	}
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func (fd *File) ParentFile() protoreflect.FileDescriptor { return fd }
 | 
			
		||||
@@ -117,6 +162,8 @@ type (
 | 
			
		||||
	}
 | 
			
		||||
	EnumL1 struct {
 | 
			
		||||
		eagerValues bool // controls whether EnumL2.Values is already populated
 | 
			
		||||
 | 
			
		||||
		EditionFeatures EditionFeatures
 | 
			
		||||
	}
 | 
			
		||||
	EnumL2 struct {
 | 
			
		||||
		Options        func() protoreflect.ProtoMessage
 | 
			
		||||
@@ -178,6 +225,8 @@ type (
 | 
			
		||||
		Extensions   Extensions
 | 
			
		||||
		IsMapEntry   bool // promoted from google.protobuf.MessageOptions
 | 
			
		||||
		IsMessageSet bool // promoted from google.protobuf.MessageOptions
 | 
			
		||||
 | 
			
		||||
		EditionFeatures EditionFeatures
 | 
			
		||||
	}
 | 
			
		||||
	MessageL2 struct {
 | 
			
		||||
		Options               func() protoreflect.ProtoMessage
 | 
			
		||||
@@ -210,6 +259,8 @@ type (
 | 
			
		||||
		ContainingOneof  protoreflect.OneofDescriptor // must be consistent with Message.Oneofs.Fields
 | 
			
		||||
		Enum             protoreflect.EnumDescriptor
 | 
			
		||||
		Message          protoreflect.MessageDescriptor
 | 
			
		||||
 | 
			
		||||
		EditionFeatures EditionFeatures
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	Oneof struct {
 | 
			
		||||
@@ -219,6 +270,8 @@ type (
 | 
			
		||||
	OneofL1 struct {
 | 
			
		||||
		Options func() protoreflect.ProtoMessage
 | 
			
		||||
		Fields  OneofFields // must be consistent with Message.Fields.ContainingOneof
 | 
			
		||||
 | 
			
		||||
		EditionFeatures EditionFeatures
 | 
			
		||||
	}
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -268,23 +321,36 @@ func (fd *Field) Options() protoreflect.ProtoMessage {
 | 
			
		||||
}
 | 
			
		||||
func (fd *Field) Number() protoreflect.FieldNumber      { return fd.L1.Number }
 | 
			
		||||
func (fd *Field) Cardinality() protoreflect.Cardinality { return fd.L1.Cardinality }
 | 
			
		||||
func (fd *Field) Kind() protoreflect.Kind               { return fd.L1.Kind }
 | 
			
		||||
func (fd *Field) HasJSONName() bool                     { return fd.L1.StringName.hasJSON }
 | 
			
		||||
func (fd *Field) JSONName() string                      { return fd.L1.StringName.getJSON(fd) }
 | 
			
		||||
func (fd *Field) TextName() string                      { return fd.L1.StringName.getText(fd) }
 | 
			
		||||
func (fd *Field) Kind() protoreflect.Kind {
 | 
			
		||||
	return fd.L1.Kind
 | 
			
		||||
}
 | 
			
		||||
func (fd *Field) HasJSONName() bool { return fd.L1.StringName.hasJSON }
 | 
			
		||||
func (fd *Field) JSONName() string  { return fd.L1.StringName.getJSON(fd) }
 | 
			
		||||
func (fd *Field) TextName() string  { return fd.L1.StringName.getText(fd) }
 | 
			
		||||
func (fd *Field) HasPresence() bool {
 | 
			
		||||
	return fd.L1.Cardinality != protoreflect.Repeated && (fd.L0.ParentFile.L1.Syntax == protoreflect.Proto2 || fd.L1.Message != nil || fd.L1.ContainingOneof != nil)
 | 
			
		||||
	if fd.L1.Cardinality == protoreflect.Repeated {
 | 
			
		||||
		return false
 | 
			
		||||
	}
 | 
			
		||||
	explicitFieldPresence := fd.Syntax() == protoreflect.Editions && fd.L1.EditionFeatures.IsFieldPresence
 | 
			
		||||
	return fd.Syntax() == protoreflect.Proto2 || explicitFieldPresence || fd.L1.Message != nil || fd.L1.ContainingOneof != nil
 | 
			
		||||
}
 | 
			
		||||
func (fd *Field) HasOptionalKeyword() bool {
 | 
			
		||||
	return (fd.L0.ParentFile.L1.Syntax == protoreflect.Proto2 && fd.L1.Cardinality == protoreflect.Optional && fd.L1.ContainingOneof == nil) || fd.L1.IsProto3Optional
 | 
			
		||||
}
 | 
			
		||||
func (fd *Field) IsPacked() bool {
 | 
			
		||||
	if !fd.L1.HasPacked && fd.L0.ParentFile.L1.Syntax != protoreflect.Proto2 && fd.L1.Cardinality == protoreflect.Repeated {
 | 
			
		||||
		switch fd.L1.Kind {
 | 
			
		||||
		case protoreflect.StringKind, protoreflect.BytesKind, protoreflect.MessageKind, protoreflect.GroupKind:
 | 
			
		||||
		default:
 | 
			
		||||
			return true
 | 
			
		||||
		}
 | 
			
		||||
	if fd.L1.Cardinality != protoreflect.Repeated {
 | 
			
		||||
		return false
 | 
			
		||||
	}
 | 
			
		||||
	switch fd.L1.Kind {
 | 
			
		||||
	case protoreflect.StringKind, protoreflect.BytesKind, protoreflect.MessageKind, protoreflect.GroupKind:
 | 
			
		||||
		return false
 | 
			
		||||
	}
 | 
			
		||||
	if fd.L0.ParentFile.L1.Syntax == protoreflect.Editions {
 | 
			
		||||
		return fd.L1.EditionFeatures.IsPacked
 | 
			
		||||
	}
 | 
			
		||||
	if fd.L0.ParentFile.L1.Syntax == protoreflect.Proto3 {
 | 
			
		||||
		// proto3 repeated fields are packed by default.
 | 
			
		||||
		return !fd.L1.HasPacked || fd.L1.IsPacked
 | 
			
		||||
	}
 | 
			
		||||
	return fd.L1.IsPacked
 | 
			
		||||
}
 | 
			
		||||
@@ -333,6 +399,9 @@ func (fd *Field) ProtoType(protoreflect.FieldDescriptor) {}
 | 
			
		||||
// WARNING: This method is exempt from the compatibility promise and may be
 | 
			
		||||
// removed in the future without warning.
 | 
			
		||||
func (fd *Field) EnforceUTF8() bool {
 | 
			
		||||
	if fd.L0.ParentFile.L1.Syntax == protoreflect.Editions {
 | 
			
		||||
		return fd.L1.EditionFeatures.IsUTF8Validated
 | 
			
		||||
	}
 | 
			
		||||
	if fd.L1.HasEnforceUTF8 {
 | 
			
		||||
		return fd.L1.EnforceUTF8
 | 
			
		||||
	}
 | 
			
		||||
@@ -359,10 +428,11 @@ type (
 | 
			
		||||
		L2 *ExtensionL2 // protected by fileDesc.once
 | 
			
		||||
	}
 | 
			
		||||
	ExtensionL1 struct {
 | 
			
		||||
		Number      protoreflect.FieldNumber
 | 
			
		||||
		Extendee    protoreflect.MessageDescriptor
 | 
			
		||||
		Cardinality protoreflect.Cardinality
 | 
			
		||||
		Kind        protoreflect.Kind
 | 
			
		||||
		Number          protoreflect.FieldNumber
 | 
			
		||||
		Extendee        protoreflect.MessageDescriptor
 | 
			
		||||
		Cardinality     protoreflect.Cardinality
 | 
			
		||||
		Kind            protoreflect.Kind
 | 
			
		||||
		EditionFeatures EditionFeatures
 | 
			
		||||
	}
 | 
			
		||||
	ExtensionL2 struct {
 | 
			
		||||
		Options          func() protoreflect.ProtoMessage
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										52
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										52
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -5,6 +5,7 @@
 | 
			
		||||
package filedesc
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"sync"
 | 
			
		||||
 | 
			
		||||
	"google.golang.org/protobuf/encoding/protowire"
 | 
			
		||||
@@ -98,6 +99,7 @@ func (fd *File) unmarshalSeed(b []byte) {
 | 
			
		||||
	var prevField protoreflect.FieldNumber
 | 
			
		||||
	var numEnums, numMessages, numExtensions, numServices int
 | 
			
		||||
	var posEnums, posMessages, posExtensions, posServices int
 | 
			
		||||
	var options []byte
 | 
			
		||||
	b0 := b
 | 
			
		||||
	for len(b) > 0 {
 | 
			
		||||
		num, typ, n := protowire.ConsumeTag(b)
 | 
			
		||||
@@ -113,6 +115,8 @@ func (fd *File) unmarshalSeed(b []byte) {
 | 
			
		||||
					fd.L1.Syntax = protoreflect.Proto2
 | 
			
		||||
				case "proto3":
 | 
			
		||||
					fd.L1.Syntax = protoreflect.Proto3
 | 
			
		||||
				case "editions":
 | 
			
		||||
					fd.L1.Syntax = protoreflect.Editions
 | 
			
		||||
				default:
 | 
			
		||||
					panic("invalid syntax")
 | 
			
		||||
				}
 | 
			
		||||
@@ -120,6 +124,8 @@ func (fd *File) unmarshalSeed(b []byte) {
 | 
			
		||||
				fd.L1.Path = sb.MakeString(v)
 | 
			
		||||
			case genid.FileDescriptorProto_Package_field_number:
 | 
			
		||||
				fd.L1.Package = protoreflect.FullName(sb.MakeString(v))
 | 
			
		||||
			case genid.FileDescriptorProto_Options_field_number:
 | 
			
		||||
				options = v
 | 
			
		||||
			case genid.FileDescriptorProto_EnumType_field_number:
 | 
			
		||||
				if prevField != genid.FileDescriptorProto_EnumType_field_number {
 | 
			
		||||
					if numEnums > 0 {
 | 
			
		||||
@@ -154,6 +160,13 @@ func (fd *File) unmarshalSeed(b []byte) {
 | 
			
		||||
				numServices++
 | 
			
		||||
			}
 | 
			
		||||
			prevField = num
 | 
			
		||||
		case protowire.VarintType:
 | 
			
		||||
			v, m := protowire.ConsumeVarint(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FileDescriptorProto_Edition_field_number:
 | 
			
		||||
				fd.L1.Edition = Edition(v)
 | 
			
		||||
			}
 | 
			
		||||
		default:
 | 
			
		||||
			m := protowire.ConsumeFieldValue(num, typ, b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
@@ -166,6 +179,15 @@ func (fd *File) unmarshalSeed(b []byte) {
 | 
			
		||||
		fd.L1.Syntax = protoreflect.Proto2
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if fd.L1.Syntax == protoreflect.Editions {
 | 
			
		||||
		fd.L1.EditionFeatures = getFeaturesFor(fd.L1.Edition)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Parse editions features from options if any
 | 
			
		||||
	if options != nil {
 | 
			
		||||
		fd.unmarshalSeedOptions(options)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Must allocate all declarations before parsing each descriptor type
 | 
			
		||||
	// to ensure we handled all descriptors in "flattened ordering".
 | 
			
		||||
	if numEnums > 0 {
 | 
			
		||||
@@ -219,6 +241,28 @@ func (fd *File) unmarshalSeed(b []byte) {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (fd *File) unmarshalSeedOptions(b []byte) {
 | 
			
		||||
	for b := b; len(b) > 0; {
 | 
			
		||||
		num, typ, n := protowire.ConsumeTag(b)
 | 
			
		||||
		b = b[n:]
 | 
			
		||||
		switch typ {
 | 
			
		||||
		case protowire.BytesType:
 | 
			
		||||
			v, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FileOptions_Features_field_number:
 | 
			
		||||
				if fd.Syntax() != protoreflect.Editions {
 | 
			
		||||
					panic(fmt.Sprintf("invalid descriptor: using edition features in a proto with syntax %s", fd.Syntax()))
 | 
			
		||||
				}
 | 
			
		||||
				fd.L1.EditionFeatures = unmarshalFeatureSet(v, fd.L1.EditionFeatures)
 | 
			
		||||
			}
 | 
			
		||||
		default:
 | 
			
		||||
			m := protowire.ConsumeFieldValue(num, typ, b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (ed *Enum) unmarshalSeed(b []byte, sb *strs.Builder, pf *File, pd protoreflect.Descriptor, i int) {
 | 
			
		||||
	ed.L0.ParentFile = pf
 | 
			
		||||
	ed.L0.Parent = pd
 | 
			
		||||
@@ -275,6 +319,7 @@ func (md *Message) unmarshalSeed(b []byte, sb *strs.Builder, pf *File, pd protor
 | 
			
		||||
	md.L0.ParentFile = pf
 | 
			
		||||
	md.L0.Parent = pd
 | 
			
		||||
	md.L0.Index = i
 | 
			
		||||
	md.L1.EditionFeatures = featuresFromParentDesc(md.Parent())
 | 
			
		||||
 | 
			
		||||
	var prevField protoreflect.FieldNumber
 | 
			
		||||
	var numEnums, numMessages, numExtensions int
 | 
			
		||||
@@ -380,6 +425,13 @@ func (md *Message) unmarshalSeedOptions(b []byte) {
 | 
			
		||||
			case genid.MessageOptions_MessageSetWireFormat_field_number:
 | 
			
		||||
				md.L1.IsMessageSet = protowire.DecodeBool(v)
 | 
			
		||||
			}
 | 
			
		||||
		case protowire.BytesType:
 | 
			
		||||
			v, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.MessageOptions_Features_field_number:
 | 
			
		||||
				md.L1.EditionFeatures = unmarshalFeatureSet(v, md.L1.EditionFeatures)
 | 
			
		||||
			}
 | 
			
		||||
		default:
 | 
			
		||||
			m := protowire.ConsumeFieldValue(num, typ, b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										28
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										28
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -414,6 +414,7 @@ func (fd *Field) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd protoref
 | 
			
		||||
	fd.L0.ParentFile = pf
 | 
			
		||||
	fd.L0.Parent = pd
 | 
			
		||||
	fd.L0.Index = i
 | 
			
		||||
	fd.L1.EditionFeatures = featuresFromParentDesc(fd.Parent())
 | 
			
		||||
 | 
			
		||||
	var rawTypeName []byte
 | 
			
		||||
	var rawOptions []byte
 | 
			
		||||
@@ -465,6 +466,12 @@ func (fd *Field) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd protoref
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if fd.Syntax() == protoreflect.Editions && fd.L1.Kind == protoreflect.MessageKind && fd.L1.EditionFeatures.IsDelimitedEncoded {
 | 
			
		||||
		fd.L1.Kind = protoreflect.GroupKind
 | 
			
		||||
	}
 | 
			
		||||
	if fd.Syntax() == protoreflect.Editions && fd.L1.EditionFeatures.IsLegacyRequired {
 | 
			
		||||
		fd.L1.Cardinality = protoreflect.Required
 | 
			
		||||
	}
 | 
			
		||||
	if rawTypeName != nil {
 | 
			
		||||
		name := makeFullName(sb, rawTypeName)
 | 
			
		||||
		switch fd.L1.Kind {
 | 
			
		||||
@@ -497,6 +504,13 @@ func (fd *Field) unmarshalOptions(b []byte) {
 | 
			
		||||
				fd.L1.HasEnforceUTF8 = true
 | 
			
		||||
				fd.L1.EnforceUTF8 = protowire.DecodeBool(v)
 | 
			
		||||
			}
 | 
			
		||||
		case protowire.BytesType:
 | 
			
		||||
			v, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FieldOptions_Features_field_number:
 | 
			
		||||
				fd.L1.EditionFeatures = unmarshalFeatureSet(v, fd.L1.EditionFeatures)
 | 
			
		||||
			}
 | 
			
		||||
		default:
 | 
			
		||||
			m := protowire.ConsumeFieldValue(num, typ, b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
@@ -534,6 +548,7 @@ func (od *Oneof) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd protoref
 | 
			
		||||
func (xd *Extension) unmarshalFull(b []byte, sb *strs.Builder) {
 | 
			
		||||
	var rawTypeName []byte
 | 
			
		||||
	var rawOptions []byte
 | 
			
		||||
	xd.L1.EditionFeatures = featuresFromParentDesc(xd.L1.Extendee)
 | 
			
		||||
	xd.L2 = new(ExtensionL2)
 | 
			
		||||
	for len(b) > 0 {
 | 
			
		||||
		num, typ, n := protowire.ConsumeTag(b)
 | 
			
		||||
@@ -565,6 +580,12 @@ func (xd *Extension) unmarshalFull(b []byte, sb *strs.Builder) {
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if xd.Syntax() == protoreflect.Editions && xd.L1.Kind == protoreflect.MessageKind && xd.L1.EditionFeatures.IsDelimitedEncoded {
 | 
			
		||||
		xd.L1.Kind = protoreflect.GroupKind
 | 
			
		||||
	}
 | 
			
		||||
	if xd.Syntax() == protoreflect.Editions && xd.L1.EditionFeatures.IsLegacyRequired {
 | 
			
		||||
		xd.L1.Cardinality = protoreflect.Required
 | 
			
		||||
	}
 | 
			
		||||
	if rawTypeName != nil {
 | 
			
		||||
		name := makeFullName(sb, rawTypeName)
 | 
			
		||||
		switch xd.L1.Kind {
 | 
			
		||||
@@ -589,6 +610,13 @@ func (xd *Extension) unmarshalOptions(b []byte) {
 | 
			
		||||
			case genid.FieldOptions_Packed_field_number:
 | 
			
		||||
				xd.L2.IsPacked = protowire.DecodeBool(v)
 | 
			
		||||
			}
 | 
			
		||||
		case protowire.BytesType:
 | 
			
		||||
			v, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FieldOptions_Features_field_number:
 | 
			
		||||
				xd.L1.EditionFeatures = unmarshalFeatureSet(v, xd.L1.EditionFeatures)
 | 
			
		||||
			}
 | 
			
		||||
		default:
 | 
			
		||||
			m := protowire.ConsumeFieldValue(num, typ, b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										142
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/editions.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										142
									
								
								vendor/google.golang.org/protobuf/internal/filedesc/editions.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,142 @@
 | 
			
		||||
// Copyright 2024 The Go Authors. All rights reserved.
 | 
			
		||||
// Use of this source code is governed by a BSD-style
 | 
			
		||||
// license that can be found in the LICENSE file.
 | 
			
		||||
 | 
			
		||||
package filedesc
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	"google.golang.org/protobuf/encoding/protowire"
 | 
			
		||||
	"google.golang.org/protobuf/internal/editiondefaults"
 | 
			
		||||
	"google.golang.org/protobuf/internal/genid"
 | 
			
		||||
	"google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var defaultsCache = make(map[Edition]EditionFeatures)
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	unmarshalEditionDefaults(editiondefaults.Defaults)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func unmarshalGoFeature(b []byte, parent EditionFeatures) EditionFeatures {
 | 
			
		||||
	for len(b) > 0 {
 | 
			
		||||
		num, _, n := protowire.ConsumeTag(b)
 | 
			
		||||
		b = b[n:]
 | 
			
		||||
		switch num {
 | 
			
		||||
		case genid.GoFeatures_LegacyUnmarshalJsonEnum_field_number:
 | 
			
		||||
			v, m := protowire.ConsumeVarint(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			parent.GenerateLegacyUnmarshalJSON = protowire.DecodeBool(v)
 | 
			
		||||
		default:
 | 
			
		||||
			panic(fmt.Sprintf("unkown field number %d while unmarshalling GoFeatures", num))
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	return parent
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func unmarshalFeatureSet(b []byte, parent EditionFeatures) EditionFeatures {
 | 
			
		||||
	for len(b) > 0 {
 | 
			
		||||
		num, typ, n := protowire.ConsumeTag(b)
 | 
			
		||||
		b = b[n:]
 | 
			
		||||
		switch typ {
 | 
			
		||||
		case protowire.VarintType:
 | 
			
		||||
			v, m := protowire.ConsumeVarint(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FeatureSet_FieldPresence_field_number:
 | 
			
		||||
				parent.IsFieldPresence = v == genid.FeatureSet_EXPLICIT_enum_value || v == genid.FeatureSet_LEGACY_REQUIRED_enum_value
 | 
			
		||||
				parent.IsLegacyRequired = v == genid.FeatureSet_LEGACY_REQUIRED_enum_value
 | 
			
		||||
			case genid.FeatureSet_EnumType_field_number:
 | 
			
		||||
				parent.IsOpenEnum = v == genid.FeatureSet_OPEN_enum_value
 | 
			
		||||
			case genid.FeatureSet_RepeatedFieldEncoding_field_number:
 | 
			
		||||
				parent.IsPacked = v == genid.FeatureSet_PACKED_enum_value
 | 
			
		||||
			case genid.FeatureSet_Utf8Validation_field_number:
 | 
			
		||||
				parent.IsUTF8Validated = v == genid.FeatureSet_VERIFY_enum_value
 | 
			
		||||
			case genid.FeatureSet_MessageEncoding_field_number:
 | 
			
		||||
				parent.IsDelimitedEncoded = v == genid.FeatureSet_DELIMITED_enum_value
 | 
			
		||||
			case genid.FeatureSet_JsonFormat_field_number:
 | 
			
		||||
				parent.IsJSONCompliant = v == genid.FeatureSet_ALLOW_enum_value
 | 
			
		||||
			default:
 | 
			
		||||
				panic(fmt.Sprintf("unkown field number %d while unmarshalling FeatureSet", num))
 | 
			
		||||
			}
 | 
			
		||||
		case protowire.BytesType:
 | 
			
		||||
			v, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.GoFeatures_LegacyUnmarshalJsonEnum_field_number:
 | 
			
		||||
				parent = unmarshalGoFeature(v, parent)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return parent
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func featuresFromParentDesc(parentDesc protoreflect.Descriptor) EditionFeatures {
 | 
			
		||||
	var parentFS EditionFeatures
 | 
			
		||||
	switch p := parentDesc.(type) {
 | 
			
		||||
	case *File:
 | 
			
		||||
		parentFS = p.L1.EditionFeatures
 | 
			
		||||
	case *Message:
 | 
			
		||||
		parentFS = p.L1.EditionFeatures
 | 
			
		||||
	default:
 | 
			
		||||
		panic(fmt.Sprintf("unknown parent type %T", parentDesc))
 | 
			
		||||
	}
 | 
			
		||||
	return parentFS
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func unmarshalEditionDefault(b []byte) {
 | 
			
		||||
	var ed Edition
 | 
			
		||||
	var fs EditionFeatures
 | 
			
		||||
	for len(b) > 0 {
 | 
			
		||||
		num, typ, n := protowire.ConsumeTag(b)
 | 
			
		||||
		b = b[n:]
 | 
			
		||||
		switch typ {
 | 
			
		||||
		case protowire.VarintType:
 | 
			
		||||
			v, m := protowire.ConsumeVarint(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FeatureSetDefaults_FeatureSetEditionDefault_Edition_field_number:
 | 
			
		||||
				ed = Edition(v)
 | 
			
		||||
			}
 | 
			
		||||
		case protowire.BytesType:
 | 
			
		||||
			v, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			switch num {
 | 
			
		||||
			case genid.FeatureSetDefaults_FeatureSetEditionDefault_Features_field_number:
 | 
			
		||||
				fs = unmarshalFeatureSet(v, fs)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	defaultsCache[ed] = fs
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func unmarshalEditionDefaults(b []byte) {
 | 
			
		||||
	for len(b) > 0 {
 | 
			
		||||
		num, _, n := protowire.ConsumeTag(b)
 | 
			
		||||
		b = b[n:]
 | 
			
		||||
		switch num {
 | 
			
		||||
		case genid.FeatureSetDefaults_Defaults_field_number:
 | 
			
		||||
			def, m := protowire.ConsumeBytes(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
			unmarshalEditionDefault(def)
 | 
			
		||||
		case genid.FeatureSetDefaults_MinimumEdition_field_number,
 | 
			
		||||
			genid.FeatureSetDefaults_MaximumEdition_field_number:
 | 
			
		||||
			// We don't care about the minimum and maximum editions. If the
 | 
			
		||||
			// edition we are looking for later on is not in the cache we know
 | 
			
		||||
			// it is outside of the range between minimum and maximum edition.
 | 
			
		||||
			_, m := protowire.ConsumeVarint(b)
 | 
			
		||||
			b = b[m:]
 | 
			
		||||
		default:
 | 
			
		||||
			panic(fmt.Sprintf("unkown field number %d while unmarshalling EditionDefault", num))
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func getFeaturesFor(ed Edition) EditionFeatures {
 | 
			
		||||
	if def, ok := defaultsCache[ed]; ok {
 | 
			
		||||
		return def
 | 
			
		||||
	}
 | 
			
		||||
	panic(fmt.Sprintf("unsupported edition: %v", ed))
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										364
									
								
								vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										364
									
								
								vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -12,6 +12,27 @@ import (
 | 
			
		||||
 | 
			
		||||
const File_google_protobuf_descriptor_proto = "google/protobuf/descriptor.proto"
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.Edition.
 | 
			
		||||
const (
 | 
			
		||||
	Edition_enum_fullname = "google.protobuf.Edition"
 | 
			
		||||
	Edition_enum_name     = "Edition"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.Edition.
 | 
			
		||||
const (
 | 
			
		||||
	Edition_EDITION_UNKNOWN_enum_value         = 0
 | 
			
		||||
	Edition_EDITION_PROTO2_enum_value          = 998
 | 
			
		||||
	Edition_EDITION_PROTO3_enum_value          = 999
 | 
			
		||||
	Edition_EDITION_2023_enum_value            = 1000
 | 
			
		||||
	Edition_EDITION_2024_enum_value            = 1001
 | 
			
		||||
	Edition_EDITION_1_TEST_ONLY_enum_value     = 1
 | 
			
		||||
	Edition_EDITION_2_TEST_ONLY_enum_value     = 2
 | 
			
		||||
	Edition_EDITION_99997_TEST_ONLY_enum_value = 99997
 | 
			
		||||
	Edition_EDITION_99998_TEST_ONLY_enum_value = 99998
 | 
			
		||||
	Edition_EDITION_99999_TEST_ONLY_enum_value = 99999
 | 
			
		||||
	Edition_EDITION_MAX_enum_value             = 2147483647
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.FileDescriptorSet.
 | 
			
		||||
const (
 | 
			
		||||
	FileDescriptorSet_message_name     protoreflect.Name     = "FileDescriptorSet"
 | 
			
		||||
@@ -81,7 +102,7 @@ const (
 | 
			
		||||
	FileDescriptorProto_Options_field_number          protoreflect.FieldNumber = 8
 | 
			
		||||
	FileDescriptorProto_SourceCodeInfo_field_number   protoreflect.FieldNumber = 9
 | 
			
		||||
	FileDescriptorProto_Syntax_field_number           protoreflect.FieldNumber = 12
 | 
			
		||||
	FileDescriptorProto_Edition_field_number          protoreflect.FieldNumber = 13
 | 
			
		||||
	FileDescriptorProto_Edition_field_number          protoreflect.FieldNumber = 14
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.DescriptorProto.
 | 
			
		||||
@@ -184,10 +205,12 @@ const (
 | 
			
		||||
const (
 | 
			
		||||
	ExtensionRangeOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_field_name         protoreflect.Name = "declaration"
 | 
			
		||||
	ExtensionRangeOptions_Features_field_name            protoreflect.Name = "features"
 | 
			
		||||
	ExtensionRangeOptions_Verification_field_name        protoreflect.Name = "verification"
 | 
			
		||||
 | 
			
		||||
	ExtensionRangeOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.uninterpreted_option"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_field_fullname         protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.declaration"
 | 
			
		||||
	ExtensionRangeOptions_Features_field_fullname            protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.features"
 | 
			
		||||
	ExtensionRangeOptions_Verification_field_fullname        protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.verification"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -195,6 +218,7 @@ const (
 | 
			
		||||
const (
 | 
			
		||||
	ExtensionRangeOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
 | 
			
		||||
	ExtensionRangeOptions_Declaration_field_number         protoreflect.FieldNumber = 2
 | 
			
		||||
	ExtensionRangeOptions_Features_field_number            protoreflect.FieldNumber = 50
 | 
			
		||||
	ExtensionRangeOptions_Verification_field_number        protoreflect.FieldNumber = 3
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -204,6 +228,12 @@ const (
 | 
			
		||||
	ExtensionRangeOptions_VerificationState_enum_name     = "VerificationState"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.ExtensionRangeOptions.VerificationState.
 | 
			
		||||
const (
 | 
			
		||||
	ExtensionRangeOptions_DECLARATION_enum_value = 0
 | 
			
		||||
	ExtensionRangeOptions_UNVERIFIED_enum_value  = 1
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.ExtensionRangeOptions.Declaration.
 | 
			
		||||
const (
 | 
			
		||||
	ExtensionRangeOptions_Declaration_message_name     protoreflect.Name     = "Declaration"
 | 
			
		||||
@@ -212,29 +242,26 @@ const (
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.ExtensionRangeOptions.Declaration.
 | 
			
		||||
const (
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Number_field_name     protoreflect.Name = "number"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_FullName_field_name   protoreflect.Name = "full_name"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Type_field_name       protoreflect.Name = "type"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_IsRepeated_field_name protoreflect.Name = "is_repeated"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Reserved_field_name   protoreflect.Name = "reserved"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Repeated_field_name   protoreflect.Name = "repeated"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Number_field_name   protoreflect.Name = "number"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_FullName_field_name protoreflect.Name = "full_name"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Type_field_name     protoreflect.Name = "type"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Reserved_field_name protoreflect.Name = "reserved"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Repeated_field_name protoreflect.Name = "repeated"
 | 
			
		||||
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Number_field_fullname     protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.number"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_FullName_field_fullname   protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.full_name"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Type_field_fullname       protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.type"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_IsRepeated_field_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.is_repeated"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Reserved_field_fullname   protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.reserved"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Repeated_field_fullname   protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.repeated"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Number_field_fullname   protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.number"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_FullName_field_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.full_name"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Type_field_fullname     protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.type"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Reserved_field_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.reserved"
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Repeated_field_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.Declaration.repeated"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.ExtensionRangeOptions.Declaration.
 | 
			
		||||
const (
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Number_field_number     protoreflect.FieldNumber = 1
 | 
			
		||||
	ExtensionRangeOptions_Declaration_FullName_field_number   protoreflect.FieldNumber = 2
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Type_field_number       protoreflect.FieldNumber = 3
 | 
			
		||||
	ExtensionRangeOptions_Declaration_IsRepeated_field_number protoreflect.FieldNumber = 4
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Reserved_field_number   protoreflect.FieldNumber = 5
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Repeated_field_number   protoreflect.FieldNumber = 6
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Number_field_number   protoreflect.FieldNumber = 1
 | 
			
		||||
	ExtensionRangeOptions_Declaration_FullName_field_number protoreflect.FieldNumber = 2
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Type_field_number     protoreflect.FieldNumber = 3
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Reserved_field_number protoreflect.FieldNumber = 5
 | 
			
		||||
	ExtensionRangeOptions_Declaration_Repeated_field_number protoreflect.FieldNumber = 6
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.FieldDescriptorProto.
 | 
			
		||||
@@ -291,12 +318,41 @@ const (
 | 
			
		||||
	FieldDescriptorProto_Type_enum_name     = "Type"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FieldDescriptorProto.Type.
 | 
			
		||||
const (
 | 
			
		||||
	FieldDescriptorProto_TYPE_DOUBLE_enum_value   = 1
 | 
			
		||||
	FieldDescriptorProto_TYPE_FLOAT_enum_value    = 2
 | 
			
		||||
	FieldDescriptorProto_TYPE_INT64_enum_value    = 3
 | 
			
		||||
	FieldDescriptorProto_TYPE_UINT64_enum_value   = 4
 | 
			
		||||
	FieldDescriptorProto_TYPE_INT32_enum_value    = 5
 | 
			
		||||
	FieldDescriptorProto_TYPE_FIXED64_enum_value  = 6
 | 
			
		||||
	FieldDescriptorProto_TYPE_FIXED32_enum_value  = 7
 | 
			
		||||
	FieldDescriptorProto_TYPE_BOOL_enum_value     = 8
 | 
			
		||||
	FieldDescriptorProto_TYPE_STRING_enum_value   = 9
 | 
			
		||||
	FieldDescriptorProto_TYPE_GROUP_enum_value    = 10
 | 
			
		||||
	FieldDescriptorProto_TYPE_MESSAGE_enum_value  = 11
 | 
			
		||||
	FieldDescriptorProto_TYPE_BYTES_enum_value    = 12
 | 
			
		||||
	FieldDescriptorProto_TYPE_UINT32_enum_value   = 13
 | 
			
		||||
	FieldDescriptorProto_TYPE_ENUM_enum_value     = 14
 | 
			
		||||
	FieldDescriptorProto_TYPE_SFIXED32_enum_value = 15
 | 
			
		||||
	FieldDescriptorProto_TYPE_SFIXED64_enum_value = 16
 | 
			
		||||
	FieldDescriptorProto_TYPE_SINT32_enum_value   = 17
 | 
			
		||||
	FieldDescriptorProto_TYPE_SINT64_enum_value   = 18
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FieldDescriptorProto.Label.
 | 
			
		||||
const (
 | 
			
		||||
	FieldDescriptorProto_Label_enum_fullname = "google.protobuf.FieldDescriptorProto.Label"
 | 
			
		||||
	FieldDescriptorProto_Label_enum_name     = "Label"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FieldDescriptorProto.Label.
 | 
			
		||||
const (
 | 
			
		||||
	FieldDescriptorProto_LABEL_OPTIONAL_enum_value = 1
 | 
			
		||||
	FieldDescriptorProto_LABEL_REPEATED_enum_value = 3
 | 
			
		||||
	FieldDescriptorProto_LABEL_REQUIRED_enum_value = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.OneofDescriptorProto.
 | 
			
		||||
const (
 | 
			
		||||
	OneofDescriptorProto_message_name     protoreflect.Name     = "OneofDescriptorProto"
 | 
			
		||||
@@ -468,7 +524,6 @@ const (
 | 
			
		||||
	FileOptions_CcGenericServices_field_name         protoreflect.Name = "cc_generic_services"
 | 
			
		||||
	FileOptions_JavaGenericServices_field_name       protoreflect.Name = "java_generic_services"
 | 
			
		||||
	FileOptions_PyGenericServices_field_name         protoreflect.Name = "py_generic_services"
 | 
			
		||||
	FileOptions_PhpGenericServices_field_name        protoreflect.Name = "php_generic_services"
 | 
			
		||||
	FileOptions_Deprecated_field_name                protoreflect.Name = "deprecated"
 | 
			
		||||
	FileOptions_CcEnableArenas_field_name            protoreflect.Name = "cc_enable_arenas"
 | 
			
		||||
	FileOptions_ObjcClassPrefix_field_name           protoreflect.Name = "objc_class_prefix"
 | 
			
		||||
@@ -478,6 +533,7 @@ const (
 | 
			
		||||
	FileOptions_PhpNamespace_field_name              protoreflect.Name = "php_namespace"
 | 
			
		||||
	FileOptions_PhpMetadataNamespace_field_name      protoreflect.Name = "php_metadata_namespace"
 | 
			
		||||
	FileOptions_RubyPackage_field_name               protoreflect.Name = "ruby_package"
 | 
			
		||||
	FileOptions_Features_field_name                  protoreflect.Name = "features"
 | 
			
		||||
	FileOptions_UninterpretedOption_field_name       protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	FileOptions_JavaPackage_field_fullname               protoreflect.FullName = "google.protobuf.FileOptions.java_package"
 | 
			
		||||
@@ -490,7 +546,6 @@ const (
 | 
			
		||||
	FileOptions_CcGenericServices_field_fullname         protoreflect.FullName = "google.protobuf.FileOptions.cc_generic_services"
 | 
			
		||||
	FileOptions_JavaGenericServices_field_fullname       protoreflect.FullName = "google.protobuf.FileOptions.java_generic_services"
 | 
			
		||||
	FileOptions_PyGenericServices_field_fullname         protoreflect.FullName = "google.protobuf.FileOptions.py_generic_services"
 | 
			
		||||
	FileOptions_PhpGenericServices_field_fullname        protoreflect.FullName = "google.protobuf.FileOptions.php_generic_services"
 | 
			
		||||
	FileOptions_Deprecated_field_fullname                protoreflect.FullName = "google.protobuf.FileOptions.deprecated"
 | 
			
		||||
	FileOptions_CcEnableArenas_field_fullname            protoreflect.FullName = "google.protobuf.FileOptions.cc_enable_arenas"
 | 
			
		||||
	FileOptions_ObjcClassPrefix_field_fullname           protoreflect.FullName = "google.protobuf.FileOptions.objc_class_prefix"
 | 
			
		||||
@@ -500,6 +555,7 @@ const (
 | 
			
		||||
	FileOptions_PhpNamespace_field_fullname              protoreflect.FullName = "google.protobuf.FileOptions.php_namespace"
 | 
			
		||||
	FileOptions_PhpMetadataNamespace_field_fullname      protoreflect.FullName = "google.protobuf.FileOptions.php_metadata_namespace"
 | 
			
		||||
	FileOptions_RubyPackage_field_fullname               protoreflect.FullName = "google.protobuf.FileOptions.ruby_package"
 | 
			
		||||
	FileOptions_Features_field_fullname                  protoreflect.FullName = "google.protobuf.FileOptions.features"
 | 
			
		||||
	FileOptions_UninterpretedOption_field_fullname       protoreflect.FullName = "google.protobuf.FileOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -515,7 +571,6 @@ const (
 | 
			
		||||
	FileOptions_CcGenericServices_field_number         protoreflect.FieldNumber = 16
 | 
			
		||||
	FileOptions_JavaGenericServices_field_number       protoreflect.FieldNumber = 17
 | 
			
		||||
	FileOptions_PyGenericServices_field_number         protoreflect.FieldNumber = 18
 | 
			
		||||
	FileOptions_PhpGenericServices_field_number        protoreflect.FieldNumber = 42
 | 
			
		||||
	FileOptions_Deprecated_field_number                protoreflect.FieldNumber = 23
 | 
			
		||||
	FileOptions_CcEnableArenas_field_number            protoreflect.FieldNumber = 31
 | 
			
		||||
	FileOptions_ObjcClassPrefix_field_number           protoreflect.FieldNumber = 36
 | 
			
		||||
@@ -525,6 +580,7 @@ const (
 | 
			
		||||
	FileOptions_PhpNamespace_field_number              protoreflect.FieldNumber = 41
 | 
			
		||||
	FileOptions_PhpMetadataNamespace_field_number      protoreflect.FieldNumber = 44
 | 
			
		||||
	FileOptions_RubyPackage_field_number               protoreflect.FieldNumber = 45
 | 
			
		||||
	FileOptions_Features_field_number                  protoreflect.FieldNumber = 50
 | 
			
		||||
	FileOptions_UninterpretedOption_field_number       protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -534,6 +590,13 @@ const (
 | 
			
		||||
	FileOptions_OptimizeMode_enum_name     = "OptimizeMode"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FileOptions.OptimizeMode.
 | 
			
		||||
const (
 | 
			
		||||
	FileOptions_SPEED_enum_value        = 1
 | 
			
		||||
	FileOptions_CODE_SIZE_enum_value    = 2
 | 
			
		||||
	FileOptions_LITE_RUNTIME_enum_value = 3
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.MessageOptions.
 | 
			
		||||
const (
 | 
			
		||||
	MessageOptions_message_name     protoreflect.Name     = "MessageOptions"
 | 
			
		||||
@@ -547,6 +610,7 @@ const (
 | 
			
		||||
	MessageOptions_Deprecated_field_name                         protoreflect.Name = "deprecated"
 | 
			
		||||
	MessageOptions_MapEntry_field_name                           protoreflect.Name = "map_entry"
 | 
			
		||||
	MessageOptions_DeprecatedLegacyJsonFieldConflicts_field_name protoreflect.Name = "deprecated_legacy_json_field_conflicts"
 | 
			
		||||
	MessageOptions_Features_field_name                           protoreflect.Name = "features"
 | 
			
		||||
	MessageOptions_UninterpretedOption_field_name                protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	MessageOptions_MessageSetWireFormat_field_fullname               protoreflect.FullName = "google.protobuf.MessageOptions.message_set_wire_format"
 | 
			
		||||
@@ -554,6 +618,7 @@ const (
 | 
			
		||||
	MessageOptions_Deprecated_field_fullname                         protoreflect.FullName = "google.protobuf.MessageOptions.deprecated"
 | 
			
		||||
	MessageOptions_MapEntry_field_fullname                           protoreflect.FullName = "google.protobuf.MessageOptions.map_entry"
 | 
			
		||||
	MessageOptions_DeprecatedLegacyJsonFieldConflicts_field_fullname protoreflect.FullName = "google.protobuf.MessageOptions.deprecated_legacy_json_field_conflicts"
 | 
			
		||||
	MessageOptions_Features_field_fullname                           protoreflect.FullName = "google.protobuf.MessageOptions.features"
 | 
			
		||||
	MessageOptions_UninterpretedOption_field_fullname                protoreflect.FullName = "google.protobuf.MessageOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -564,6 +629,7 @@ const (
 | 
			
		||||
	MessageOptions_Deprecated_field_number                         protoreflect.FieldNumber = 3
 | 
			
		||||
	MessageOptions_MapEntry_field_number                           protoreflect.FieldNumber = 7
 | 
			
		||||
	MessageOptions_DeprecatedLegacyJsonFieldConflicts_field_number protoreflect.FieldNumber = 11
 | 
			
		||||
	MessageOptions_Features_field_number                           protoreflect.FieldNumber = 12
 | 
			
		||||
	MessageOptions_UninterpretedOption_field_number                protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -584,8 +650,9 @@ const (
 | 
			
		||||
	FieldOptions_Weak_field_name                protoreflect.Name = "weak"
 | 
			
		||||
	FieldOptions_DebugRedact_field_name         protoreflect.Name = "debug_redact"
 | 
			
		||||
	FieldOptions_Retention_field_name           protoreflect.Name = "retention"
 | 
			
		||||
	FieldOptions_Target_field_name              protoreflect.Name = "target"
 | 
			
		||||
	FieldOptions_Targets_field_name             protoreflect.Name = "targets"
 | 
			
		||||
	FieldOptions_EditionDefaults_field_name     protoreflect.Name = "edition_defaults"
 | 
			
		||||
	FieldOptions_Features_field_name            protoreflect.Name = "features"
 | 
			
		||||
	FieldOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	FieldOptions_Ctype_field_fullname               protoreflect.FullName = "google.protobuf.FieldOptions.ctype"
 | 
			
		||||
@@ -597,8 +664,9 @@ const (
 | 
			
		||||
	FieldOptions_Weak_field_fullname                protoreflect.FullName = "google.protobuf.FieldOptions.weak"
 | 
			
		||||
	FieldOptions_DebugRedact_field_fullname         protoreflect.FullName = "google.protobuf.FieldOptions.debug_redact"
 | 
			
		||||
	FieldOptions_Retention_field_fullname           protoreflect.FullName = "google.protobuf.FieldOptions.retention"
 | 
			
		||||
	FieldOptions_Target_field_fullname              protoreflect.FullName = "google.protobuf.FieldOptions.target"
 | 
			
		||||
	FieldOptions_Targets_field_fullname             protoreflect.FullName = "google.protobuf.FieldOptions.targets"
 | 
			
		||||
	FieldOptions_EditionDefaults_field_fullname     protoreflect.FullName = "google.protobuf.FieldOptions.edition_defaults"
 | 
			
		||||
	FieldOptions_Features_field_fullname            protoreflect.FullName = "google.protobuf.FieldOptions.features"
 | 
			
		||||
	FieldOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.FieldOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -613,8 +681,9 @@ const (
 | 
			
		||||
	FieldOptions_Weak_field_number                protoreflect.FieldNumber = 10
 | 
			
		||||
	FieldOptions_DebugRedact_field_number         protoreflect.FieldNumber = 16
 | 
			
		||||
	FieldOptions_Retention_field_number           protoreflect.FieldNumber = 17
 | 
			
		||||
	FieldOptions_Target_field_number              protoreflect.FieldNumber = 18
 | 
			
		||||
	FieldOptions_Targets_field_number             protoreflect.FieldNumber = 19
 | 
			
		||||
	FieldOptions_EditionDefaults_field_number     protoreflect.FieldNumber = 20
 | 
			
		||||
	FieldOptions_Features_field_number            protoreflect.FieldNumber = 21
 | 
			
		||||
	FieldOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -624,24 +693,80 @@ const (
 | 
			
		||||
	FieldOptions_CType_enum_name     = "CType"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FieldOptions.CType.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_STRING_enum_value       = 0
 | 
			
		||||
	FieldOptions_CORD_enum_value         = 1
 | 
			
		||||
	FieldOptions_STRING_PIECE_enum_value = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FieldOptions.JSType.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_JSType_enum_fullname = "google.protobuf.FieldOptions.JSType"
 | 
			
		||||
	FieldOptions_JSType_enum_name     = "JSType"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FieldOptions.JSType.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_JS_NORMAL_enum_value = 0
 | 
			
		||||
	FieldOptions_JS_STRING_enum_value = 1
 | 
			
		||||
	FieldOptions_JS_NUMBER_enum_value = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FieldOptions.OptionRetention.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_OptionRetention_enum_fullname = "google.protobuf.FieldOptions.OptionRetention"
 | 
			
		||||
	FieldOptions_OptionRetention_enum_name     = "OptionRetention"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FieldOptions.OptionRetention.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_RETENTION_UNKNOWN_enum_value = 0
 | 
			
		||||
	FieldOptions_RETENTION_RUNTIME_enum_value = 1
 | 
			
		||||
	FieldOptions_RETENTION_SOURCE_enum_value  = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FieldOptions.OptionTargetType.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_OptionTargetType_enum_fullname = "google.protobuf.FieldOptions.OptionTargetType"
 | 
			
		||||
	FieldOptions_OptionTargetType_enum_name     = "OptionTargetType"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FieldOptions.OptionTargetType.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_TARGET_TYPE_UNKNOWN_enum_value         = 0
 | 
			
		||||
	FieldOptions_TARGET_TYPE_FILE_enum_value            = 1
 | 
			
		||||
	FieldOptions_TARGET_TYPE_EXTENSION_RANGE_enum_value = 2
 | 
			
		||||
	FieldOptions_TARGET_TYPE_MESSAGE_enum_value         = 3
 | 
			
		||||
	FieldOptions_TARGET_TYPE_FIELD_enum_value           = 4
 | 
			
		||||
	FieldOptions_TARGET_TYPE_ONEOF_enum_value           = 5
 | 
			
		||||
	FieldOptions_TARGET_TYPE_ENUM_enum_value            = 6
 | 
			
		||||
	FieldOptions_TARGET_TYPE_ENUM_ENTRY_enum_value      = 7
 | 
			
		||||
	FieldOptions_TARGET_TYPE_SERVICE_enum_value         = 8
 | 
			
		||||
	FieldOptions_TARGET_TYPE_METHOD_enum_value          = 9
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.FieldOptions.EditionDefault.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_EditionDefault_message_name     protoreflect.Name     = "EditionDefault"
 | 
			
		||||
	FieldOptions_EditionDefault_message_fullname protoreflect.FullName = "google.protobuf.FieldOptions.EditionDefault"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.FieldOptions.EditionDefault.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_EditionDefault_Edition_field_name protoreflect.Name = "edition"
 | 
			
		||||
	FieldOptions_EditionDefault_Value_field_name   protoreflect.Name = "value"
 | 
			
		||||
 | 
			
		||||
	FieldOptions_EditionDefault_Edition_field_fullname protoreflect.FullName = "google.protobuf.FieldOptions.EditionDefault.edition"
 | 
			
		||||
	FieldOptions_EditionDefault_Value_field_fullname   protoreflect.FullName = "google.protobuf.FieldOptions.EditionDefault.value"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.FieldOptions.EditionDefault.
 | 
			
		||||
const (
 | 
			
		||||
	FieldOptions_EditionDefault_Edition_field_number protoreflect.FieldNumber = 3
 | 
			
		||||
	FieldOptions_EditionDefault_Value_field_number   protoreflect.FieldNumber = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.OneofOptions.
 | 
			
		||||
const (
 | 
			
		||||
	OneofOptions_message_name     protoreflect.Name     = "OneofOptions"
 | 
			
		||||
@@ -650,13 +775,16 @@ const (
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.OneofOptions.
 | 
			
		||||
const (
 | 
			
		||||
	OneofOptions_Features_field_name            protoreflect.Name = "features"
 | 
			
		||||
	OneofOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	OneofOptions_Features_field_fullname            protoreflect.FullName = "google.protobuf.OneofOptions.features"
 | 
			
		||||
	OneofOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.OneofOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.OneofOptions.
 | 
			
		||||
const (
 | 
			
		||||
	OneofOptions_Features_field_number            protoreflect.FieldNumber = 1
 | 
			
		||||
	OneofOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -671,11 +799,13 @@ const (
 | 
			
		||||
	EnumOptions_AllowAlias_field_name                         protoreflect.Name = "allow_alias"
 | 
			
		||||
	EnumOptions_Deprecated_field_name                         protoreflect.Name = "deprecated"
 | 
			
		||||
	EnumOptions_DeprecatedLegacyJsonFieldConflicts_field_name protoreflect.Name = "deprecated_legacy_json_field_conflicts"
 | 
			
		||||
	EnumOptions_Features_field_name                           protoreflect.Name = "features"
 | 
			
		||||
	EnumOptions_UninterpretedOption_field_name                protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	EnumOptions_AllowAlias_field_fullname                         protoreflect.FullName = "google.protobuf.EnumOptions.allow_alias"
 | 
			
		||||
	EnumOptions_Deprecated_field_fullname                         protoreflect.FullName = "google.protobuf.EnumOptions.deprecated"
 | 
			
		||||
	EnumOptions_DeprecatedLegacyJsonFieldConflicts_field_fullname protoreflect.FullName = "google.protobuf.EnumOptions.deprecated_legacy_json_field_conflicts"
 | 
			
		||||
	EnumOptions_Features_field_fullname                           protoreflect.FullName = "google.protobuf.EnumOptions.features"
 | 
			
		||||
	EnumOptions_UninterpretedOption_field_fullname                protoreflect.FullName = "google.protobuf.EnumOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -684,6 +814,7 @@ const (
 | 
			
		||||
	EnumOptions_AllowAlias_field_number                         protoreflect.FieldNumber = 2
 | 
			
		||||
	EnumOptions_Deprecated_field_number                         protoreflect.FieldNumber = 3
 | 
			
		||||
	EnumOptions_DeprecatedLegacyJsonFieldConflicts_field_number protoreflect.FieldNumber = 6
 | 
			
		||||
	EnumOptions_Features_field_number                           protoreflect.FieldNumber = 7
 | 
			
		||||
	EnumOptions_UninterpretedOption_field_number                protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -696,15 +827,21 @@ const (
 | 
			
		||||
// Field names for google.protobuf.EnumValueOptions.
 | 
			
		||||
const (
 | 
			
		||||
	EnumValueOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
 | 
			
		||||
	EnumValueOptions_Features_field_name            protoreflect.Name = "features"
 | 
			
		||||
	EnumValueOptions_DebugRedact_field_name         protoreflect.Name = "debug_redact"
 | 
			
		||||
	EnumValueOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	EnumValueOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.EnumValueOptions.deprecated"
 | 
			
		||||
	EnumValueOptions_Features_field_fullname            protoreflect.FullName = "google.protobuf.EnumValueOptions.features"
 | 
			
		||||
	EnumValueOptions_DebugRedact_field_fullname         protoreflect.FullName = "google.protobuf.EnumValueOptions.debug_redact"
 | 
			
		||||
	EnumValueOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.EnumValueOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.EnumValueOptions.
 | 
			
		||||
const (
 | 
			
		||||
	EnumValueOptions_Deprecated_field_number          protoreflect.FieldNumber = 1
 | 
			
		||||
	EnumValueOptions_Features_field_number            protoreflect.FieldNumber = 2
 | 
			
		||||
	EnumValueOptions_DebugRedact_field_number         protoreflect.FieldNumber = 3
 | 
			
		||||
	EnumValueOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -716,15 +853,18 @@ const (
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.ServiceOptions.
 | 
			
		||||
const (
 | 
			
		||||
	ServiceOptions_Features_field_name            protoreflect.Name = "features"
 | 
			
		||||
	ServiceOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
 | 
			
		||||
	ServiceOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	ServiceOptions_Features_field_fullname            protoreflect.FullName = "google.protobuf.ServiceOptions.features"
 | 
			
		||||
	ServiceOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.ServiceOptions.deprecated"
 | 
			
		||||
	ServiceOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.ServiceOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.ServiceOptions.
 | 
			
		||||
const (
 | 
			
		||||
	ServiceOptions_Features_field_number            protoreflect.FieldNumber = 34
 | 
			
		||||
	ServiceOptions_Deprecated_field_number          protoreflect.FieldNumber = 33
 | 
			
		||||
	ServiceOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
@@ -739,10 +879,12 @@ const (
 | 
			
		||||
const (
 | 
			
		||||
	MethodOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
 | 
			
		||||
	MethodOptions_IdempotencyLevel_field_name    protoreflect.Name = "idempotency_level"
 | 
			
		||||
	MethodOptions_Features_field_name            protoreflect.Name = "features"
 | 
			
		||||
	MethodOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
 | 
			
		||||
 | 
			
		||||
	MethodOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.MethodOptions.deprecated"
 | 
			
		||||
	MethodOptions_IdempotencyLevel_field_fullname    protoreflect.FullName = "google.protobuf.MethodOptions.idempotency_level"
 | 
			
		||||
	MethodOptions_Features_field_fullname            protoreflect.FullName = "google.protobuf.MethodOptions.features"
 | 
			
		||||
	MethodOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.MethodOptions.uninterpreted_option"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -750,6 +892,7 @@ const (
 | 
			
		||||
const (
 | 
			
		||||
	MethodOptions_Deprecated_field_number          protoreflect.FieldNumber = 33
 | 
			
		||||
	MethodOptions_IdempotencyLevel_field_number    protoreflect.FieldNumber = 34
 | 
			
		||||
	MethodOptions_Features_field_number            protoreflect.FieldNumber = 35
 | 
			
		||||
	MethodOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -759,6 +902,13 @@ const (
 | 
			
		||||
	MethodOptions_IdempotencyLevel_enum_name     = "IdempotencyLevel"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.MethodOptions.IdempotencyLevel.
 | 
			
		||||
const (
 | 
			
		||||
	MethodOptions_IDEMPOTENCY_UNKNOWN_enum_value = 0
 | 
			
		||||
	MethodOptions_NO_SIDE_EFFECTS_enum_value     = 1
 | 
			
		||||
	MethodOptions_IDEMPOTENT_enum_value          = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.UninterpretedOption.
 | 
			
		||||
const (
 | 
			
		||||
	UninterpretedOption_message_name     protoreflect.Name     = "UninterpretedOption"
 | 
			
		||||
@@ -816,6 +966,163 @@ const (
 | 
			
		||||
	UninterpretedOption_NamePart_IsExtension_field_number protoreflect.FieldNumber = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.FeatureSet.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_message_name     protoreflect.Name     = "FeatureSet"
 | 
			
		||||
	FeatureSet_message_fullname protoreflect.FullName = "google.protobuf.FeatureSet"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.FeatureSet.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_FieldPresence_field_name         protoreflect.Name = "field_presence"
 | 
			
		||||
	FeatureSet_EnumType_field_name              protoreflect.Name = "enum_type"
 | 
			
		||||
	FeatureSet_RepeatedFieldEncoding_field_name protoreflect.Name = "repeated_field_encoding"
 | 
			
		||||
	FeatureSet_Utf8Validation_field_name        protoreflect.Name = "utf8_validation"
 | 
			
		||||
	FeatureSet_MessageEncoding_field_name       protoreflect.Name = "message_encoding"
 | 
			
		||||
	FeatureSet_JsonFormat_field_name            protoreflect.Name = "json_format"
 | 
			
		||||
 | 
			
		||||
	FeatureSet_FieldPresence_field_fullname         protoreflect.FullName = "google.protobuf.FeatureSet.field_presence"
 | 
			
		||||
	FeatureSet_EnumType_field_fullname              protoreflect.FullName = "google.protobuf.FeatureSet.enum_type"
 | 
			
		||||
	FeatureSet_RepeatedFieldEncoding_field_fullname protoreflect.FullName = "google.protobuf.FeatureSet.repeated_field_encoding"
 | 
			
		||||
	FeatureSet_Utf8Validation_field_fullname        protoreflect.FullName = "google.protobuf.FeatureSet.utf8_validation"
 | 
			
		||||
	FeatureSet_MessageEncoding_field_fullname       protoreflect.FullName = "google.protobuf.FeatureSet.message_encoding"
 | 
			
		||||
	FeatureSet_JsonFormat_field_fullname            protoreflect.FullName = "google.protobuf.FeatureSet.json_format"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.FeatureSet.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_FieldPresence_field_number         protoreflect.FieldNumber = 1
 | 
			
		||||
	FeatureSet_EnumType_field_number              protoreflect.FieldNumber = 2
 | 
			
		||||
	FeatureSet_RepeatedFieldEncoding_field_number protoreflect.FieldNumber = 3
 | 
			
		||||
	FeatureSet_Utf8Validation_field_number        protoreflect.FieldNumber = 4
 | 
			
		||||
	FeatureSet_MessageEncoding_field_number       protoreflect.FieldNumber = 5
 | 
			
		||||
	FeatureSet_JsonFormat_field_number            protoreflect.FieldNumber = 6
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FeatureSet.FieldPresence.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_FieldPresence_enum_fullname = "google.protobuf.FeatureSet.FieldPresence"
 | 
			
		||||
	FeatureSet_FieldPresence_enum_name     = "FieldPresence"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FeatureSet.FieldPresence.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_FIELD_PRESENCE_UNKNOWN_enum_value = 0
 | 
			
		||||
	FeatureSet_EXPLICIT_enum_value               = 1
 | 
			
		||||
	FeatureSet_IMPLICIT_enum_value               = 2
 | 
			
		||||
	FeatureSet_LEGACY_REQUIRED_enum_value        = 3
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FeatureSet.EnumType.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_EnumType_enum_fullname = "google.protobuf.FeatureSet.EnumType"
 | 
			
		||||
	FeatureSet_EnumType_enum_name     = "EnumType"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FeatureSet.EnumType.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_ENUM_TYPE_UNKNOWN_enum_value = 0
 | 
			
		||||
	FeatureSet_OPEN_enum_value              = 1
 | 
			
		||||
	FeatureSet_CLOSED_enum_value            = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FeatureSet.RepeatedFieldEncoding.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_RepeatedFieldEncoding_enum_fullname = "google.protobuf.FeatureSet.RepeatedFieldEncoding"
 | 
			
		||||
	FeatureSet_RepeatedFieldEncoding_enum_name     = "RepeatedFieldEncoding"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FeatureSet.RepeatedFieldEncoding.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_REPEATED_FIELD_ENCODING_UNKNOWN_enum_value = 0
 | 
			
		||||
	FeatureSet_PACKED_enum_value                          = 1
 | 
			
		||||
	FeatureSet_EXPANDED_enum_value                        = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FeatureSet.Utf8Validation.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_Utf8Validation_enum_fullname = "google.protobuf.FeatureSet.Utf8Validation"
 | 
			
		||||
	FeatureSet_Utf8Validation_enum_name     = "Utf8Validation"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FeatureSet.Utf8Validation.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_UTF8_VALIDATION_UNKNOWN_enum_value = 0
 | 
			
		||||
	FeatureSet_VERIFY_enum_value                  = 2
 | 
			
		||||
	FeatureSet_NONE_enum_value                    = 3
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FeatureSet.MessageEncoding.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_MessageEncoding_enum_fullname = "google.protobuf.FeatureSet.MessageEncoding"
 | 
			
		||||
	FeatureSet_MessageEncoding_enum_name     = "MessageEncoding"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FeatureSet.MessageEncoding.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_MESSAGE_ENCODING_UNKNOWN_enum_value = 0
 | 
			
		||||
	FeatureSet_LENGTH_PREFIXED_enum_value          = 1
 | 
			
		||||
	FeatureSet_DELIMITED_enum_value                = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.FeatureSet.JsonFormat.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_JsonFormat_enum_fullname = "google.protobuf.FeatureSet.JsonFormat"
 | 
			
		||||
	FeatureSet_JsonFormat_enum_name     = "JsonFormat"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.FeatureSet.JsonFormat.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSet_JSON_FORMAT_UNKNOWN_enum_value = 0
 | 
			
		||||
	FeatureSet_ALLOW_enum_value               = 1
 | 
			
		||||
	FeatureSet_LEGACY_BEST_EFFORT_enum_value  = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.FeatureSetDefaults.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSetDefaults_message_name     protoreflect.Name     = "FeatureSetDefaults"
 | 
			
		||||
	FeatureSetDefaults_message_fullname protoreflect.FullName = "google.protobuf.FeatureSetDefaults"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.FeatureSetDefaults.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSetDefaults_Defaults_field_name       protoreflect.Name = "defaults"
 | 
			
		||||
	FeatureSetDefaults_MinimumEdition_field_name protoreflect.Name = "minimum_edition"
 | 
			
		||||
	FeatureSetDefaults_MaximumEdition_field_name protoreflect.Name = "maximum_edition"
 | 
			
		||||
 | 
			
		||||
	FeatureSetDefaults_Defaults_field_fullname       protoreflect.FullName = "google.protobuf.FeatureSetDefaults.defaults"
 | 
			
		||||
	FeatureSetDefaults_MinimumEdition_field_fullname protoreflect.FullName = "google.protobuf.FeatureSetDefaults.minimum_edition"
 | 
			
		||||
	FeatureSetDefaults_MaximumEdition_field_fullname protoreflect.FullName = "google.protobuf.FeatureSetDefaults.maximum_edition"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.FeatureSetDefaults.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSetDefaults_Defaults_field_number       protoreflect.FieldNumber = 1
 | 
			
		||||
	FeatureSetDefaults_MinimumEdition_field_number protoreflect.FieldNumber = 4
 | 
			
		||||
	FeatureSetDefaults_MaximumEdition_field_number protoreflect.FieldNumber = 5
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_message_name     protoreflect.Name     = "FeatureSetEditionDefault"
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_message_fullname protoreflect.FullName = "google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_Edition_field_name  protoreflect.Name = "edition"
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_Features_field_name protoreflect.Name = "features"
 | 
			
		||||
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_Edition_field_fullname  protoreflect.FullName = "google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.edition"
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_Features_field_fullname protoreflect.FullName = "google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.features"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.
 | 
			
		||||
const (
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_Edition_field_number  protoreflect.FieldNumber = 3
 | 
			
		||||
	FeatureSetDefaults_FeatureSetEditionDefault_Features_field_number protoreflect.FieldNumber = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.SourceCodeInfo.
 | 
			
		||||
const (
 | 
			
		||||
	SourceCodeInfo_message_name     protoreflect.Name     = "SourceCodeInfo"
 | 
			
		||||
@@ -917,3 +1224,10 @@ const (
 | 
			
		||||
	GeneratedCodeInfo_Annotation_Semantic_enum_fullname = "google.protobuf.GeneratedCodeInfo.Annotation.Semantic"
 | 
			
		||||
	GeneratedCodeInfo_Annotation_Semantic_enum_name     = "Semantic"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.GeneratedCodeInfo.Annotation.Semantic.
 | 
			
		||||
const (
 | 
			
		||||
	GeneratedCodeInfo_Annotation_NONE_enum_value  = 0
 | 
			
		||||
	GeneratedCodeInfo_Annotation_SET_enum_value   = 1
 | 
			
		||||
	GeneratedCodeInfo_Annotation_ALIAS_enum_value = 2
 | 
			
		||||
)
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										31
									
								
								vendor/google.golang.org/protobuf/internal/genid/go_features_gen.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								vendor/google.golang.org/protobuf/internal/genid/go_features_gen.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
			
		||||
// Copyright 2019 The Go Authors. All rights reserved.
 | 
			
		||||
// Use of this source code is governed by a BSD-style
 | 
			
		||||
// license that can be found in the LICENSE file.
 | 
			
		||||
 | 
			
		||||
// Code generated by generate-protos. DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package genid
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const File_reflect_protodesc_proto_go_features_proto = "reflect/protodesc/proto/go_features.proto"
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.GoFeatures.
 | 
			
		||||
const (
 | 
			
		||||
	GoFeatures_message_name     protoreflect.Name     = "GoFeatures"
 | 
			
		||||
	GoFeatures_message_fullname protoreflect.FullName = "google.protobuf.GoFeatures"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field names for google.protobuf.GoFeatures.
 | 
			
		||||
const (
 | 
			
		||||
	GoFeatures_LegacyUnmarshalJsonEnum_field_name protoreflect.Name = "legacy_unmarshal_json_enum"
 | 
			
		||||
 | 
			
		||||
	GoFeatures_LegacyUnmarshalJsonEnum_field_fullname protoreflect.FullName = "google.protobuf.GoFeatures.legacy_unmarshal_json_enum"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Field numbers for google.protobuf.GoFeatures.
 | 
			
		||||
const (
 | 
			
		||||
	GoFeatures_LegacyUnmarshalJsonEnum_field_number protoreflect.FieldNumber = 1
 | 
			
		||||
)
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/google.golang.org/protobuf/internal/genid/struct_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/google.golang.org/protobuf/internal/genid/struct_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -18,6 +18,11 @@ const (
 | 
			
		||||
	NullValue_enum_name     = "NullValue"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.NullValue.
 | 
			
		||||
const (
 | 
			
		||||
	NullValue_NULL_VALUE_enum_value = 0
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.Struct.
 | 
			
		||||
const (
 | 
			
		||||
	Struct_message_name     protoreflect.Name     = "Struct"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										38
									
								
								vendor/google.golang.org/protobuf/internal/genid/type_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										38
									
								
								vendor/google.golang.org/protobuf/internal/genid/type_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -18,6 +18,13 @@ const (
 | 
			
		||||
	Syntax_enum_name     = "Syntax"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.Syntax.
 | 
			
		||||
const (
 | 
			
		||||
	Syntax_SYNTAX_PROTO2_enum_value   = 0
 | 
			
		||||
	Syntax_SYNTAX_PROTO3_enum_value   = 1
 | 
			
		||||
	Syntax_SYNTAX_EDITIONS_enum_value = 2
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.Type.
 | 
			
		||||
const (
 | 
			
		||||
	Type_message_name     protoreflect.Name     = "Type"
 | 
			
		||||
@@ -105,12 +112,43 @@ const (
 | 
			
		||||
	Field_Kind_enum_name     = "Kind"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.Field.Kind.
 | 
			
		||||
const (
 | 
			
		||||
	Field_TYPE_UNKNOWN_enum_value  = 0
 | 
			
		||||
	Field_TYPE_DOUBLE_enum_value   = 1
 | 
			
		||||
	Field_TYPE_FLOAT_enum_value    = 2
 | 
			
		||||
	Field_TYPE_INT64_enum_value    = 3
 | 
			
		||||
	Field_TYPE_UINT64_enum_value   = 4
 | 
			
		||||
	Field_TYPE_INT32_enum_value    = 5
 | 
			
		||||
	Field_TYPE_FIXED64_enum_value  = 6
 | 
			
		||||
	Field_TYPE_FIXED32_enum_value  = 7
 | 
			
		||||
	Field_TYPE_BOOL_enum_value     = 8
 | 
			
		||||
	Field_TYPE_STRING_enum_value   = 9
 | 
			
		||||
	Field_TYPE_GROUP_enum_value    = 10
 | 
			
		||||
	Field_TYPE_MESSAGE_enum_value  = 11
 | 
			
		||||
	Field_TYPE_BYTES_enum_value    = 12
 | 
			
		||||
	Field_TYPE_UINT32_enum_value   = 13
 | 
			
		||||
	Field_TYPE_ENUM_enum_value     = 14
 | 
			
		||||
	Field_TYPE_SFIXED32_enum_value = 15
 | 
			
		||||
	Field_TYPE_SFIXED64_enum_value = 16
 | 
			
		||||
	Field_TYPE_SINT32_enum_value   = 17
 | 
			
		||||
	Field_TYPE_SINT64_enum_value   = 18
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Full and short names for google.protobuf.Field.Cardinality.
 | 
			
		||||
const (
 | 
			
		||||
	Field_Cardinality_enum_fullname = "google.protobuf.Field.Cardinality"
 | 
			
		||||
	Field_Cardinality_enum_name     = "Cardinality"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum values for google.protobuf.Field.Cardinality.
 | 
			
		||||
const (
 | 
			
		||||
	Field_CARDINALITY_UNKNOWN_enum_value  = 0
 | 
			
		||||
	Field_CARDINALITY_OPTIONAL_enum_value = 1
 | 
			
		||||
	Field_CARDINALITY_REQUIRED_enum_value = 2
 | 
			
		||||
	Field_CARDINALITY_REPEATED_enum_value = 3
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Names for google.protobuf.Enum.
 | 
			
		||||
const (
 | 
			
		||||
	Enum_message_name     protoreflect.Name     = "Enum"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										22
									
								
								vendor/google.golang.org/protobuf/internal/impl/codec_extension.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								vendor/google.golang.org/protobuf/internal/impl/codec_extension.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -21,26 +21,18 @@ type extensionFieldInfo struct {
 | 
			
		||||
	validation          validationInfo
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var legacyExtensionFieldInfoCache sync.Map // map[protoreflect.ExtensionType]*extensionFieldInfo
 | 
			
		||||
 | 
			
		||||
func getExtensionFieldInfo(xt protoreflect.ExtensionType) *extensionFieldInfo {
 | 
			
		||||
	if xi, ok := xt.(*ExtensionInfo); ok {
 | 
			
		||||
		xi.lazyInit()
 | 
			
		||||
		return xi.info
 | 
			
		||||
	}
 | 
			
		||||
	return legacyLoadExtensionFieldInfo(xt)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// legacyLoadExtensionFieldInfo dynamically loads a *ExtensionInfo for xt.
 | 
			
		||||
func legacyLoadExtensionFieldInfo(xt protoreflect.ExtensionType) *extensionFieldInfo {
 | 
			
		||||
	if xi, ok := legacyExtensionFieldInfoCache.Load(xt); ok {
 | 
			
		||||
		return xi.(*extensionFieldInfo)
 | 
			
		||||
	}
 | 
			
		||||
	e := makeExtensionFieldInfo(xt.TypeDescriptor())
 | 
			
		||||
	if e, ok := legacyMessageTypeCache.LoadOrStore(xt, e); ok {
 | 
			
		||||
		return e.(*extensionFieldInfo)
 | 
			
		||||
	}
 | 
			
		||||
	return e
 | 
			
		||||
	// Ideally we'd cache the resulting *extensionFieldInfo so we don't have to
 | 
			
		||||
	// recompute this metadata repeatedly. But without support for something like
 | 
			
		||||
	// weak references, such a cache would pin temporary values (like dynamic
 | 
			
		||||
	// extension types, constructed for the duration of a user request) to the
 | 
			
		||||
	// heap forever, causing memory usage of the cache to grow unbounded.
 | 
			
		||||
	// See discussion in https://github.com/golang/protobuf/issues/1521.
 | 
			
		||||
	return makeExtensionFieldInfo(xt.TypeDescriptor())
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func makeExtensionFieldInfo(xd protoreflect.ExtensionDescriptor) *extensionFieldInfo {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										113
									
								
								vendor/google.golang.org/protobuf/internal/impl/codec_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										113
									
								
								vendor/google.golang.org/protobuf/internal/impl/codec_gen.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -162,11 +162,20 @@ func appendBoolSlice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions
 | 
			
		||||
func consumeBoolSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.BoolSlice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growBoolSlice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -732,11 +741,20 @@ func appendInt32Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOption
 | 
			
		||||
func consumeInt32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Int32Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growInt32Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -1138,11 +1156,20 @@ func appendSint32Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptio
 | 
			
		||||
func consumeSint32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Int32Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growInt32Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -1544,11 +1571,20 @@ func appendUint32Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptio
 | 
			
		||||
func consumeUint32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Uint32Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growUint32Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -1950,11 +1986,20 @@ func appendInt64Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOption
 | 
			
		||||
func consumeInt64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Int64Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growInt64Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -2356,11 +2401,20 @@ func appendSint64Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptio
 | 
			
		||||
func consumeSint64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Int64Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growInt64Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -2762,11 +2816,20 @@ func appendUint64Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptio
 | 
			
		||||
func consumeUint64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Uint64Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := 0
 | 
			
		||||
		for _, v := range b {
 | 
			
		||||
			if v < 0x80 {
 | 
			
		||||
				count++
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growUint64Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			var v uint64
 | 
			
		||||
			var n int
 | 
			
		||||
@@ -3145,11 +3208,15 @@ func appendSfixed32Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOpt
 | 
			
		||||
func consumeSfixed32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Int32Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := len(b) / protowire.SizeFixed32()
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growInt32Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			v, n := protowire.ConsumeFixed32(b)
 | 
			
		||||
			if n < 0 {
 | 
			
		||||
@@ -3461,11 +3528,15 @@ func appendFixed32Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOpti
 | 
			
		||||
func consumeFixed32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Uint32Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := len(b) / protowire.SizeFixed32()
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growUint32Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			v, n := protowire.ConsumeFixed32(b)
 | 
			
		||||
			if n < 0 {
 | 
			
		||||
@@ -3777,11 +3848,15 @@ func appendFloatSlice(b []byte, p pointer, f *coderFieldInfo, opts marshalOption
 | 
			
		||||
func consumeFloatSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Float32Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := len(b) / protowire.SizeFixed32()
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growFloat32Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			v, n := protowire.ConsumeFixed32(b)
 | 
			
		||||
			if n < 0 {
 | 
			
		||||
@@ -4093,11 +4168,15 @@ func appendSfixed64Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOpt
 | 
			
		||||
func consumeSfixed64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Int64Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := len(b) / protowire.SizeFixed64()
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growInt64Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			v, n := protowire.ConsumeFixed64(b)
 | 
			
		||||
			if n < 0 {
 | 
			
		||||
@@ -4409,11 +4488,15 @@ func appendFixed64Slice(b []byte, p pointer, f *coderFieldInfo, opts marshalOpti
 | 
			
		||||
func consumeFixed64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Uint64Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := len(b) / protowire.SizeFixed64()
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growUint64Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			v, n := protowire.ConsumeFixed64(b)
 | 
			
		||||
			if n < 0 {
 | 
			
		||||
@@ -4725,11 +4808,15 @@ func appendDoubleSlice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptio
 | 
			
		||||
func consumeDoubleSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
 | 
			
		||||
	sp := p.Float64Slice()
 | 
			
		||||
	if wtyp == protowire.BytesType {
 | 
			
		||||
		s := *sp
 | 
			
		||||
		b, n := protowire.ConsumeBytes(b)
 | 
			
		||||
		if n < 0 {
 | 
			
		||||
			return out, errDecode
 | 
			
		||||
		}
 | 
			
		||||
		count := len(b) / protowire.SizeFixed64()
 | 
			
		||||
		if count > 0 {
 | 
			
		||||
			p.growFloat64Slice(count)
 | 
			
		||||
		}
 | 
			
		||||
		s := *sp
 | 
			
		||||
		for len(b) > 0 {
 | 
			
		||||
			v, n := protowire.ConsumeFixed64(b)
 | 
			
		||||
			if n < 0 {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/impl/codec_tables.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/impl/codec_tables.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -197,7 +197,7 @@ func fieldCoder(fd protoreflect.FieldDescriptor, ft reflect.Type) (*MessageInfo,
 | 
			
		||||
		return getMessageInfo(ft), makeMessageFieldCoder(fd, ft)
 | 
			
		||||
	case fd.Kind() == protoreflect.GroupKind:
 | 
			
		||||
		return getMessageInfo(ft), makeGroupFieldCoder(fd, ft)
 | 
			
		||||
	case fd.Syntax() == protoreflect.Proto3 && fd.ContainingOneof() == nil:
 | 
			
		||||
	case !fd.HasPresence() && fd.ContainingOneof() == nil:
 | 
			
		||||
		// Populated oneof fields always encode even if set to the zero value,
 | 
			
		||||
		// which normally are not encoded in proto3.
 | 
			
		||||
		switch fd.Kind() {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -206,13 +206,18 @@ func aberrantLoadMessageDescReentrant(t reflect.Type, name protoreflect.FullName
 | 
			
		||||
 | 
			
		||||
	// Obtain a list of oneof wrapper types.
 | 
			
		||||
	var oneofWrappers []reflect.Type
 | 
			
		||||
	for _, method := range []string{"XXX_OneofFuncs", "XXX_OneofWrappers"} {
 | 
			
		||||
		if fn, ok := t.MethodByName(method); ok {
 | 
			
		||||
			for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
 | 
			
		||||
				if vs, ok := v.Interface().([]interface{}); ok {
 | 
			
		||||
					for _, v := range vs {
 | 
			
		||||
						oneofWrappers = append(oneofWrappers, reflect.TypeOf(v))
 | 
			
		||||
					}
 | 
			
		||||
	methods := make([]reflect.Method, 0, 2)
 | 
			
		||||
	if m, ok := t.MethodByName("XXX_OneofFuncs"); ok {
 | 
			
		||||
		methods = append(methods, m)
 | 
			
		||||
	}
 | 
			
		||||
	if m, ok := t.MethodByName("XXX_OneofWrappers"); ok {
 | 
			
		||||
		methods = append(methods, m)
 | 
			
		||||
	}
 | 
			
		||||
	for _, fn := range methods {
 | 
			
		||||
		for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
 | 
			
		||||
			if vs, ok := v.Interface().([]interface{}); ok {
 | 
			
		||||
				for _, v := range vs {
 | 
			
		||||
					oneofWrappers = append(oneofWrappers, reflect.TypeOf(v))
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/google.golang.org/protobuf/internal/impl/message.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										17
									
								
								vendor/google.golang.org/protobuf/internal/impl/message.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -192,12 +192,17 @@ fieldLoop:
 | 
			
		||||
 | 
			
		||||
	// Derive a mapping of oneof wrappers to fields.
 | 
			
		||||
	oneofWrappers := mi.OneofWrappers
 | 
			
		||||
	for _, method := range []string{"XXX_OneofFuncs", "XXX_OneofWrappers"} {
 | 
			
		||||
		if fn, ok := reflect.PtrTo(t).MethodByName(method); ok {
 | 
			
		||||
			for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
 | 
			
		||||
				if vs, ok := v.Interface().([]interface{}); ok {
 | 
			
		||||
					oneofWrappers = vs
 | 
			
		||||
				}
 | 
			
		||||
	methods := make([]reflect.Method, 0, 2)
 | 
			
		||||
	if m, ok := reflect.PtrTo(t).MethodByName("XXX_OneofFuncs"); ok {
 | 
			
		||||
		methods = append(methods, m)
 | 
			
		||||
	}
 | 
			
		||||
	if m, ok := reflect.PtrTo(t).MethodByName("XXX_OneofWrappers"); ok {
 | 
			
		||||
		methods = append(methods, m)
 | 
			
		||||
	}
 | 
			
		||||
	for _, fn := range methods {
 | 
			
		||||
		for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
 | 
			
		||||
			if vs, ok := v.Interface().([]interface{}); ok {
 | 
			
		||||
				oneofWrappers = vs
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -538,6 +538,6 @@ func isZero(v reflect.Value) bool {
 | 
			
		||||
		}
 | 
			
		||||
		return true
 | 
			
		||||
	default:
 | 
			
		||||
		panic(&reflect.ValueError{"reflect.Value.IsZero", v.Kind()})
 | 
			
		||||
		panic(&reflect.ValueError{Method: "reflect.Value.IsZero", Kind: v.Kind()})
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										36
									
								
								vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										36
									
								
								vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -159,6 +159,42 @@ func (p pointer) SetPointer(v pointer) {
 | 
			
		||||
	p.v.Elem().Set(v.v)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func growSlice(p pointer, addCap int) {
 | 
			
		||||
	// TODO: Once we only support Go 1.20 and newer, use reflect.Grow.
 | 
			
		||||
	in := p.v.Elem()
 | 
			
		||||
	out := reflect.MakeSlice(in.Type(), in.Len(), in.Len()+addCap)
 | 
			
		||||
	reflect.Copy(out, in)
 | 
			
		||||
	p.v.Elem().Set(out)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growBoolSlice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growInt32Slice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growUint32Slice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growInt64Slice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growUint64Slice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growFloat64Slice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growFloat32Slice(addCap int) {
 | 
			
		||||
	growSlice(p, addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (Export) MessageStateOf(p Pointer) *messageState     { panic("not supported") }
 | 
			
		||||
func (ms *messageState) pointer() pointer                 { panic("not supported") }
 | 
			
		||||
func (ms *messageState) messageInfo() *MessageInfo        { panic("not supported") }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										40
									
								
								vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										40
									
								
								vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -138,6 +138,46 @@ func (p pointer) SetPointer(v pointer) {
 | 
			
		||||
	*(*unsafe.Pointer)(p.p) = (unsafe.Pointer)(v.p)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growBoolSlice(addCap int) {
 | 
			
		||||
	sp := p.BoolSlice()
 | 
			
		||||
	s := make([]bool, 0, addCap+len(*sp))
 | 
			
		||||
	s = s[:len(*sp)]
 | 
			
		||||
	copy(s, *sp)
 | 
			
		||||
	*sp = s
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growInt32Slice(addCap int) {
 | 
			
		||||
	sp := p.Int32Slice()
 | 
			
		||||
	s := make([]int32, 0, addCap+len(*sp))
 | 
			
		||||
	s = s[:len(*sp)]
 | 
			
		||||
	copy(s, *sp)
 | 
			
		||||
	*sp = s
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growUint32Slice(addCap int) {
 | 
			
		||||
	p.growInt32Slice(addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growFloat32Slice(addCap int) {
 | 
			
		||||
	p.growInt32Slice(addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growInt64Slice(addCap int) {
 | 
			
		||||
	sp := p.Int64Slice()
 | 
			
		||||
	s := make([]int64, 0, addCap+len(*sp))
 | 
			
		||||
	s = s[:len(*sp)]
 | 
			
		||||
	copy(s, *sp)
 | 
			
		||||
	*sp = s
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growUint64Slice(addCap int) {
 | 
			
		||||
	p.growInt64Slice(addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (p pointer) growFloat64Slice(addCap int) {
 | 
			
		||||
	p.growInt64Slice(addCap)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Static check that MessageState does not exceed the size of a pointer.
 | 
			
		||||
const _ = uint(unsafe.Sizeof(unsafe.Pointer(nil)) - unsafe.Sizeof(MessageState{}))
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/strs/strings.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/strs/strings.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -17,7 +17,7 @@ import (
 | 
			
		||||
 | 
			
		||||
// EnforceUTF8 reports whether to enforce strict UTF-8 validation.
 | 
			
		||||
func EnforceUTF8(fd protoreflect.FieldDescriptor) bool {
 | 
			
		||||
	if flags.ProtoLegacy {
 | 
			
		||||
	if flags.ProtoLegacy || fd.Syntax() == protoreflect.Editions {
 | 
			
		||||
		if fd, ok := fd.(interface{ EnforceUTF8() bool }); ok {
 | 
			
		||||
			return fd.EnforceUTF8()
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,8 +2,8 @@
 | 
			
		||||
// Use of this source code is governed by a BSD-style
 | 
			
		||||
// license that can be found in the LICENSE file.
 | 
			
		||||
 | 
			
		||||
//go:build !purego && !appengine
 | 
			
		||||
// +build !purego,!appengine
 | 
			
		||||
//go:build !purego && !appengine && !go1.21
 | 
			
		||||
// +build !purego,!appengine,!go1.21
 | 
			
		||||
 | 
			
		||||
package strs
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										74
									
								
								vendor/google.golang.org/protobuf/internal/strs/strings_unsafe_go121.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								vendor/google.golang.org/protobuf/internal/strs/strings_unsafe_go121.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,74 @@
 | 
			
		||||
// Copyright 2018 The Go Authors. All rights reserved.
 | 
			
		||||
// Use of this source code is governed by a BSD-style
 | 
			
		||||
// license that can be found in the LICENSE file.
 | 
			
		||||
 | 
			
		||||
//go:build !purego && !appengine && go1.21
 | 
			
		||||
// +build !purego,!appengine,go1.21
 | 
			
		||||
 | 
			
		||||
package strs
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"unsafe"
 | 
			
		||||
 | 
			
		||||
	"google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// UnsafeString returns an unsafe string reference of b.
 | 
			
		||||
// The caller must treat the input slice as immutable.
 | 
			
		||||
//
 | 
			
		||||
// WARNING: Use carefully. The returned result must not leak to the end user
 | 
			
		||||
// unless the input slice is provably immutable.
 | 
			
		||||
func UnsafeString(b []byte) string {
 | 
			
		||||
	return unsafe.String(unsafe.SliceData(b), len(b))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UnsafeBytes returns an unsafe bytes slice reference of s.
 | 
			
		||||
// The caller must treat returned slice as immutable.
 | 
			
		||||
//
 | 
			
		||||
// WARNING: Use carefully. The returned result must not leak to the end user.
 | 
			
		||||
func UnsafeBytes(s string) []byte {
 | 
			
		||||
	return unsafe.Slice(unsafe.StringData(s), len(s))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Builder builds a set of strings with shared lifetime.
 | 
			
		||||
// This differs from strings.Builder, which is for building a single string.
 | 
			
		||||
type Builder struct {
 | 
			
		||||
	buf []byte
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// AppendFullName is equivalent to protoreflect.FullName.Append,
 | 
			
		||||
// but optimized for large batches where each name has a shared lifetime.
 | 
			
		||||
func (sb *Builder) AppendFullName(prefix protoreflect.FullName, name protoreflect.Name) protoreflect.FullName {
 | 
			
		||||
	n := len(prefix) + len(".") + len(name)
 | 
			
		||||
	if len(prefix) == 0 {
 | 
			
		||||
		n -= len(".")
 | 
			
		||||
	}
 | 
			
		||||
	sb.grow(n)
 | 
			
		||||
	sb.buf = append(sb.buf, prefix...)
 | 
			
		||||
	sb.buf = append(sb.buf, '.')
 | 
			
		||||
	sb.buf = append(sb.buf, name...)
 | 
			
		||||
	return protoreflect.FullName(sb.last(n))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// MakeString is equivalent to string(b), but optimized for large batches
 | 
			
		||||
// with a shared lifetime.
 | 
			
		||||
func (sb *Builder) MakeString(b []byte) string {
 | 
			
		||||
	sb.grow(len(b))
 | 
			
		||||
	sb.buf = append(sb.buf, b...)
 | 
			
		||||
	return sb.last(len(b))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (sb *Builder) grow(n int) {
 | 
			
		||||
	if cap(sb.buf)-len(sb.buf) >= n {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Unlike strings.Builder, we do not need to copy over the contents
 | 
			
		||||
	// of the old buffer since our builder provides no API for
 | 
			
		||||
	// retrieving previously created strings.
 | 
			
		||||
	sb.buf = make([]byte, 0, 2*(cap(sb.buf)+n))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (sb *Builder) last(n int) string {
 | 
			
		||||
	return UnsafeString(sb.buf[len(sb.buf)-n:])
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/version/version.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/google.golang.org/protobuf/internal/version/version.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -51,7 +51,7 @@ import (
 | 
			
		||||
//  10. Send out the CL for review and submit it.
 | 
			
		||||
const (
 | 
			
		||||
	Major      = 1
 | 
			
		||||
	Minor      = 31
 | 
			
		||||
	Minor      = 33
 | 
			
		||||
	Patch      = 0
 | 
			
		||||
	PreRelease = ""
 | 
			
		||||
)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user