lib: attrs: document functions

This commit is contained in:
Bruno BELANYI 2021-04-03 17:12:34 +00:00
parent b30d574069
commit af317ac156

View file

@ -1,9 +1,21 @@
{ lib, ... }: { lib, ... }:
let let
inherit (lib) filterAttrs mapAttrs'; inherit (lib) filterAttrs listToAttrs mapAttrs';
in in
{ {
# Filter a generated set of attrs using a predicate function.
#
# mapFilterAttrs ::
# (name -> value -> bool)
# (name -> value -> { name = any; value = any; })
# attrs
mapFilterAttrs = pred: f: attrs: filterAttrs pred (mapAttrs' f attrs); mapFilterAttrs = pred: f: attrs: filterAttrs pred (mapAttrs' f attrs);
# Generate an attribute set by mapping a function over a list of values.
#
# genAttrs' ::
# [ values ]
# (value -> { name = any; value = any; })
# attrs
genAttrs' = values: f: listToAttrs (map f values); genAttrs' = values: f: listToAttrs (map f values);
} }