(tomap tomapFn, writeValue writeValueFromMapFn)
| 206 | } |
| 207 | |
| 208 | func mergeSlice(tomap tomapFn, writeValue writeValueFromMapFn) func(dst, src reflect.Value) error { |
| 209 | return func(dst, src reflect.Value) error { |
| 210 | dstMap, err := sliceToMap(tomap, dst) |
| 211 | if err != nil { |
| 212 | return err |
| 213 | } |
| 214 | srcMap, err := sliceToMap(tomap, src) |
| 215 | if err != nil { |
| 216 | return err |
| 217 | } |
| 218 | if err := mergo.Map(&dstMap, srcMap, mergo.WithOverride); err != nil { |
| 219 | return err |
| 220 | } |
| 221 | return writeValue(dst, dstMap) |
| 222 | } |
| 223 | } |
| 224 | |
| 225 | func sliceToMap(tomap tomapFn, v reflect.Value) (map[any]any, error) { |
| 226 | // check if valid |
no test coverage detected
searching dependent graphs…