docs(tvix/eval): builtins.md: note implementation status
We're getting close to the finish line, folks. I went through the list of builtins and there are only 33 that remain unimplemented. I've marked them, and indicated which are ready to be implemented vs which are waiting for other things. We can delete this column from the table once everything is implemented. Signed-off-by: Adam Joseph <adam@westernsemico.com> Change-Id: Idfaef93283536288b12e59aef5c3e1cd139bd133 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7140 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
This commit is contained in:
parent
cc3060ed7c
commit
98a981a737
1 changed files with 123 additions and 116 deletions
|
@ -10,122 +10,129 @@ without documenting their functionality.
|
||||||
|
|
||||||
See also https://nixos.org/manual/nix/stable/expressions/builtins.html
|
See also https://nixos.org/manual/nix/stable/expressions/builtins.html
|
||||||
|
|
||||||
| name | global | arity | pure |
|
The `impl` column indicates implementation status in tvix:
|
||||||
|-------------------------------|--------|-------|-------|
|
- implemented: "" (empty cell)
|
||||||
| abort | true | 1 | |
|
- not yet implemented, but not blocked: `todo`
|
||||||
| add | false | 2 | true |
|
- not yet implemented, but blocked by other prerequisites:
|
||||||
| addErrorContext | false | ? | |
|
- `store`: awaiting eval<->store api(s)
|
||||||
| all | false | 2 | true |
|
- `context`: awaiting support for string contexts
|
||||||
| any | false | 2 | true |
|
|
||||||
| appendContext | false | ? | |
|
| name | global | arity | pure | impl |
|
||||||
| attrNames | false | 1 | true |
|
|-------------------------------|--------|-------|-------|---------|
|
||||||
| attrValues | false | | true |
|
| abort | true | 1 | | |
|
||||||
| baseNameOf | true | | |
|
| add | false | 2 | true | |
|
||||||
| bitAnd | false | | |
|
| addErrorContext | false | ? | | context |
|
||||||
| bitOr | false | | |
|
| all | false | 2 | true | |
|
||||||
| bitXor | false | | |
|
| any | false | 2 | true | |
|
||||||
| builtins | true | | |
|
| appendContext | false | ? | | context |
|
||||||
| catAttrs | false | | |
|
| attrNames | false | 1 | true | |
|
||||||
| compareVersions | false | | |
|
| attrValues | false | | true | |
|
||||||
| concatLists | false | | |
|
| baseNameOf | true | | | |
|
||||||
| concatMap | false | | |
|
| bitAnd | false | | | |
|
||||||
| concatStringsSep | false | | |
|
| bitOr | false | | | |
|
||||||
| currentSystem | false | | |
|
| bitXor | false | | | |
|
||||||
| currentTime | false | | false |
|
| builtins | true | | | |
|
||||||
| deepSeq | false | | |
|
| catAttrs | false | | | |
|
||||||
| derivation | true | | |
|
| compareVersions | false | | | |
|
||||||
| derivationStrict | true | | |
|
| concatLists | false | | | |
|
||||||
| dirOf | true | | |
|
| concatMap | false | | | |
|
||||||
| div | false | | |
|
| concatStringsSep | false | | | |
|
||||||
| elem | false | | |
|
| currentSystem | false | | | |
|
||||||
| elemAt | false | | |
|
| currentTime | false | | false | |
|
||||||
| false | true | | |
|
| deepSeq | false | | | |
|
||||||
| fetchGit | true | | |
|
| derivation | true | | | store |
|
||||||
| fetchMercurial | true | | |
|
| derivationStrict | true | | | store |
|
||||||
| fetchTarball | true | | |
|
| dirOf | true | | | |
|
||||||
| fetchurl | false | | |
|
| div | false | | | |
|
||||||
| filter | false | | |
|
| elem | false | | | |
|
||||||
| filterSource | false | | |
|
| elemAt | false | | | |
|
||||||
| findFile | false | | false |
|
| false | true | | | |
|
||||||
| foldl' | false | | |
|
| fetchGit | true | | | store |
|
||||||
| fromJSON | false | | |
|
| fetchMercurial | true | | | store |
|
||||||
| fromTOML | true | | |
|
| fetchTarball | true | | | store |
|
||||||
| functionArgs | false | | |
|
| fetchurl | false | | | store |
|
||||||
| genList | false | | |
|
| filter | false | | | |
|
||||||
| genericClosure | false | | |
|
| filterSource | false | | | store |
|
||||||
| getAttr | false | | |
|
| findFile | false | | false | todo |
|
||||||
| getContext | false | | |
|
| foldl' | false | | | |
|
||||||
| getEnv | false | | false |
|
| fromJSON | false | | | |
|
||||||
| hasAttr | false | | |
|
| fromTOML | true | | | |
|
||||||
| hasContext | false | | |
|
| functionArgs | false | | | |
|
||||||
| hashFile | false | | false |
|
| genList | false | | | |
|
||||||
| hashString | false | | |
|
| genericClosure | false | | | todo |
|
||||||
| head | false | | |
|
| getAttr | false | | | |
|
||||||
| import | true | | |
|
| getContext | false | | | context |
|
||||||
| intersectAttrs | false | | |
|
| getEnv | false | | false | |
|
||||||
| isAttrs | false | | |
|
| hasAttr | false | | | |
|
||||||
| isBool | false | | |
|
| hasContext | false | | | context |
|
||||||
| isFloat | false | | |
|
| hashFile | false | | false | todo |
|
||||||
| isFunction | false | | |
|
| hashString | false | | | todo |
|
||||||
| isInt | false | | |
|
| head | false | | | |
|
||||||
| isList | false | | |
|
| import | true | | | |
|
||||||
| isNull | true | | |
|
| intersectAttrs | false | | | |
|
||||||
| isPath | false | | |
|
| isAttrs | false | | | |
|
||||||
| isString | false | | |
|
| isBool | false | | | |
|
||||||
| langVersion | false | | |
|
| isFloat | false | | | |
|
||||||
| length | false | | |
|
| isFunction | false | | | |
|
||||||
| lessThan | false | | |
|
| isInt | false | | | |
|
||||||
| listToAttrs | false | | |
|
| isList | false | | | |
|
||||||
| map | true | | |
|
| isNull | true | | | |
|
||||||
| mapAttrs | false | | |
|
| isPath | false | | | |
|
||||||
| match | false | | |
|
| isString | false | | | |
|
||||||
| mul | false | | |
|
| langVersion | false | | | |
|
||||||
| nixPath | false | | |
|
| length | false | | | |
|
||||||
| nixVersion | false | | |
|
| lessThan | false | | | |
|
||||||
| null | true | | |
|
| listToAttrs | false | | | |
|
||||||
| parseDrvName | false | | |
|
| map | true | | | |
|
||||||
| partition | false | | |
|
| mapAttrs | false | | | |
|
||||||
| path | false | | sometimes |
|
| match | false | | | |
|
||||||
| pathExists | false | | false |
|
| mul | false | | | |
|
||||||
| placeholder | true | | |
|
| nixPath | false | | | todo |
|
||||||
| readDir | false | | false |
|
| nixVersion | false | | | todo |
|
||||||
| readFile | false | | false |
|
| null | true | | | |
|
||||||
| removeAttrs | true | | |
|
| parseDrvName | false | | | |
|
||||||
| replaceStrings | false | | |
|
| partition | false | | | |
|
||||||
| scopedImport | true | | |
|
| path | false | | sometimes | store |
|
||||||
| seq | false | | |
|
| pathExists | false | | false | |
|
||||||
| sort | false | | |
|
| placeholder | true | | | context |
|
||||||
| split | false | | |
|
| readDir | false | | false | |
|
||||||
| splitVersion | false | | |
|
| readFile | false | | false | |
|
||||||
| storeDir | false | | |
|
| removeAttrs | true | | | |
|
||||||
| storePath | false | | |
|
| replaceStrings | false | | | |
|
||||||
| stringLength | false | | |
|
| scopedImport | true | | | |
|
||||||
| sub | false | | |
|
| seq | false | | | |
|
||||||
| substring | false | | |
|
| sort | false | | | |
|
||||||
| tail | false | | |
|
| split | false | | | todo |
|
||||||
| throw | true | | |
|
| splitVersion | false | | | |
|
||||||
| toFile | false | | |
|
| storeDir | false | | | store |
|
||||||
| toJSON | false | | |
|
| storePath | false | | | store |
|
||||||
| toPath | false | | |
|
| stringLength | false | | | |
|
||||||
| toString | true | | |
|
| sub | false | | | |
|
||||||
| toXML | false | | |
|
| substring | false | | | |
|
||||||
| trace | false | | |
|
| tail | false | | | |
|
||||||
| true | true | | |
|
| throw | true | | | |
|
||||||
| tryEval | false | | |
|
| toFile | false | | | store |
|
||||||
| typeOf | false | | |
|
| toJSON | false | | | todo |
|
||||||
| unsafeDiscardOutputDependency | false | | |
|
| toPath | false | | | |
|
||||||
| unsafeDiscardStringContext | false | | |
|
| toString | true | | | |
|
||||||
| unsafeGetAttrPos | false | | |
|
| toXML | false | | | todo |
|
||||||
| valueSize | false | | |
|
| trace | false | | | |
|
||||||
|
| true | true | | | |
|
||||||
|
| tryEval | false | | | |
|
||||||
|
| typeOf | false | | | |
|
||||||
|
| unsafeDiscardOutputDependency | false | | | context |
|
||||||
|
| unsafeDiscardStringContext | false | | | context |
|
||||||
|
| unsafeGetAttrPos | false | | | todo |
|
||||||
|
| valueSize | false | | | todo |
|
||||||
|
|
||||||
## Added after C++ Nix 2.3 (without Flakes enabled)
|
## Added after C++ Nix 2.3 (without Flakes enabled)
|
||||||
|
|
||||||
| name | global | arity | pure |
|
| name | global | arity | pure | impl |
|
||||||
|---------------|--------|-------|-------|
|
|---------------|--------|-------|-------|-------|
|
||||||
| break | false | 1 | |
|
| break | false | 1 | | todo |
|
||||||
| ceil | false | 1 | true |
|
| ceil | false | 1 | true | |
|
||||||
| fetchTree | true | 1 | |
|
| fetchTree | true | 1 | | todo |
|
||||||
| floor | false | 1 | true |
|
| floor | false | 1 | true | |
|
||||||
| groupBy | false | 2 | true |
|
| groupBy | false | 2 | true | |
|
||||||
| traceVerbose | false | 2 | |
|
| traceVerbose | false | 2 | | todo |
|
||||||
| zipAttrsWith | false | 2 | true |
|
| zipAttrsWith | false | 2 | true | todo |
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue