(ctx *ReadContext, value reflect.Value)
| 60 | } |
| 61 | |
| 62 | func (s *enumSerializer) ReadData(ctx *ReadContext, value reflect.Value) { |
| 63 | err := ctx.Err() |
| 64 | ordinal := ctx.buffer.ReadVarUint32Small7(err) |
| 65 | if ctx.HasError() { |
| 66 | return |
| 67 | } |
| 68 | |
| 69 | // Set the value based on the underlying kind |
| 70 | switch value.Kind() { |
| 71 | case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: |
| 72 | value.SetInt(int64(ordinal)) |
| 73 | case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: |
| 74 | value.SetUint(uint64(ordinal)) |
| 75 | default: |
| 76 | ctx.SetError(DeserializationErrorf("enum serializer: unsupported kind %v", value.Kind())) |
| 77 | } |
| 78 | } |
| 79 | |
| 80 | func (s *enumSerializer) Read(ctx *ReadContext, refMode RefMode, readType bool, hasGenerics bool, value reflect.Value) { |
| 81 | err := ctx.Err() |
no test coverage detected