aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/expressions/builtins.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manual/expressions/builtins.xml')
-rw-r--r--doc/manual/expressions/builtins.xml20
1 files changed, 19 insertions, 1 deletions
diff --git a/doc/manual/expressions/builtins.xml b/doc/manual/expressions/builtins.xml
index 3b664479d..40d90f78d 100644
--- a/doc/manual/expressions/builtins.xml
+++ b/doc/manual/expressions/builtins.xml
@@ -335,7 +335,7 @@ stdenv.mkDerivation {
</varlistentry>
- <varlistentry><term><function>builtins.foldl’</function>
+ <varlistentry><term><function>builtins.foldl’</function>
<replaceable>op</replaceable> <replaceable>nul</replaceable> <replaceable>list</replaceable></term>
<listitem><para>Reduce a list by applying a binary operator, from
@@ -348,6 +348,24 @@ stdenv.mkDerivation {
</varlistentry>
+ <varlistentry><term><function>builtins.functionArgs</function>
+ <replaceable>f</replaceable></term>
+
+ <listitem><para>
+ Return a set containing the names of the formal arguments expected
+ by the function <replaceable>f</replaceable>.
+ The value of each attribute is a Boolean denoting whether the corresponding
+ argument has a default value. For instance,
+ <literal>functionArgs ({ x, y ? 123}: ...) = { x = false; y = true; }</literal>.
+ </para>
+
+ <para>"Formal argument" here refers to the attributes pattern-matched by
+ the function. Plain lambdas are not included, e.g.
+ <literal>functionArgs (x: ...) = { }</literal>.
+ </para></listitem>
+ </varlistentry>
+
+
<varlistentry><term><function>builtins.fromJSON</function> <replaceable>e</replaceable></term>
<listitem><para>Convert a JSON string to a Nix