internal/impl: abstract away ExtensionDescV1 as the underlying descriptor
Add ExtensionField.{SetType,GetType} to hide the fact that the underlying
descriptor is actually an ExtensionDescV1.
Change-Id: I1d0595484ced0a88d2df0852a732fdf0fe9aa232
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/180538
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/internal/impl/pointer_unsafe.go b/internal/impl/pointer_unsafe.go
index f04a561..39f1995 100644
--- a/internal/impl/pointer_unsafe.go
+++ b/internal/impl/pointer_unsafe.go
@@ -73,33 +73,33 @@
return p.AsValueOf(t).Interface()
}
-func (p pointer) Bool() *bool { return (*bool)(p.p) }
-func (p pointer) BoolPtr() **bool { return (**bool)(p.p) }
-func (p pointer) BoolSlice() *[]bool { return (*[]bool)(p.p) }
-func (p pointer) Int32() *int32 { return (*int32)(p.p) }
-func (p pointer) Int32Ptr() **int32 { return (**int32)(p.p) }
-func (p pointer) Int32Slice() *[]int32 { return (*[]int32)(p.p) }
-func (p pointer) Int64() *int64 { return (*int64)(p.p) }
-func (p pointer) Int64Ptr() **int64 { return (**int64)(p.p) }
-func (p pointer) Int64Slice() *[]int64 { return (*[]int64)(p.p) }
-func (p pointer) Uint32() *uint32 { return (*uint32)(p.p) }
-func (p pointer) Uint32Ptr() **uint32 { return (**uint32)(p.p) }
-func (p pointer) Uint32Slice() *[]uint32 { return (*[]uint32)(p.p) }
-func (p pointer) Uint64() *uint64 { return (*uint64)(p.p) }
-func (p pointer) Uint64Ptr() **uint64 { return (**uint64)(p.p) }
-func (p pointer) Uint64Slice() *[]uint64 { return (*[]uint64)(p.p) }
-func (p pointer) Float32() *float32 { return (*float32)(p.p) }
-func (p pointer) Float32Ptr() **float32 { return (**float32)(p.p) }
-func (p pointer) Float32Slice() *[]float32 { return (*[]float32)(p.p) }
-func (p pointer) Float64() *float64 { return (*float64)(p.p) }
-func (p pointer) Float64Ptr() **float64 { return (**float64)(p.p) }
-func (p pointer) Float64Slice() *[]float64 { return (*[]float64)(p.p) }
-func (p pointer) String() *string { return (*string)(p.p) }
-func (p pointer) StringPtr() **string { return (**string)(p.p) }
-func (p pointer) StringSlice() *[]string { return (*[]string)(p.p) }
-func (p pointer) Bytes() *[]byte { return (*[]byte)(p.p) }
-func (p pointer) BytesSlice() *[][]byte { return (*[][]byte)(p.p) }
-func (p pointer) Extensions() *legacyExtensionMap { return (*legacyExtensionMap)(p.p) }
+func (p pointer) Bool() *bool { return (*bool)(p.p) }
+func (p pointer) BoolPtr() **bool { return (**bool)(p.p) }
+func (p pointer) BoolSlice() *[]bool { return (*[]bool)(p.p) }
+func (p pointer) Int32() *int32 { return (*int32)(p.p) }
+func (p pointer) Int32Ptr() **int32 { return (**int32)(p.p) }
+func (p pointer) Int32Slice() *[]int32 { return (*[]int32)(p.p) }
+func (p pointer) Int64() *int64 { return (*int64)(p.p) }
+func (p pointer) Int64Ptr() **int64 { return (**int64)(p.p) }
+func (p pointer) Int64Slice() *[]int64 { return (*[]int64)(p.p) }
+func (p pointer) Uint32() *uint32 { return (*uint32)(p.p) }
+func (p pointer) Uint32Ptr() **uint32 { return (**uint32)(p.p) }
+func (p pointer) Uint32Slice() *[]uint32 { return (*[]uint32)(p.p) }
+func (p pointer) Uint64() *uint64 { return (*uint64)(p.p) }
+func (p pointer) Uint64Ptr() **uint64 { return (**uint64)(p.p) }
+func (p pointer) Uint64Slice() *[]uint64 { return (*[]uint64)(p.p) }
+func (p pointer) Float32() *float32 { return (*float32)(p.p) }
+func (p pointer) Float32Ptr() **float32 { return (**float32)(p.p) }
+func (p pointer) Float32Slice() *[]float32 { return (*[]float32)(p.p) }
+func (p pointer) Float64() *float64 { return (*float64)(p.p) }
+func (p pointer) Float64Ptr() **float64 { return (**float64)(p.p) }
+func (p pointer) Float64Slice() *[]float64 { return (*[]float64)(p.p) }
+func (p pointer) String() *string { return (*string)(p.p) }
+func (p pointer) StringPtr() **string { return (**string)(p.p) }
+func (p pointer) StringSlice() *[]string { return (*[]string)(p.p) }
+func (p pointer) Bytes() *[]byte { return (*[]byte)(p.p) }
+func (p pointer) BytesSlice() *[][]byte { return (*[][]byte)(p.p) }
+func (p pointer) Extensions() *map[int32]ExtensionField { return (*map[int32]ExtensionField)(p.p) }
func (p pointer) Elem() pointer {
return pointer{p: *(*unsafe.Pointer)(p.p)}