all: use typed variant of protoreflect.ValueOf

Change-Id: I7479632b57e7c8efade12a2eb2b855e9c321adb1
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/196037
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/internal/filedesc/desc.go b/internal/filedesc/desc.go
index 51ef7c1..72a45e2 100644
--- a/internal/filedesc/desc.go
+++ b/internal/filedesc/desc.go
@@ -533,7 +533,7 @@
 		// If we are unable to resolve the enum dependency, use a placeholder
 		// enum value since we will not be able to parse the default value.
 		if ed.IsPlaceholder() && pref.Name(b).IsValid() {
-			v := pref.ValueOf(pref.EnumNumber(0))
+			v := pref.ValueOfEnum(0)
 			ev := PlaceholderEnumValue(ed.FullName().Parent().Append(pref.Name(b)))
 			return DefaultValue(v, ev)
 		}
@@ -561,28 +561,28 @@
 		}
 		switch fd.Kind() {
 		case pref.BoolKind:
-			return pref.ValueOf(false)
+			return pref.ValueOfBool(false)
 		case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind:
-			return pref.ValueOf(int32(0))
+			return pref.ValueOfInt32(0)
 		case pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
-			return pref.ValueOf(int64(0))
+			return pref.ValueOfInt64(0)
 		case pref.Uint32Kind, pref.Fixed32Kind:
-			return pref.ValueOf(uint32(0))
+			return pref.ValueOfUint32(0)
 		case pref.Uint64Kind, pref.Fixed64Kind:
-			return pref.ValueOf(uint64(0))
+			return pref.ValueOfUint64(0)
 		case pref.FloatKind:
-			return pref.ValueOf(float32(0))
+			return pref.ValueOfFloat32(0)
 		case pref.DoubleKind:
-			return pref.ValueOf(float64(0))
+			return pref.ValueOfFloat64(0)
 		case pref.StringKind:
-			return pref.ValueOf(string(""))
+			return pref.ValueOfString("")
 		case pref.BytesKind:
-			return pref.ValueOf([]byte(nil))
+			return pref.ValueOfBytes(nil)
 		case pref.EnumKind:
 			if evs := fd.Enum().Values(); evs.Len() > 0 {
-				return pref.ValueOf(evs.Get(0).Number())
+				return pref.ValueOfEnum(evs.Get(0).Number())
 			}
-			return pref.ValueOf(pref.EnumNumber(0))
+			return pref.ValueOfEnum(0)
 		}
 	}
 
diff --git a/internal/filedesc/desc_lazy.go b/internal/filedesc/desc_lazy.go
index b989092..86720a0 100644
--- a/internal/filedesc/desc_lazy.go
+++ b/internal/filedesc/desc_lazy.go
@@ -451,7 +451,7 @@
 			case fieldnum.FieldDescriptorProto_JsonName:
 				fd.L1.JSONName = JSONName(sb.MakeString(v))
 			case fieldnum.FieldDescriptorProto_DefaultValue:
-				fd.L1.Default.val = pref.ValueOf(v) // temporarily store as bytes; later resolved in resolveMessages
+				fd.L1.Default.val = pref.ValueOfBytes(v) // temporarily store as bytes; later resolved in resolveMessages
 			case fieldnum.FieldDescriptorProto_TypeName:
 				rawTypeName = v
 			case fieldnum.FieldDescriptorProto_Options:
@@ -544,7 +544,7 @@
 			case fieldnum.FieldDescriptorProto_JsonName:
 				xd.L2.JSONName = JSONName(sb.MakeString(v))
 			case fieldnum.FieldDescriptorProto_DefaultValue:
-				xd.L2.Default.val = pref.ValueOf(v) // temporarily store as bytes; later resolved in resolveExtensions
+				xd.L2.Default.val = pref.ValueOfBytes(v) // temporarily store as bytes; later resolved in resolveExtensions
 			case fieldnum.FieldDescriptorProto_TypeName:
 				rawTypeName = v
 			case fieldnum.FieldDescriptorProto_Options: