(v reflect.Value, resolver *TypeResolver)
| 676 | } |
| 677 | |
| 678 | func getTypeInfoForValue(v reflect.Value, resolver *TypeResolver) (*TypeInfo, error) { |
| 679 | if v.Kind() == reflect.Interface && !v.IsNil() { |
| 680 | elem := v.Elem() |
| 681 | if !elem.IsValid() { |
| 682 | return nil, fmt.Errorf("invalid interface value") |
| 683 | } |
| 684 | return resolver.getTypeInfo(elem, true) |
| 685 | } |
| 686 | return resolver.getTypeInfo(v, true) |
| 687 | } |
| 688 | |
| 689 | // setMapValue sets a key-value pair into a map, handling interface types |
| 690 | func setMapValue(mapVal, key, value reflect.Value) { |
no test coverage detected