vendor/google.golang.org/protobuf/internal/impl/enum.go
changeset 256 6d9efbef00a9
child 260 445e01aede7e
equal deleted inserted replaced
255:4f153a23adab 256:6d9efbef00a9
       
     1 // Copyright 2019 The Go Authors. All rights reserved.
       
     2 // Use of this source code is governed by a BSD-style
       
     3 // license that can be found in the LICENSE file.
       
     4 
       
     5 package impl
       
     6 
       
     7 import (
       
     8 	"reflect"
       
     9 
       
    10 	pref "google.golang.org/protobuf/reflect/protoreflect"
       
    11 )
       
    12 
       
    13 type EnumInfo struct {
       
    14 	GoReflectType reflect.Type // int32 kind
       
    15 	Desc          pref.EnumDescriptor
       
    16 }
       
    17 
       
    18 func (t *EnumInfo) New(n pref.EnumNumber) pref.Enum {
       
    19 	return reflect.ValueOf(n).Convert(t.GoReflectType).Interface().(pref.Enum)
       
    20 }
       
    21 func (t *EnumInfo) Descriptor() pref.EnumDescriptor { return t.Desc }