From c48aa058a79f1fd08bb98fc6eba80bf4e438a983 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Wed, 24 Aug 2022 14:24:57 +0300 Subject: docs(tvix/eval): add an overview of all builtins in Nix Change-Id: Ie187f3317046c6c9e59852d4a128f25ceed99309 Reviewed-on: https://cl.tvl.fyi/c/depot/+/6252 Tested-by: BuildkiteCI Reviewed-by: sterni --- tvix/eval/docs/builtins.md | 120 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 tvix/eval/docs/builtins.md (limited to 'tvix/eval/docs') diff --git a/tvix/eval/docs/builtins.md b/tvix/eval/docs/builtins.md new file mode 100644 index 0000000000..fe11af0634 --- /dev/null +++ b/tvix/eval/docs/builtins.md @@ -0,0 +1,120 @@ +Nix builtins +============ + +Nix has a lot of built-in functions, some of which are accessible in +the global scope, and some of which are only accessible through the +global `builtins` attribute set. + +This document is an attempt to track all of these builtins, but +without documenting their functionality. + +See also https://nixos.org/manual/nix/stable/expressions/builtins.html + +| name | global | arity | pure | +|-------------------------------|--------|-------|------| +| abort | true | 1 | | +| add | false | 2 | true | +| addErrorContext | false | ? | | +| all | false | 2 | true | +| any | false | 2 | true | +| appendContext | false | ? | | +| attrNames | false | 1 | true | +| attrValues | false | | true | +| baseNameOf | true | | | +| bitAnd | false | | | +| bitOr | false | | | +| bitXor | false | | | +| builtins | true | | | +| catAttrs | false | | | +| compareVersions | false | | | +| concatLists | false | | | +| concatMap | false | | | +| concatStringsSep | false | | | +| currentSystem | false | | | +| currentTime | false | | | +| deepSeq | false | | | +| derivation | true | | | +| derivationStrict | true | | | +| dirOf | true | | | +| div | false | | | +| elem | false | | | +| elemAt | false | | | +| false | true | | | +| fetchGit | true | | | +| fetchMercurial | true | | | +| fetchTarball | true | | | +| fetchurl | false | | | +| filter | false | | | +| filterSource | false | | | +| findFile | false | | | +| foldl' | false | | | +| fromJSON | false | | | +| fromTOML | true | | | +| functionArgs | false | | | +| genList | false | | | +| genericClosure | false | | | +| getAttr | false | | | +| getContext | false | | | +| getEnv | false | | | +| hasAttr | false | | | +| hasContext | false | | | +| hashFile | false | | | +| hashString | false | | | +| head | false | | | +| import | true | | | +| intersectAttrs | false | | | +| isAttrs | false | | | +| isBool | false | | | +| isFloat | false | | | +| isFunction | false | | | +| isInt | false | | | +| isList | false | | | +| isNull | true | | | +| isPath | false | | | +| isString | false | | | +| langVersion | false | | | +| length | false | | | +| lessThan | false | | | +| listToAttrs | false | | | +| map | true | | | +| mapAttrs | false | | | +| match | false | | | +| mul | false | | | +| nixPath | false | | | +| nixVersion | false | | | +| null | true | | | +| parseDrvName | false | | | +| partition | false | | | +| path | false | | | +| pathExists | false | | | +| placeholder | true | | | +| readDir | false | | | +| readFile | false | | | +| removeAttrs | true | | | +| replaceStrings | false | | | +| scopedImport | true | | | +| seq | false | | | +| sort | false | | | +| split | false | | | +| splitVersion | false | | | +| storeDir | false | | | +| storePath | false | | | +| stringLength | false | | | +| sub | false | | | +| substring | false | | | +| tail | false | | | +| throw | true | | | +| toFile | false | | | +| toJSON | false | | | +| toPath | false | | | +| toString | true | | | +| toXML | false | | | +| trace | false | | | +| true | true | | | +| tryEval | false | | | +| typeOf | false | | | +| unsafeDiscardOutputDependency | false | | | +| unsafeDiscardStringContext | false | | | +| unsafeGetAttrPos | false | | | +| valueSize | false | | | + -- cgit 1.4.1