summaryrefslogtreecommitdiff
path: root/examples/10-transient-0/output/rust/src/gen/data
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-19 17:54:59 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-19 17:54:59 +0100
commit104245a9b01c379cca76c3114702415d7d296563 (patch)
tree1bce77836f6eac64f39ec2ff3c78bfc1daa03b1c /examples/10-transient-0/output/rust/src/gen/data
parenta11c9415b63f45c316d3b08d656fa93eb9602f13 (diff)
Support enums in rust-transient-0
Diffstat (limited to 'examples/10-transient-0/output/rust/src/gen/data')
-rw-r--r--examples/10-transient-0/output/rust/src/gen/data/transient_0.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/examples/10-transient-0/output/rust/src/gen/data/transient_0.rs b/examples/10-transient-0/output/rust/src/gen/data/transient_0.rs
index c5bb458..fbfc82d 100644
--- a/examples/10-transient-0/output/rust/src/gen/data/transient_0.rs
+++ b/examples/10-transient-0/output/rust/src/gen/data/transient_0.rs
@@ -152,6 +152,24 @@ pub fn decode_struct_with_option(reader: &mut impl std::io::Read) -> ::std::io::
std::io::Result::Ok(crate::data::StructWithOption { a: a, b: b })
}
+pub fn encode_enum_with_variants(value: &crate::data::EnumWithVariants, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> {
+ crate::transient_0::encode_int_32(&match value {
+ crate::data::EnumWithVariants::Zero => 0,
+ crate::data::EnumWithVariants::One => 1,
+ crate::data::EnumWithVariants::Two => 2,
+ }, writer)?;
+ ::std::io::Result::Ok(())
+}
+
+pub fn decode_enum_with_variants(reader: &mut impl std::io::Read) -> ::std::io::Result::<crate::data::EnumWithVariants> {
+ std::io::Result::Ok(match &crate::transient_0::decode_int_32(reader)? {
+ 0 => crate::data::EnumWithVariants::Zero,
+ 1 => crate::data::EnumWithVariants::One,
+ 2 => crate::data::EnumWithVariants::Two,
+ _ => todo!(),
+ })
+}
+
pub fn encode_variant_one(value: &crate::data::VariantOne, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> {
crate::transient_0::encode_int_32(&value.a, writer)?;
::std::io::Result::Ok(())