query
On this page

zipAttrsWith

lib.zipAttrsWith

Primop

Takes 2 arguments

f, list


Merge sets of attributes and use the function f to merge attribute values. Like lib.attrsets.zipAttrsWithNames with all key names are passed for names. Implementation note: Common names appear multiple times in the list of names, hopefully this does not affect the system because the maximal laziness avoid computing twice the same expression and listToAttrs does not care about duplicated attribute names.

Example

zipAttrsWith (name: values: values) [{a = "x";} {a = "y"; b = "z";}]
=> { a = ["x" "y"]; b = ["z"]; }

Type

zipAttrsWith :: (String -> [ Any ] -> Any) -> [ AttrSet ] -> AttrSet
(lib.attrsets.zipAttrsWith)

Noogle also knows

Aliases