3
0
Fork 0
forked from mirrors/nixpkgs

lib.compose{Many,}Extensions: Make compatible with nix flake check

This commit is contained in:
Shea Levy 2021-08-26 09:12:17 -04:00
parent bc52ddab2d
commit d09222e48f
No known key found for this signature in database
GPG key ID: 5C0BD6957D86FE27

View file

@ -72,10 +72,10 @@ rec {
# into one where changes made in the first are available in the
# 'super' of the second
composeExtensions =
f: g: self: super:
let fApplied = f self super;
super' = super // fApplied;
in fApplied // g self super';
f: g: final: prev:
let fApplied = f final prev;
prev' = prev // fApplied;
in fApplied // g final prev';
# Compose several extending functions of the type expected by 'extends' into
# one where changes made in preceding functions are made available to
@ -84,7 +84,7 @@ rec {
# composeManyExtensions : [packageSet -> packageSet -> packageSet] -> packageSet -> packageSet -> packageSet
# ^final ^prev ^overrides ^final ^prev ^overrides
composeManyExtensions =
lib.foldr (x: y: composeExtensions x y) (self: super: {});
lib.foldr (x: y: composeExtensions x y) (final: prev: {});
# Create an overridable, recursive attribute set. For example:
#