mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-11-20 00:53:12 +03:00
Merge pull request #131267 from blaggacao/fix-functionArgs
lib: fix functionArgs for functors
This commit is contained in:
commit
f0fda3bf55
@ -132,6 +132,16 @@ runTests {
|
|||||||
expected = [ 1 1 0 ];
|
expected = [ 1 1 0 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
testFunctionArgsFunctor = {
|
||||||
|
expr = functionArgs { __functor = self: { a, b }: null; };
|
||||||
|
expected = { a = false; b = false; };
|
||||||
|
};
|
||||||
|
|
||||||
|
testFunctionArgsSetFunctionArgs = {
|
||||||
|
expr = functionArgs (setFunctionArgs (args: args.x) { x = false; });
|
||||||
|
expected = { x = false; };
|
||||||
|
};
|
||||||
|
|
||||||
# STRINGS
|
# STRINGS
|
||||||
|
|
||||||
testConcatMapStrings = {
|
testConcatMapStrings = {
|
||||||
|
@ -334,7 +334,10 @@ rec {
|
|||||||
has the same return type and semantics as builtins.functionArgs.
|
has the same return type and semantics as builtins.functionArgs.
|
||||||
setFunctionArgs : (a → b) → Map String Bool.
|
setFunctionArgs : (a → b) → Map String Bool.
|
||||||
*/
|
*/
|
||||||
functionArgs = f: f.__functionArgs or (builtins.functionArgs f);
|
functionArgs = f:
|
||||||
|
if f ? __functor
|
||||||
|
then f.__functionArgs or (lib.functionArgs (f.__functor f))
|
||||||
|
else builtins.functionArgs f;
|
||||||
|
|
||||||
/* Check whether something is a function or something
|
/* Check whether something is a function or something
|
||||||
annotated with function args.
|
annotated with function args.
|
||||||
|
Loading…
Reference in New Issue
Block a user