mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-27 05:43:50 +03:00
lib: Add toFunction
This commit is contained in:
parent
6a0b24b276
commit
84274cbc95
@ -68,7 +68,8 @@ let
|
|||||||
bitNot boolToString mergeAttrs flip mapNullable inNixShell isFloat min max
|
bitNot boolToString mergeAttrs flip mapNullable inNixShell isFloat min max
|
||||||
importJSON importTOML warn warnIf throwIfNot checkListOfEnum
|
importJSON importTOML warn warnIf throwIfNot checkListOfEnum
|
||||||
info showWarnings nixpkgsVersion version
|
info showWarnings nixpkgsVersion version
|
||||||
mod compare splitByAndCompare functionArgs setFunctionArgs isFunction
|
mod compare splitByAndCompare
|
||||||
|
functionArgs setFunctionArgs isFunction toFunction
|
||||||
toHexString toBaseDigits;
|
toHexString toBaseDigits;
|
||||||
inherit (self.fixedPoints) fix fix' converge extends composeExtensions
|
inherit (self.fixedPoints) fix fix' converge extends composeExtensions
|
||||||
composeManyExtensions makeExtensible makeExtensibleWithCustomName;
|
composeManyExtensions makeExtensible makeExtensibleWithCustomName;
|
||||||
|
@ -403,6 +403,25 @@ rec {
|
|||||||
isFunction = f: builtins.isFunction f ||
|
isFunction = f: builtins.isFunction f ||
|
||||||
(f ? __functor && isFunction (f.__functor f));
|
(f ? __functor && isFunction (f.__functor f));
|
||||||
|
|
||||||
|
/*
|
||||||
|
Turns any non-callable values into constant functions.
|
||||||
|
Returns callable values as is.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
nix-repl> lib.toFunction 1 2
|
||||||
|
1
|
||||||
|
|
||||||
|
nix-repl> lib.toFunction (x: x + 1) 2
|
||||||
|
3
|
||||||
|
*/
|
||||||
|
toFunction =
|
||||||
|
# Any value
|
||||||
|
v:
|
||||||
|
if isFunction v
|
||||||
|
then v
|
||||||
|
else k: v;
|
||||||
|
|
||||||
/* Convert the given positive integer to a string of its hexadecimal
|
/* Convert the given positive integer to a string of its hexadecimal
|
||||||
representation. For example:
|
representation. For example:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user