(jv interface{}, rv reflect.Value)
| 335 | } |
| 336 | |
| 337 | func (d *Decoder) unsupportedType(jv interface{}, rv reflect.Value) error { |
| 338 | if rv.Kind() == reflect.Interface && rv.NumMethod() != 0 { |
| 339 | return &document.UnmarshalTypeError{Value: "non-empty interface", Type: rv.Type()} |
| 340 | } |
| 341 | |
| 342 | if rv.Type().ConvertibleTo(serde.ReflectTypeOf.Time) { |
| 343 | return &document.UnmarshalTypeError{ |
| 344 | Type: rv.Type(), |
| 345 | Value: fmt.Sprintf("time value: %v", jv), |
| 346 | } |
| 347 | } |
| 348 | return nil |
| 349 | } |