refactor(tvix/eval): Box Value::String
NixString is *quite* large - like 80 bytes - because of the extra capacity value for BString and because of the context. We want to keep Value small since we're passing it around a lot, so let's box the NixString inside Value::String to save on some memory, and make cloning ostensibly a little cheaper Change-Id: I343c8b4e7f61dc3dcbbaba4382efb3b3e5bbabb2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10729 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
This commit is contained in:
parent
4c5d9fa356
commit
5f0f4ea374
15 changed files with 69 additions and 72 deletions
|
|
@ -91,7 +91,7 @@ fn leaf_value() -> impl Strategy<Value = Value> {
|
|||
any::<bool>().prop_map(Bool),
|
||||
any::<i64>().prop_map(Integer),
|
||||
any::<f64>().prop_map(Float),
|
||||
any::<NixString>().prop_map(String),
|
||||
any::<Box<NixString>>().prop_map(String),
|
||||
any::<OsString>().prop_map(|s| Path(PathBuf::from(s).into_boxed_path())),
|
||||
]
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue