mirror of
https://github.com/NixOS/nix.git
synced 2025-11-14 22:42:41 +01:00
Thunks are now overwritten by a helper function `Value::finishValue(newType, payload)` (where `payload` is the original anonymous union inside `Value`). This helps to ensure we never update a value elsewhere, since that would be incompatible with parallel evaluation (i.e. after a value has transitioned from being a thunk to being a non-thunk, it should be immutable). There were two places where this happened: `Value::mkString()` and `ExprAttrs::eval()`. This PR also adds a bunch of accessor functions for value contents, like `Value::integer()` to access the integer field in the union. |
||
|---|---|---|
| .. | ||
| functional | ||
| installer | ||
| nixos | ||
| unit | ||