tvl-depot/tvix
Lyle Mantooth 39dba6aa16 feat(tvix/eval): impl FromIterator for NixAttrs
Allows for the removal of some BTreeMap usage when constructing NixAttrs
by allowing any iterator over 2-tuples to build a NixAttrs. Some
instances of BTreeMap didn't have anything to do with making NixAttrs,
and some were just the best tool for the job, so they are left using the
old `from_map` interface.

Change-Id: I668ea600b0d93eae700a6b1861ac84502c968d78
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7492
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2022-12-02 14:46:47 +00:00
..
.vscode chore(tvix): fix vscode rust-analyzer recommendation 2022-10-15 16:54:28 +00:00
docs docs(tvix): document pointer equality in (C++) Nix 2022-11-25 10:27:08 +00:00
eval feat(tvix/eval): impl FromIterator for NixAttrs 2022-12-02 14:46:47 +00:00
nix_cli feat(tvix/eval): move shell.nix and .envrc to //tvix 2022-11-11 19:55:12 +00:00
proto chore(tvix/proto/castore.proto) rename *Node.{ref->digest} 2022-11-08 17:57:53 +00:00
verify-lang-tests test(tvix/eval): verify pointer equality in list comparisons 2022-12-02 14:06:22 +00:00
.envrc feat(tvix/eval): move shell.nix and .envrc to //tvix 2022-11-11 19:55:12 +00:00
.gitignore feat(tvix/): .gitignore target folders 2022-11-11 19:55:12 +00:00
LICENSE chore(tvix): Bootstrap Tvix folder 2021-03-27 00:09:49 +00:00
OWNERS chore(gerrit): migrate OWNERS files to code-owners style 2022-09-19 11:13:28 +00:00
README.md chore(tvix): Bootstrap Tvix folder 2021-03-27 00:09:49 +00:00
shell.nix feat(tvix/eval): move shell.nix and .envrc to //tvix 2022-11-11 19:55:12 +00:00

Tvix

For more information about Tvix, contact one of the project owners. We are interested in people who would like to help us review designs, brainstorm and describe requirements that we may not yet have considered.

License structure

All code implemented for Tvix is licensed under the GPL-3.0, with the exception of the protocol buffer definitions used for communication between services which are available under a more permissive license (MIT).

The idea behind this structure is that any direct usage of our code (e.g. linking to it, embedding the evaluator, etc.) will fall under the terms of the GPL3, but users are free to implement their own components speaking these protocols under the terms of the MIT license.