From c0f8c0a24ecea023cfba77e76d93c7515ab58378 Mon Sep 17 00:00:00 2001 From: Damien Neil Date: Fri, 9 Aug 2019 09:32:44 -0700 Subject: [PATCH] runtime/protoimpl: add ExtensionInfo alias This is change 1/5 in a series of commits changing protoV1.ExtensionDesc to directly implement protoreflect.ExtensionType. 1. [v2] Add protoimpl.ExtensionInfo as an alias for protoiface.ExtensionDescV1. 2. [v1] Update references to protoimpl.ExtensionInfo to use protoiface.ExtensionInfo. 3. [v2] Create protoimpl.ExtensionInfo (an alias to a new type in the impl package) and remove protoiface.ExtensionDescV1. 4. [v1] Remove unneeded explicit conversions between ExtensionDesc and ExtensionType (since the former now directly implements the latter). 5. [v2] Remove stub conversion functions. Change-Id: If6c7fd5f55364613387a05e6f8e9aa38cbfcc5b5 Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/189562 Reviewed-by: Joe Tsai --- runtime/protoimpl/impl.go | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/runtime/protoimpl/impl.go b/runtime/protoimpl/impl.go index 10ce3010..f58b5693 100644 --- a/runtime/protoimpl/impl.go +++ b/runtime/protoimpl/impl.go @@ -15,23 +15,31 @@ import ( "google.golang.org/protobuf/internal/filedesc" "google.golang.org/protobuf/internal/filetype" "google.golang.org/protobuf/internal/impl" + "google.golang.org/protobuf/runtime/protoiface" ) // UnsafeEnabled specifies whether package unsafe can be used. const UnsafeEnabled = impl.UnsafeEnabled type ( - DescBuilder = filedesc.Builder - TypeBuilder = filetype.Builder - EnumInfo = filetype.EnumInfo - Pointer = impl.Pointer - MessageInfo = impl.MessageInfo + // Types used by generated code in init functions. + DescBuilder = filedesc.Builder + TypeBuilder = filetype.Builder + + // Types used by generated code to implement EnumType, MessageType, and ExtensionType. + EnumInfo = filetype.EnumInfo + MessageInfo = impl.MessageInfo + ExtensionInfo = protoiface.ExtensionDescV1 + + // Types embedded in generated messages. MessageState = impl.MessageState SizeCache = impl.SizeCache WeakFields = impl.WeakFields UnknownFields = impl.UnknownFields ExtensionFields = impl.ExtensionFields ExtensionFieldV1 = impl.ExtensionField + + Pointer = impl.Pointer ) var X impl.Export