Ver Fonte

improve reflection logic in registry

Shelikhoo há 4 anos atrás
pai
commit
9b93bb614a
1 ficheiros alterados com 1 adições e 5 exclusões
  1. 1 5
      common/registry/registry.go

+ 1 - 5
common/registry/registry.go

@@ -99,11 +99,7 @@ func RegisterImplementation(proto interface{}, loader CustomLoader) error {
 
 func registerImplementation(proto interface{}, loader CustomLoader) error {
 	protoReflect := reflect.New(reflect.TypeOf(proto).Elem())
-	var proto2 protov2.Message
-	assignMessage := func(msg protov2.Message) {
-		proto2 = msg
-	}
-	reflect.ValueOf(assignMessage).Call([]reflect.Value{protoReflect})
+	var proto2 = protoReflect.Interface().(protov2.Message)
 	msgDesc := proto2.ProtoReflect().Descriptor()
 	fullName := string(msgDesc.FullName())
 	msgOpts, err := protoext.GetMessageOptions(msgDesc)