summaryrefslogtreecommitdiff
path: root/examples/13-transient-0/output/rust/src/gen/data.rs
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-31 15:06:36 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-31 15:06:36 +0100
commit904d7f9db65fa5542cdd44b8dd360c271a931cc6 (patch)
treea34aacccbf60af14f092d212d875d51560e2734d /examples/13-transient-0/output/rust/src/gen/data.rs
parent0a2349963e03a98c1fc3682cdd3cd70c3290011d (diff)
Handle boxed variants in rust-transient-0
Diffstat (limited to 'examples/13-transient-0/output/rust/src/gen/data.rs')
-rw-r--r--examples/13-transient-0/output/rust/src/gen/data.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/examples/13-transient-0/output/rust/src/gen/data.rs b/examples/13-transient-0/output/rust/src/gen/data.rs
index 50a0673..77bcbe8 100644
--- a/examples/13-transient-0/output/rust/src/gen/data.rs
+++ b/examples/13-transient-0/output/rust/src/gen/data.rs
@@ -93,6 +93,24 @@ pub struct VariantTwo {
}
#[derive(Clone, Debug, Hash, PartialEq)]
+pub enum SumWithBoxedVariants {
+ VariantOne(::std::boxed::Box::<crate::data::VariantOne>),
+ VariantTwo(::std::boxed::Box::<crate::data::VariantTwo>),
+}
+
+impl ::std::convert::From::<crate::data::VariantOne> for crate::data::SumWithBoxedVariants {
+ fn from(value: crate::data::VariantOne) -> Self {
+ Self::VariantOne(::std::boxed::Box::new(value))
+ }
+}
+
+impl ::std::convert::From::<crate::data::VariantTwo> for crate::data::SumWithBoxedVariants {
+ fn from(value: crate::data::VariantTwo) -> Self {
+ Self::VariantTwo(::std::boxed::Box::new(value))
+ }
+}
+
+#[derive(Clone, Debug, Hash, PartialEq)]
pub struct StructWithSum {
pub inner: crate::data::SumWithVariants,
pub b: ::core::primitive::i32,