about summary refs log tree commit diff
path: root/tvix/eval/src/builtins/mod.rs
diff options
context:
space:
mode:
authorsterni <sternenseemann@systemli.org>2022-09-21T11·44+0200
committersterni <sternenseemann@systemli.org>2022-09-21T14·23+0000
commit9a8a6a33f9265a3844e91f2c1aab0b28ac46decf (patch)
tree6ed0e4dba73bf1ce9e5fd272d303b931c6080e7e /tvix/eval/src/builtins/mod.rs
parente9e06b8bae9b4f55ace0e8e6b6ae5e77de4c8e71 (diff)
fix(tvix/eval): implement C++ Nix version part comparison algorithm r/4949
This is based on the [relevant code] in C++ Nix. Our version has more
branches because the C++ one only checks if it is less than or not, so
can save handling a few cases. We on the other hand, can avoid calling
the algorithm twice. It'd be nice to implement proptests for this in the
future and to make sure that this weird little algorithm doesn't violate
the Ord laws.

[relevant code]: https://github.com/NixOS/nix/blob/cd35bbbeef72375873e396b9ffed14a4638693a8/src/libstore/names.cc#L81-L94

Change-Id: I46642e6da5eac7c0883cdce860622cdba04cd12b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6719
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Diffstat (limited to 'tvix/eval/src/builtins/mod.rs')
0 files changed, 0 insertions, 0 deletions