From fd0f0445e8fc2c8c501a3f756eae6287284aa630 Mon Sep 17 00:00:00 2001 From: Trevin Chow Date: Sat, 4 Apr 2026 01:45:53 -0700 Subject: [PATCH 1/2] feat: add blanket IntoAttributeValue impl for references Adds `impl IntoAttributeValue for &T` so users don't need to explicitly dereference or clone when passing references to RSX attributes. Closes #5444 --- packages/core/src/nodes.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/core/src/nodes.rs b/packages/core/src/nodes.rs index 2ea10ac329..1827f8167a 100644 --- a/packages/core/src/nodes.rs +++ b/packages/core/src/nodes.rs @@ -1123,6 +1123,12 @@ impl IntoAttributeValue for Option { } } +impl IntoAttributeValue for &T { + fn into_value(self) -> AttributeValue { + self.clone().into_value() + } +} + pub struct AnyFmtMarker; impl IntoAttributeValue for T where From 4809c3d39225ea4c2b0a427418e52ed0507b79ce Mon Sep 17 00:00:00 2001 From: Jonathan Kelley Date: Tue, 7 Apr 2026 16:43:55 -0700 Subject: [PATCH 2/2] use to-owned --- packages/core/src/nodes.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/src/nodes.rs b/packages/core/src/nodes.rs index 1827f8167a..0d059bd5cb 100644 --- a/packages/core/src/nodes.rs +++ b/packages/core/src/nodes.rs @@ -1123,9 +1123,9 @@ impl IntoAttributeValue for Option { } } -impl IntoAttributeValue for &T { +impl, R: IntoAttributeValue> IntoAttributeValue for &T { fn into_value(self) -> AttributeValue { - self.clone().into_value() + self.to_owned().into_value() } }