diff options
Diffstat (limited to 'lib/lists.nix')
-rw-r--r-- | lib/lists.nix | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/lists.nix b/lib/lists.nix index a04b1b27893..6a8fd8a1840 100644 --- a/lib/lists.nix +++ b/lib/lists.nix @@ -477,4 +477,12 @@ rec { */ subtractLists = e: filter (x: !(elem x e)); + /* Test if two lists have no common element. + It should be slightly more efficient than (intersectLists a b == []) + */ + mutuallyExclusive = a: b: + (builtins.length a) == 0 || + (!(builtins.elem (builtins.head a) b) && + mutuallyExclusive (builtins.tail a) b); + } |