blob: 4230ab847221204f7c8f16f09106135a84d9faff [file] [log] [blame]
// 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 reflection_test
import (
"fmt"
"math"
"testing"
testpb "google.golang.org/protobuf/internal/testprotos/testeditions/testeditions_hybrid"
"google.golang.org/protobuf/reflect/protoreflect"
"google.golang.org/protobuf/testing/prototest"
)
func TestOpen3Concrete(t *testing.T) {
prototest.Message{}.Test(t, newTestMessageOpen3(nil).ProtoReflect().Type())
}
func TestOpen3Reflection(t *testing.T) {
prototest.Message{}.Test(t, (*testpb.TestAllTypes)(nil).ProtoReflect().Type())
}
func TestOpen3Shadow_GetConcrete_SetReflection(t *testing.T) {
prototest.Message{}.Test(t, newShadow(func() (get, set protoreflect.ProtoMessage) {
m := &testpb.TestAllTypes{}
return newTestMessageOpen3(m), m
}).ProtoReflect().Type())
}
func TestOpen3Shadow_GetReflection_SetConcrete(t *testing.T) {
prototest.Message{}.Test(t, newShadow(func() (get, set protoreflect.ProtoMessage) {
m := &testpb.TestAllTypes{}
return m, newTestMessageOpen3(m)
}).ProtoReflect().Type())
}
func newTestMessageOpen3(m *testpb.TestAllTypes) protoreflect.ProtoMessage {
return &testProtoMessage{
m: m,
md: m.ProtoReflect().Descriptor(),
new: func() protoreflect.Message {
return newTestMessageOpen3(&testpb.TestAllTypes{}).ProtoReflect()
},
has: func(num protoreflect.FieldNumber) bool {
switch num {
case fieldSingularInt32:
return m.GetSingularInt32() != 0
case fieldSingularInt64:
return m.GetSingularInt64() != 0
case fieldSingularUint32:
return m.GetSingularUint32() != 0
case fieldSingularUint64:
return m.GetSingularUint64() != 0
case fieldSingularSint32:
return m.GetSingularSint32() != 0
case fieldSingularSint64:
return m.GetSingularSint64() != 0
case fieldSingularFixed32:
return m.GetSingularFixed32() != 0
case fieldSingularFixed64:
return m.GetSingularFixed64() != 0
case fieldSingularSfixed32:
return m.GetSingularSfixed32() != 0
case fieldSingularSfixed64:
return m.GetSingularSfixed64() != 0
case fieldSingularFloat:
return m.GetSingularFloat() != 0 || math.Signbit(float64(m.GetSingularFloat()))
case fieldSingularDouble:
return m.GetSingularDouble() != 0 || math.Signbit(m.GetSingularDouble())
case fieldSingularBool:
return m.GetSingularBool() != false
case fieldSingularString:
return m.GetSingularString() != ""
case fieldSingularBytes:
return len(m.GetSingularBytes()) != 0
case fieldSingularNestedEnum:
return m.GetSingularNestedEnum() != testpb.TestAllTypes_FOO
case fieldSingularForeignEnum:
return m.GetSingularForeignEnum() != testpb.ForeignEnum_FOREIGN_ZERO
case fieldSingularImportEnum:
return m.GetSingularImportEnum() != testpb.ImportEnum_IMPORT_ZERO
case fieldOptionalInt32:
return m.HasOptionalInt32()
case fieldOptionalInt64:
return m.HasOptionalInt64()
case fieldOptionalUint32:
return m.HasOptionalUint32()
case fieldOptionalUint64:
return m.HasOptionalUint64()
case fieldOptionalSint32:
return m.HasOptionalSint32()
case fieldOptionalSint64:
return m.HasOptionalSint64()
case fieldOptionalFixed32:
return m.HasOptionalFixed32()
case fieldOptionalFixed64:
return m.HasOptionalFixed64()
case fieldOptionalSfixed32:
return m.HasOptionalSfixed32()
case fieldOptionalSfixed64:
return m.HasOptionalSfixed64()
case fieldOptionalFloat:
return m.HasOptionalFloat()
case fieldOptionalDouble:
return m.HasOptionalDouble()
case fieldOptionalBool:
return m.HasOptionalBool()
case fieldOptionalString:
return m.HasOptionalString()
case fieldOptionalBytes:
return m.HasOptionalBytes()
case fieldOptionalGroup:
return m.HasOptionalgroup()
case fieldNotGroupLikeDelimited:
return m.HasNotGroupLikeDelimited()
case fieldOptionalNestedMessage:
return m.HasOptionalNestedMessage()
case fieldOptionalForeignMessage:
return m.HasOptionalForeignMessage()
case fieldOptionalImportMessage:
return m.HasOptionalImportMessage()
case fieldOptionalNestedEnum:
return m.HasOptionalNestedEnum()
case fieldOptionalForeignEnum:
return m.HasOptionalForeignEnum()
case fieldOptionalImportEnum:
return m.HasOptionalImportEnum()
case fieldOptionalLazyNestedMessage:
return m.HasOptionalLazyNestedMessage()
case fieldRepeatedInt32:
return len(m.GetRepeatedInt32()) > 0
case fieldRepeatedInt64:
return len(m.GetRepeatedInt64()) > 0
case fieldRepeatedUint32:
return len(m.GetRepeatedUint32()) > 0
case fieldRepeatedUint64:
return len(m.GetRepeatedUint64()) > 0
case fieldRepeatedSint32:
return len(m.GetRepeatedSint32()) > 0
case fieldRepeatedSint64:
return len(m.GetRepeatedSint64()) > 0
case fieldRepeatedFixed32:
return len(m.GetRepeatedFixed32()) > 0
case fieldRepeatedFixed64:
return len(m.GetRepeatedFixed64()) > 0
case fieldRepeatedSfixed32:
return len(m.GetRepeatedSfixed32()) > 0
case fieldRepeatedSfixed64:
return len(m.GetRepeatedSfixed64()) > 0
case fieldRepeatedFloat:
return len(m.GetRepeatedFloat()) > 0
case fieldRepeatedDouble:
return len(m.GetRepeatedDouble()) > 0
case fieldRepeatedBool:
return len(m.GetRepeatedBool()) > 0
case fieldRepeatedString:
return len(m.GetRepeatedString()) > 0
case fieldRepeatedBytes:
return len(m.GetRepeatedBytes()) > 0
case fieldRepeatedGroup:
return len(m.GetRepeatedgroup()) > 0
case fieldRepeatedNestedMessage:
return len(m.GetRepeatedNestedMessage()) > 0
case fieldRepeatedForeignMessage:
return len(m.GetRepeatedForeignMessage()) > 0
case fieldRepeatedImportMessage:
return len(m.GetRepeatedImportmessage()) > 0
case fieldRepeatedNestedEnum:
return len(m.GetRepeatedNestedEnum()) > 0
case fieldRepeatedForeignEnum:
return len(m.GetRepeatedForeignEnum()) > 0
case fieldRepeatedImportEnum:
return len(m.GetRepeatedImportenum()) > 0
case fieldMapInt32Int32:
return len(m.GetMapInt32Int32()) > 0
case fieldMapInt64Int64:
return len(m.GetMapInt64Int64()) > 0
case fieldMapUint32Uint32:
return len(m.GetMapUint32Uint32()) > 0
case fieldMapUint64Uint64:
return len(m.GetMapUint64Uint64()) > 0
case fieldMapSint32Sint32:
return len(m.GetMapSint32Sint32()) > 0
case fieldMapSint64Sint64:
return len(m.GetMapSint64Sint64()) > 0
case fieldMapFixed32Fixed32:
return len(m.GetMapFixed32Fixed32()) > 0
case fieldMapFixed64Fixed64:
return len(m.GetMapFixed64Fixed64()) > 0
case fieldMapSfixed32Sfixed32:
return len(m.GetMapSfixed32Sfixed32()) > 0
case fieldMapSfixed64Sfixed64:
return len(m.GetMapSfixed64Sfixed64()) > 0
case fieldMapInt32Float:
return len(m.GetMapInt32Float()) > 0
case fieldMapInt32Double:
return len(m.GetMapInt32Double()) > 0
case fieldMapBoolBool:
return len(m.GetMapBoolBool()) > 0
case fieldMapStringString:
return len(m.GetMapStringString()) > 0
case fieldMapStringBytes:
return len(m.GetMapStringBytes()) > 0
case fieldMapStringNestedMessage:
return len(m.GetMapStringNestedMessage()) > 0
case fieldMapStringNestedEnum:
return len(m.GetMapStringNestedEnum()) > 0
case fieldDefaultInt32:
return m.HasDefaultInt32()
case fieldDefaultInt64:
return m.HasDefaultInt64()
case fieldDefaultUint32:
return m.HasDefaultUint32()
case fieldDefaultUint64:
return m.HasDefaultUint64()
case fieldDefaultSint32:
return m.HasDefaultSint32()
case fieldDefaultSint64:
return m.HasDefaultSint64()
case fieldDefaultFixed32:
return m.HasDefaultFixed32()
case fieldDefaultFixed64:
return m.HasDefaultFixed64()
case fieldDefaultSfixed32:
return m.HasDefaultSfixed32()
case fieldDefaultSfixed64:
return m.HasDefaultSfixed64()
case fieldDefaultFloat:
return m.HasDefaultFloat()
case fieldDefaultDouble:
return m.HasDefaultDouble()
case fieldDefaultBool:
return m.HasDefaultBool()
case fieldDefaultString:
return m.HasDefaultString()
case fieldDefaultBytes:
return m.HasDefaultBytes()
case fieldDefaultNestedEnum:
return m.HasDefaultNestedEnum()
case fieldDefaultForeignEnum:
return m.HasDefaultForeignEnum()
case fieldOneofUint32:
return m.HasOneofUint32()
case fieldOneofNestedMessage:
return m.HasOneofNestedMessage()
case fieldOneofString:
return m.HasOneofString()
case fieldOneofBytes:
return m.HasOneofBytes()
case fieldOneofBool:
return m.HasOneofBool()
case fieldOneofUint64:
return m.HasOneofUint64()
case fieldOneofFloat:
return m.HasOneofFloat()
case fieldOneofDouble:
return m.HasOneofDouble()
case fieldOneofEnum:
return m.HasOneofEnum()
case fieldOneofGroup:
return m.HasOneofgroup()
case fieldOneofOptionalUint32:
return m.HasOneofOptionalUint32()
default:
panic(fmt.Sprintf("has: unknown field %d", num))
}
},
get: func(num protoreflect.FieldNumber) any {
switch num {
case fieldSingularInt32:
return m.GetSingularInt32()
case fieldSingularInt64:
return m.GetSingularInt64()
case fieldSingularUint32:
return m.GetSingularUint32()
case fieldSingularUint64:
return m.GetSingularUint64()
case fieldSingularSint32:
return m.GetSingularSint32()
case fieldSingularSint64:
return m.GetSingularSint64()
case fieldSingularFixed32:
return m.GetSingularFixed32()
case fieldSingularFixed64:
return m.GetSingularFixed64()
case fieldSingularSfixed32:
return m.GetSingularSfixed32()
case fieldSingularSfixed64:
return m.GetSingularSfixed64()
case fieldSingularFloat:
return m.GetSingularFloat()
case fieldSingularDouble:
return m.GetSingularDouble()
case fieldSingularBool:
return m.GetSingularBool()
case fieldSingularString:
return m.GetSingularString()
case fieldSingularBytes:
return m.GetSingularBytes()
case fieldSingularNestedEnum:
return m.GetSingularNestedEnum()
case fieldSingularForeignEnum:
return m.GetSingularForeignEnum()
case fieldSingularImportEnum:
return m.GetSingularImportEnum()
case fieldOptionalInt32:
return m.GetOptionalInt32()
case fieldOptionalInt64:
return m.GetOptionalInt64()
case fieldOptionalUint32:
return m.GetOptionalUint32()
case fieldOptionalUint64:
return m.GetOptionalUint64()
case fieldOptionalSint32:
return m.GetOptionalSint32()
case fieldOptionalSint64:
return m.GetOptionalSint64()
case fieldOptionalFixed32:
return m.GetOptionalFixed32()
case fieldOptionalFixed64:
return m.GetOptionalFixed64()
case fieldOptionalSfixed32:
return m.GetOptionalSfixed32()
case fieldOptionalSfixed64:
return m.GetOptionalSfixed64()
case fieldOptionalFloat:
return m.GetOptionalFloat()
case fieldOptionalDouble:
return m.GetOptionalDouble()
case fieldOptionalBool:
return m.GetOptionalBool()
case fieldOptionalString:
return m.GetOptionalString()
case fieldOptionalBytes:
return m.GetOptionalBytes()
case fieldOptionalGroup:
return m.GetOptionalgroup()
case fieldNotGroupLikeDelimited:
return m.GetNotGroupLikeDelimited()
case fieldOptionalNestedMessage:
return m.GetOptionalNestedMessage()
case fieldOptionalForeignMessage:
return m.GetOptionalForeignMessage()
case fieldOptionalImportMessage:
return m.GetOptionalImportMessage()
case fieldOptionalNestedEnum:
return m.GetOptionalNestedEnum()
case fieldOptionalForeignEnum:
return m.GetOptionalForeignEnum()
case fieldOptionalImportEnum:
return m.GetOptionalImportEnum()
case fieldOptionalLazyNestedMessage:
return m.GetOptionalLazyNestedMessage()
case fieldRepeatedInt32:
return m.GetRepeatedInt32()
case fieldRepeatedInt64:
return m.GetRepeatedInt64()
case fieldRepeatedUint32:
return m.GetRepeatedUint32()
case fieldRepeatedUint64:
return m.GetRepeatedUint64()
case fieldRepeatedSint32:
return m.GetRepeatedSint32()
case fieldRepeatedSint64:
return m.GetRepeatedSint64()
case fieldRepeatedFixed32:
return m.GetRepeatedFixed32()
case fieldRepeatedFixed64:
return m.GetRepeatedFixed64()
case fieldRepeatedSfixed32:
return m.GetRepeatedSfixed32()
case fieldRepeatedSfixed64:
return m.GetRepeatedSfixed64()
case fieldRepeatedFloat:
return m.GetRepeatedFloat()
case fieldRepeatedDouble:
return m.GetRepeatedDouble()
case fieldRepeatedBool:
return m.GetRepeatedBool()
case fieldRepeatedString:
return m.GetRepeatedString()
case fieldRepeatedBytes:
return m.GetRepeatedBytes()
case fieldRepeatedGroup:
return m.GetRepeatedgroup()
case fieldRepeatedNestedMessage:
return m.GetRepeatedNestedMessage()
case fieldRepeatedForeignMessage:
return m.GetRepeatedForeignMessage()
case fieldRepeatedImportMessage:
return m.GetRepeatedImportmessage()
case fieldRepeatedNestedEnum:
return m.GetRepeatedNestedEnum()
case fieldRepeatedForeignEnum:
return m.GetRepeatedForeignEnum()
case fieldRepeatedImportEnum:
return m.GetRepeatedImportenum()
case fieldMapInt32Int32:
return m.GetMapInt32Int32()
case fieldMapInt64Int64:
return m.GetMapInt64Int64()
case fieldMapUint32Uint32:
return m.GetMapUint32Uint32()
case fieldMapUint64Uint64:
return m.GetMapUint64Uint64()
case fieldMapSint32Sint32:
return m.GetMapSint32Sint32()
case fieldMapSint64Sint64:
return m.GetMapSint64Sint64()
case fieldMapFixed32Fixed32:
return m.GetMapFixed32Fixed32()
case fieldMapFixed64Fixed64:
return m.GetMapFixed64Fixed64()
case fieldMapSfixed32Sfixed32:
return m.GetMapSfixed32Sfixed32()
case fieldMapSfixed64Sfixed64:
return m.GetMapSfixed64Sfixed64()
case fieldMapInt32Float:
return m.GetMapInt32Float()
case fieldMapInt32Double:
return m.GetMapInt32Double()
case fieldMapBoolBool:
return m.GetMapBoolBool()
case fieldMapStringString:
return m.GetMapStringString()
case fieldMapStringBytes:
return m.GetMapStringBytes()
case fieldMapStringNestedMessage:
return m.GetMapStringNestedMessage()
case fieldMapStringNestedEnum:
return m.GetMapStringNestedEnum()
case fieldDefaultInt32:
return m.GetDefaultInt32()
case fieldDefaultInt64:
return m.GetDefaultInt64()
case fieldDefaultUint32:
return m.GetDefaultUint32()
case fieldDefaultUint64:
return m.GetDefaultUint64()
case fieldDefaultSint32:
return m.GetDefaultSint32()
case fieldDefaultSint64:
return m.GetDefaultSint64()
case fieldDefaultFixed32:
return m.GetDefaultFixed32()
case fieldDefaultFixed64:
return m.GetDefaultFixed64()
case fieldDefaultSfixed32:
return m.GetDefaultSfixed32()
case fieldDefaultSfixed64:
return m.GetDefaultSfixed64()
case fieldDefaultFloat:
return m.GetDefaultFloat()
case fieldDefaultDouble:
return m.GetDefaultDouble()
case fieldDefaultBool:
return m.GetDefaultBool()
case fieldDefaultString:
return m.GetDefaultString()
case fieldDefaultBytes:
return m.GetDefaultBytes()
case fieldDefaultNestedEnum:
return m.GetDefaultNestedEnum()
case fieldDefaultForeignEnum:
return m.GetDefaultForeignEnum()
case fieldOneofUint32:
return m.GetOneofUint32()
case fieldOneofNestedMessage:
return m.GetOneofNestedMessage()
case fieldOneofString:
return m.GetOneofString()
case fieldOneofBytes:
return m.GetOneofBytes()
case fieldOneofBool:
return m.GetOneofBool()
case fieldOneofUint64:
return m.GetOneofUint64()
case fieldOneofFloat:
return m.GetOneofFloat()
case fieldOneofDouble:
return m.GetOneofDouble()
case fieldOneofEnum:
return m.GetOneofEnum()
case fieldOneofGroup:
return m.GetOneofgroup()
case fieldOneofOptionalUint32:
return m.GetOneofOptionalUint32()
default:
panic(fmt.Sprintf("get: unknown field %d", num))
}
},
set: func(num protoreflect.FieldNumber, v any) {
switch num {
case fieldSingularInt32:
m.SetSingularInt32(v.(int32))
case fieldSingularInt64:
m.SetSingularInt64(v.(int64))
case fieldSingularUint32:
m.SetSingularUint32(v.(uint32))
case fieldSingularUint64:
m.SetSingularUint64(v.(uint64))
case fieldSingularSint32:
m.SetSingularSint32(v.(int32))
case fieldSingularSint64:
m.SetSingularSint64(v.(int64))
case fieldSingularFixed32:
m.SetSingularFixed32(v.(uint32))
case fieldSingularFixed64:
m.SetSingularFixed64(v.(uint64))
case fieldSingularSfixed32:
m.SetSingularSfixed32(v.(int32))
case fieldSingularSfixed64:
m.SetSingularSfixed64(v.(int64))
case fieldSingularFloat:
m.SetSingularFloat(v.(float32))
case fieldSingularDouble:
m.SetSingularDouble(v.(float64))
case fieldSingularBool:
m.SetSingularBool(v.(bool))
case fieldSingularString:
m.SetSingularString(v.(string))
case fieldSingularBytes:
m.SetSingularBytes(v.([]byte))
case fieldSingularNestedEnum:
m.SetSingularNestedEnum(testpb.TestAllTypes_NestedEnum(v.(protoreflect.EnumNumber)))
case fieldSingularForeignEnum:
m.SetSingularForeignEnum(testpb.ForeignEnum(v.(protoreflect.EnumNumber)))
case fieldSingularImportEnum:
m.SetSingularImportEnum(testpb.ImportEnum(v.(protoreflect.EnumNumber)))
case fieldOptionalInt32:
m.SetOptionalInt32(v.(int32))
case fieldOptionalInt64:
m.SetOptionalInt64(v.(int64))
case fieldOptionalUint32:
m.SetOptionalUint32(v.(uint32))
case fieldOptionalUint64:
m.SetOptionalUint64(v.(uint64))
case fieldOptionalSint32:
m.SetOptionalSint32(v.(int32))
case fieldOptionalSint64:
m.SetOptionalSint64(v.(int64))
case fieldOptionalFixed32:
m.SetOptionalFixed32(v.(uint32))
case fieldOptionalFixed64:
m.SetOptionalFixed64(v.(uint64))
case fieldOptionalSfixed32:
m.SetOptionalSfixed32(v.(int32))
case fieldOptionalSfixed64:
m.SetOptionalSfixed64(v.(int64))
case fieldOptionalFloat:
m.SetOptionalFloat(v.(float32))
case fieldOptionalDouble:
m.SetOptionalDouble(v.(float64))
case fieldOptionalBool:
m.SetOptionalBool(v.(bool))
case fieldOptionalString:
m.SetOptionalString(v.(string))
case fieldOptionalBytes:
m.SetOptionalBytes(v.([]byte))
case fieldOptionalGroup:
m.SetOptionalgroup(v.(*testpb.TestAllTypes_OptionalGroup))
case fieldNotGroupLikeDelimited:
m.SetNotGroupLikeDelimited(v.(*testpb.TestAllTypes_OptionalGroup))
case fieldOptionalNestedMessage:
m.SetOptionalNestedMessage(v.(*testpb.TestAllTypes_NestedMessage))
case fieldOptionalForeignMessage:
m.SetOptionalForeignMessage(v.(*testpb.ForeignMessage))
case fieldOptionalImportMessage:
m.SetOptionalImportMessage(v.(*testpb.ImportMessage))
case fieldOptionalNestedEnum:
m.SetOptionalNestedEnum(testpb.TestAllTypes_NestedEnum(v.(protoreflect.EnumNumber)))
case fieldOptionalForeignEnum:
m.SetOptionalForeignEnum(testpb.ForeignEnum(v.(protoreflect.EnumNumber)))
case fieldOptionalImportEnum:
m.SetOptionalImportEnum(testpb.ImportEnum(v.(protoreflect.EnumNumber)))
case fieldOptionalLazyNestedMessage:
m.SetOptionalLazyNestedMessage(v.(*testpb.TestAllTypes_NestedMessage))
case fieldRepeatedInt32:
m.SetRepeatedInt32(v.([]int32))
case fieldRepeatedInt64:
m.SetRepeatedInt64(v.([]int64))
case fieldRepeatedUint32:
m.SetRepeatedUint32(v.([]uint32))
case fieldRepeatedUint64:
m.SetRepeatedUint64(v.([]uint64))
case fieldRepeatedSint32:
m.SetRepeatedSint32(v.([]int32))
case fieldRepeatedSint64:
m.SetRepeatedSint64(v.([]int64))
case fieldRepeatedFixed32:
m.SetRepeatedFixed32(v.([]uint32))
case fieldRepeatedFixed64:
m.SetRepeatedFixed64(v.([]uint64))
case fieldRepeatedSfixed32:
m.SetRepeatedSfixed32(v.([]int32))
case fieldRepeatedSfixed64:
m.SetRepeatedSfixed64(v.([]int64))
case fieldRepeatedFloat:
m.SetRepeatedFloat(v.([]float32))
case fieldRepeatedDouble:
m.SetRepeatedDouble(v.([]float64))
case fieldRepeatedBool:
m.SetRepeatedBool(v.([]bool))
case fieldRepeatedString:
m.SetRepeatedString(v.([]string))
case fieldRepeatedBytes:
m.SetRepeatedBytes(v.([][]byte))
case fieldRepeatedGroup:
m.SetRepeatedgroup(v.([]*testpb.TestAllTypes_RepeatedGroup))
case fieldRepeatedNestedMessage:
m.SetRepeatedNestedMessage(v.([]*testpb.TestAllTypes_NestedMessage))
case fieldRepeatedForeignMessage:
m.SetRepeatedForeignMessage(v.([]*testpb.ForeignMessage))
case fieldRepeatedImportMessage:
m.SetRepeatedImportmessage(v.([]*testpb.ImportMessage))
case fieldRepeatedNestedEnum:
m.SetRepeatedNestedEnum(v.([]testpb.TestAllTypes_NestedEnum))
case fieldRepeatedForeignEnum:
m.SetRepeatedForeignEnum(v.([]testpb.ForeignEnum))
case fieldRepeatedImportEnum:
m.SetRepeatedImportenum(v.([]testpb.ImportEnum))
case fieldMapInt32Int32:
m.SetMapInt32Int32(v.(map[int32]int32))
case fieldMapInt64Int64:
m.SetMapInt64Int64(v.(map[int64]int64))
case fieldMapUint32Uint32:
m.SetMapUint32Uint32(v.(map[uint32]uint32))
case fieldMapUint64Uint64:
m.SetMapUint64Uint64(v.(map[uint64]uint64))
case fieldMapSint32Sint32:
m.SetMapSint32Sint32(v.(map[int32]int32))
case fieldMapSint64Sint64:
m.SetMapSint64Sint64(v.(map[int64]int64))
case fieldMapFixed32Fixed32:
m.SetMapFixed32Fixed32(v.(map[uint32]uint32))
case fieldMapFixed64Fixed64:
m.SetMapFixed64Fixed64(v.(map[uint64]uint64))
case fieldMapSfixed32Sfixed32:
m.SetMapSfixed32Sfixed32(v.(map[int32]int32))
case fieldMapSfixed64Sfixed64:
m.SetMapSfixed64Sfixed64(v.(map[int64]int64))
case fieldMapInt32Float:
m.SetMapInt32Float(v.(map[int32]float32))
case fieldMapInt32Double:
m.SetMapInt32Double(v.(map[int32]float64))
case fieldMapBoolBool:
m.SetMapBoolBool(v.(map[bool]bool))
case fieldMapStringString:
m.SetMapStringString(v.(map[string]string))
case fieldMapStringBytes:
m.SetMapStringBytes(v.(map[string][]byte))
case fieldMapStringNestedMessage:
m.SetMapStringNestedMessage(v.(map[string]*testpb.TestAllTypes_NestedMessage))
case fieldMapStringNestedEnum:
m.SetMapStringNestedEnum(v.(map[string]testpb.TestAllTypes_NestedEnum))
case fieldDefaultInt32:
m.SetDefaultInt32(v.(int32))
case fieldDefaultInt64:
m.SetDefaultInt64(v.(int64))
case fieldDefaultUint32:
m.SetDefaultUint32(v.(uint32))
case fieldDefaultUint64:
m.SetDefaultUint64(v.(uint64))
case fieldDefaultSint32:
m.SetDefaultSint32(v.(int32))
case fieldDefaultSint64:
m.SetDefaultSint64(v.(int64))
case fieldDefaultFixed32:
m.SetDefaultFixed32(v.(uint32))
case fieldDefaultFixed64:
m.SetDefaultFixed64(v.(uint64))
case fieldDefaultSfixed32:
m.SetDefaultSfixed32(v.(int32))
case fieldDefaultSfixed64:
m.SetDefaultSfixed64(v.(int64))
case fieldDefaultFloat:
m.SetDefaultFloat(v.(float32))
case fieldDefaultDouble:
m.SetDefaultDouble(v.(float64))
case fieldDefaultBool:
m.SetDefaultBool(v.(bool))
case fieldDefaultString:
m.SetDefaultString(v.(string))
case fieldDefaultBytes:
m.SetDefaultBytes(v.([]byte))
case fieldDefaultNestedEnum:
m.SetDefaultNestedEnum(testpb.TestAllTypes_NestedEnum(v.(protoreflect.EnumNumber)))
case fieldDefaultForeignEnum:
m.SetDefaultForeignEnum(testpb.ForeignEnum(v.(protoreflect.EnumNumber)))
case fieldDefaultInt32:
m.SetDefaultInt32(v.(int32))
case fieldDefaultInt64:
m.SetDefaultInt64(v.(int64))
case fieldDefaultUint32:
m.SetDefaultUint32(v.(uint32))
case fieldDefaultUint64:
m.SetDefaultUint64(v.(uint64))
case fieldDefaultSint32:
m.SetDefaultSint32(v.(int32))
case fieldDefaultSint64:
m.SetDefaultSint64(v.(int64))
case fieldDefaultFixed32:
m.SetDefaultFixed32(v.(uint32))
case fieldDefaultFixed64:
m.SetDefaultFixed64(v.(uint64))
case fieldDefaultSfixed32:
m.SetDefaultSfixed32(v.(int32))
case fieldDefaultSfixed64:
m.SetDefaultSfixed64(v.(int64))
case fieldDefaultFloat:
m.SetDefaultFloat(v.(float32))
case fieldDefaultDouble:
m.SetDefaultDouble(v.(float64))
case fieldDefaultBool:
m.SetDefaultBool(v.(bool))
case fieldDefaultString:
m.SetDefaultString(v.(string))
case fieldDefaultBytes:
m.SetDefaultBytes(v.([]byte))
case fieldDefaultNestedEnum:
m.SetDefaultNestedEnum(testpb.TestAllTypes_NestedEnum(v.(protoreflect.EnumNumber)))
case fieldDefaultForeignEnum:
m.SetDefaultForeignEnum(testpb.ForeignEnum(v.(protoreflect.EnumNumber)))
case fieldOneofUint32:
m.SetOneofUint32(v.(uint32))
case fieldOneofNestedMessage:
m.SetOneofNestedMessage(v.(*testpb.TestAllTypes_NestedMessage))
case fieldOneofString:
m.SetOneofString(v.(string))
case fieldOneofBytes:
m.SetOneofBytes(v.([]byte))
case fieldOneofBool:
m.SetOneofBool(v.(bool))
case fieldOneofUint64:
m.SetOneofUint64(v.(uint64))
case fieldOneofFloat:
m.SetOneofFloat(v.(float32))
case fieldOneofDouble:
m.SetOneofDouble(v.(float64))
case fieldOneofEnum:
m.SetOneofEnum(testpb.TestAllTypes_NestedEnum(v.(protoreflect.EnumNumber)))
case fieldOneofGroup:
m.SetOneofgroup(v.(*testpb.TestAllTypes_OneofGroup))
case fieldOneofOptionalUint32:
m.SetOneofOptionalUint32(v.(uint32))
default:
panic(fmt.Sprintf("set: unknown field %d", num))
}
},
clear: func(num protoreflect.FieldNumber) {
switch num {
case fieldSingularInt32:
m.SetSingularInt32(0)
case fieldSingularInt64:
m.SetSingularInt64(0)
case fieldSingularUint32:
m.SetSingularUint32(0)
case fieldSingularUint64:
m.SetSingularUint64(0)
case fieldSingularSint32:
m.SetSingularSint32(0)
case fieldSingularSint64:
m.SetSingularSint64(0)
case fieldSingularFixed32:
m.SetSingularFixed32(0)
case fieldSingularFixed64:
m.SetSingularFixed64(0)
case fieldSingularSfixed32:
m.SetSingularSfixed32(0)
case fieldSingularSfixed64:
m.SetSingularSfixed64(0)
case fieldSingularFloat:
m.SetSingularFloat(0)
case fieldSingularDouble:
m.SetSingularDouble(0)
case fieldSingularBool:
m.SetSingularBool(false)
case fieldSingularString:
m.SetSingularString("")
case fieldSingularBytes:
m.SetSingularBytes(nil)
case fieldSingularNestedEnum:
m.SetSingularNestedEnum(testpb.TestAllTypes_FOO)
case fieldSingularForeignEnum:
m.SetSingularForeignEnum(testpb.ForeignEnum_FOREIGN_ZERO)
case fieldSingularImportEnum:
m.SetSingularImportEnum(testpb.ImportEnum_IMPORT_ZERO)
case fieldOptionalInt32:
m.ClearOptionalInt32()
case fieldOptionalInt64:
m.ClearOptionalInt64()
case fieldOptionalUint32:
m.ClearOptionalUint32()
case fieldOptionalUint64:
m.ClearOptionalUint64()
case fieldOptionalSint32:
m.ClearOptionalSint32()
case fieldOptionalSint64:
m.ClearOptionalSint64()
case fieldOptionalFixed32:
m.ClearOptionalFixed32()
case fieldOptionalFixed64:
m.ClearOptionalFixed64()
case fieldOptionalSfixed32:
m.ClearOptionalSfixed32()
case fieldOptionalSfixed64:
m.ClearOptionalSfixed64()
case fieldOptionalFloat:
m.ClearOptionalFloat()
case fieldOptionalDouble:
m.ClearOptionalDouble()
case fieldOptionalBool:
m.ClearOptionalBool()
case fieldOptionalString:
m.ClearOptionalString()
case fieldOptionalBytes:
m.ClearOptionalBytes()
case fieldOptionalGroup:
m.ClearOptionalgroup()
case fieldNotGroupLikeDelimited:
m.ClearNotGroupLikeDelimited()
case fieldOptionalNestedMessage:
m.ClearOptionalNestedMessage()
case fieldOptionalForeignMessage:
m.ClearOptionalForeignMessage()
case fieldOptionalImportMessage:
m.ClearOptionalImportMessage()
case fieldOptionalNestedEnum:
m.ClearOptionalNestedEnum()
case fieldOptionalForeignEnum:
m.ClearOptionalForeignEnum()
case fieldOptionalImportEnum:
m.ClearOptionalImportEnum()
case fieldOptionalLazyNestedMessage:
m.ClearOptionalLazyNestedMessage()
case fieldRepeatedInt32:
m.SetRepeatedInt32(nil)
case fieldRepeatedInt64:
m.SetRepeatedInt64(nil)
case fieldRepeatedUint32:
m.SetRepeatedUint32(nil)
case fieldRepeatedUint64:
m.SetRepeatedUint64(nil)
case fieldRepeatedSint32:
m.SetRepeatedSint32(nil)
case fieldRepeatedSint64:
m.SetRepeatedSint64(nil)
case fieldRepeatedFixed32:
m.SetRepeatedFixed32(nil)
case fieldRepeatedFixed64:
m.SetRepeatedFixed64(nil)
case fieldRepeatedSfixed32:
m.SetRepeatedSfixed32(nil)
case fieldRepeatedSfixed64:
m.SetRepeatedSfixed64(nil)
case fieldRepeatedFloat:
m.SetRepeatedFloat(nil)
case fieldRepeatedDouble:
m.SetRepeatedDouble(nil)
case fieldRepeatedBool:
m.SetRepeatedBool(nil)
case fieldRepeatedString:
m.SetRepeatedString(nil)
case fieldRepeatedBytes:
m.SetRepeatedBytes(nil)
case fieldRepeatedGroup:
m.SetRepeatedgroup(nil)
case fieldRepeatedNestedMessage:
m.SetRepeatedNestedMessage(nil)
case fieldRepeatedForeignMessage:
m.SetRepeatedForeignMessage(nil)
case fieldRepeatedImportMessage:
m.SetRepeatedImportmessage(nil)
case fieldRepeatedNestedEnum:
m.SetRepeatedNestedEnum(nil)
case fieldRepeatedForeignEnum:
m.SetRepeatedForeignEnum(nil)
case fieldRepeatedImportEnum:
m.SetRepeatedImportenum(nil)
case fieldMapInt32Int32:
m.SetMapInt32Int32(nil)
case fieldMapInt64Int64:
m.SetMapInt64Int64(nil)
case fieldMapUint32Uint32:
m.SetMapUint32Uint32(nil)
case fieldMapUint64Uint64:
m.SetMapUint64Uint64(nil)
case fieldMapSint32Sint32:
m.SetMapSint32Sint32(nil)
case fieldMapSint64Sint64:
m.SetMapSint64Sint64(nil)
case fieldMapFixed32Fixed32:
m.SetMapFixed32Fixed32(nil)
case fieldMapFixed64Fixed64:
m.SetMapFixed64Fixed64(nil)
case fieldMapSfixed32Sfixed32:
m.SetMapSfixed32Sfixed32(nil)
case fieldMapSfixed64Sfixed64:
m.SetMapSfixed64Sfixed64(nil)
case fieldMapInt32Float:
m.SetMapInt32Float(nil)
case fieldMapInt32Double:
m.SetMapInt32Double(nil)
case fieldMapBoolBool:
m.SetMapBoolBool(nil)
case fieldMapStringString:
m.SetMapStringString(nil)
case fieldMapStringBytes:
m.SetMapStringBytes(nil)
case fieldMapStringNestedMessage:
m.SetMapStringNestedMessage(nil)
case fieldMapStringNestedEnum:
m.SetMapStringNestedEnum(nil)
case fieldDefaultInt32:
m.ClearDefaultInt32()
case fieldDefaultInt64:
m.ClearDefaultInt64()
case fieldDefaultUint32:
m.ClearDefaultUint32()
case fieldDefaultUint64:
m.ClearDefaultUint64()
case fieldDefaultSint32:
m.ClearDefaultSint32()
case fieldDefaultSint64:
m.ClearDefaultSint64()
case fieldDefaultFixed32:
m.ClearDefaultFixed32()
case fieldDefaultFixed64:
m.ClearDefaultFixed64()
case fieldDefaultSfixed32:
m.ClearDefaultSfixed32()
case fieldDefaultSfixed64:
m.ClearDefaultSfixed64()
case fieldDefaultFloat:
m.ClearDefaultFloat()
case fieldDefaultDouble:
m.ClearDefaultDouble()
case fieldDefaultBool:
m.ClearDefaultBool()
case fieldDefaultString:
m.ClearDefaultString()
case fieldDefaultBytes:
m.ClearDefaultBytes()
case fieldDefaultNestedEnum:
m.ClearDefaultNestedEnum()
case fieldDefaultForeignEnum:
m.ClearDefaultForeignEnum()
case fieldOneofUint32:
m.ClearOneofUint32()
case fieldOneofNestedMessage:
m.ClearOneofNestedMessage()
case fieldOneofString:
m.ClearOneofString()
case fieldOneofBytes:
m.ClearOneofBytes()
case fieldOneofBool:
m.ClearOneofBool()
case fieldOneofUint64:
m.ClearOneofUint64()
case fieldOneofFloat:
m.ClearOneofFloat()
case fieldOneofDouble:
m.ClearOneofDouble()
case fieldOneofEnum:
m.ClearOneofEnum()
case fieldOneofGroup:
m.ClearOneofgroup()
case fieldOneofOptionalUint32:
m.ClearOneofOptionalUint32()
default:
panic(fmt.Sprintf("clear: unknown field %d", num))
}
},
}
}