diff options
author | Vincent Ambo <mail@tazj.in> | 2023-02-27T07·22+0300 |
---|---|---|
committer | tazjin <tazjin@tvl.su> | 2023-03-13T20·30+0000 |
commit | 4bbfeaf1cbf6f0d1ea94c0fc405512259e856e0a (patch) | |
tree | fefa0071e15b54a050a553896ee086b44ef3907a /tvix/eval/src/value/attrs.rs | |
parent | 83b2290e1b10683d2dca4b8e20e995662852ab9a (diff) |
refactor(tvix/eval): wrap NixList in Rc r/5966
The size of a `Vector<Value>` is 64 *bytes*, which is quite large, and it bloated the entire Value type to this size. This change adds an indirection for the inner vector through Rc. Initially I tried to use a Box, but this breaks pointer equality guarantees for the Vector when it is small enough to be inlined. This reduces the size of Value from 64 to 32 bytes. Change-Id: Ic3211e861b1966c78b2c3d536ba291fea92647fd Reviewed-on: https://cl.tvl.fyi/c/depot/+/8150 Reviewed-by: raitobezarius <tvl@lahfa.xyz> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/eval/src/value/attrs.rs')
0 files changed, 0 insertions, 0 deletions