filterAttrs: init

This commit is contained in:
2025-04-07 11:13:15 +02:00
parent 9bf766f74a
commit 631e545b57
2 changed files with 12 additions and 0 deletions

View File

@@ -16,5 +16,6 @@
unique = import ./src/unique.nix lib;
overrideExisting = import ./src/overrideExisting.nix lib;
findFirstIndex = import ./src/findFirstIndex.nix lib;
filterAttrs = import ./src/filterAttrs.nix lib;
};
}

11
src/filterAttrs.nix Normal file
View File

@@ -0,0 +1,11 @@
lib:
let
filterAttrsOld = pred: set: builtins.removeAttrs set (builtins.filter (name: !pred name set.${name}) (builtins.attrNames set));
filterAttrsNew = pred: set: builtins.removeAttrs set (builtins.partition (name: pred name set.${name}) (builtins.attrNames set)).wrong;
bigdata = lib.genAttrs (lib.imap0 (i: _: toString i) (lib.replicate 999999 null)) (_: null);
in {
old = filterAttrsOld (name: value: name == "345" || name == "927") bigdata;
new = filterAttrsNew (name: value: name == "345" || name == "927") bigdata;
}