diff options
Diffstat (limited to 'examples/11-transient-0/output/rust/src')
| -rw-r--r-- | examples/11-transient-0/output/rust/src/gen/data.rs | 6 | ||||
| -rw-r--r-- | examples/11-transient-0/output/rust/src/gen/data/transient_0.rs | 12 |
2 files changed, 18 insertions, 0 deletions
diff --git a/examples/11-transient-0/output/rust/src/gen/data.rs b/examples/11-transient-0/output/rust/src/gen/data.rs index 6703918..cdc5aab 100644 --- a/examples/11-transient-0/output/rust/src/gen/data.rs +++ b/examples/11-transient-0/output/rust/src/gen/data.rs @@ -100,3 +100,9 @@ pub struct StructWithDifferentSharedTypes { pub b: ::std::sync::Arc::<crate::data::StructWithInt64>, pub c: ::std::sync::Arc::<crate::data::StructWithInt32>, } + +#[derive(Debug, PartialEq)] +pub struct StructWithSharedSumAndVariant { + pub a: ::std::sync::Arc::<crate::data::SumWithVariants>, + pub b: ::std::sync::Arc::<crate::data::VariantOne>, +} diff --git a/examples/11-transient-0/output/rust/src/gen/data/transient_0.rs b/examples/11-transient-0/output/rust/src/gen/data/transient_0.rs index fb07229..cffb318 100644 --- a/examples/11-transient-0/output/rust/src/gen/data/transient_0.rs +++ b/examples/11-transient-0/output/rust/src/gen/data/transient_0.rs @@ -257,3 +257,15 @@ pub fn decode_struct_with_different_shared_types(reader: &mut impl std::io::Read let c = ::std::sync::Arc::new(crate::data::transient_0::decode_struct_with_int_32(reader)?); std::io::Result::Ok(crate::data::StructWithDifferentSharedTypes { a: a, b: b, c: c }) } + +pub fn encode_struct_with_shared_sum_and_variant(value: &crate::data::StructWithSharedSumAndVariant, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> { + crate::data::transient_0::encode_sum_with_variants((&value.a).as_ref(), writer)?; + crate::data::transient_0::encode_variant_one((&value.b).as_ref(), writer)?; + ::std::io::Result::Ok(()) +} + +pub fn decode_struct_with_shared_sum_and_variant(reader: &mut impl std::io::Read) -> ::std::io::Result::<crate::data::StructWithSharedSumAndVariant> { + let a = ::std::sync::Arc::new(crate::data::transient_0::decode_sum_with_variants(reader)?); + let b = ::std::sync::Arc::new(crate::data::transient_0::decode_variant_one(reader)?); + std::io::Result::Ok(crate::data::StructWithSharedSumAndVariant { a: a, b: b }) +} |
