Back to Lo

Core Mapentrieserr

docs/data/core-mapentrieserr.md

1.53.0627 B
Original Source

Transforms both keys and values using an predicate function. Returns an error if the iteratee function fails, stopping iteration immediately.

go
in := map[string]int{"foo": 1, "bar": 2, "baz": 3}
out, err := lo.MapEntriesErr(in, func(k string, v int) (int, string, error) {
    if k == "bar" {
        return 0, "", fmt.Errorf("bar not allowed")
    }
    return v, k, nil
})
// map[int]string(nil), error("bar not allowed")
go
in := map[string]int{"foo": 1, "bar": 2}
out, err := lo.MapEntriesErr(in, func(k string, v int) (int, string, error) {
    return v, k, nil
})
// map[int]string{1:"foo", 2:"bar"}, nil