From 5d2ae840f13641a6f699ab77d43e41d98f459053 Mon Sep 17 00:00:00 2001 From: Aspen Smith Date: Sat, 10 Feb 2024 12:21:06 -0500 Subject: refactor(tvix/eval): Box the inside of Value::Json serde_json::Value is pretty large, and is contributing (albeit not exclusively) to the large size of the Value repr. Putting it in a box is *especially* cheap (since it's rarely used) and allows us to (eventually) cut down on the size of Value. Change-Id: I005a802d8527b639beb4e938e3320b11ffa1ef23 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10795 Reviewed-by: sterni Autosubmit: aspen Tested-by: BuildkiteCI --- tvix/eval/src/value/json.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tvix/eval/src/value/json.rs') diff --git a/tvix/eval/src/value/json.rs b/tvix/eval/src/value/json.rs index c2f8b2c2b1ef..5c627540dbe8 100644 --- a/tvix/eval/src/value/json.rs +++ b/tvix/eval/src/value/json.rs @@ -111,7 +111,7 @@ impl Value { pub(crate) async fn into_json_generator(self, co: GenCo) -> Result { match self.into_json(&co).await? { Err(cek) => Ok(Value::Catchable(cek)), - Ok(json) => Ok(Value::Json(json)), + Ok(json) => Ok(Value::Json(Box::new(json))), } } } -- cgit 1.4.1