in lib/http.go [880:905]
func makeMapStrings(val reflect.Value) (reflect.Value, error) {
iface := val.Interface()
switch iface := iface.(type) {
case http.Header:
return reflect.ValueOf(iface), nil
case url.Values:
return reflect.ValueOf(iface), nil
case map[string][]string:
return reflect.ValueOf(iface), nil
case map[ref.Val]ref.Val:
val := types.DefaultTypeAdapter.NativeToValue(iface)
v, err := val.ConvertToNative(reflectMapStringStringSliceType)
if err != nil {
return reflect.Value{}, err
}
return reflect.ValueOf(v), nil
case ref.Val:
v, err := iface.ConvertToNative(reflectMapStringStringSliceType)
if err != nil {
return reflect.Value{}, err
}
return reflect.ValueOf(v.(map[string][]string)), nil
default:
return reflect.Value{}, fmt.Errorf("invalid type: %T", iface)
}
}