summaryrefslogtreecommitdiff
path: root/examples/12-transient-0/output/rust/src
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-31 11:51:54 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-31 11:51:54 +0100
commitae413b3defdde71acbbb59b455e5e15321df6893 (patch)
treef7e6c78ed2fa839c1e659ab57a66fa309db92518 /examples/12-transient-0/output/rust/src
parent69ab5f074540a550393806de1a32d70d1c895121 (diff)
Add Int8 type
Diffstat (limited to 'examples/12-transient-0/output/rust/src')
-rw-r--r--examples/12-transient-0/output/rust/src/gen/data.rs6
-rw-r--r--examples/12-transient-0/output/rust/src/gen/data/transient_0.rs12
-rw-r--r--examples/12-transient-0/output/rust/src/gen/transient_0.rs14
-rw-r--r--examples/12-transient-0/output/rust/src/lib.rs14
4 files changed, 45 insertions, 1 deletions
diff --git a/examples/12-transient-0/output/rust/src/gen/data.rs b/examples/12-transient-0/output/rust/src/gen/data.rs
index aef9f69..bbaf4e7 100644
--- a/examples/12-transient-0/output/rust/src/gen/data.rs
+++ b/examples/12-transient-0/output/rust/src/gen/data.rs
@@ -10,6 +10,12 @@ pub struct StructWithBool {
}
#[derive(Debug, Hash, PartialEq)]
+pub struct StructWithInt8 {
+ pub a: ::core::primitive::i8,
+ pub b: ::core::primitive::i8,
+}
+
+#[derive(Debug, Hash, PartialEq)]
pub struct StructWithInt32 {
pub a: ::core::primitive::i32,
pub b: ::core::primitive::i32,
diff --git a/examples/12-transient-0/output/rust/src/gen/data/transient_0.rs b/examples/12-transient-0/output/rust/src/gen/data/transient_0.rs
index ca9beaf..8bf68cb 100644
--- a/examples/12-transient-0/output/rust/src/gen/data/transient_0.rs
+++ b/examples/12-transient-0/output/rust/src/gen/data/transient_0.rs
@@ -20,6 +20,18 @@ pub fn decode_struct_with_bool(reader: &mut impl std::io::Read, shared_values: &
::std::io::Result::Ok(crate::data::StructWithBool { a: a, b: b })
}
+pub fn encode_struct_with_int_8(value: &crate::data::StructWithInt8, writer: &mut impl std::io::Write, shared_values: &mut ::std::collections::HashMap::<::core::primitive::usize, ::core::primitive::i64>) -> ::std::io::Result::<()> {
+ crate::transient_0::encode_int_8(&value.a, writer, shared_values)?;
+ crate::transient_0::encode_int_8(&value.b, writer, shared_values)?;
+ ::std::io::Result::Ok(())
+}
+
+pub fn decode_struct_with_int_8(reader: &mut impl std::io::Read, shared_values: &mut ::std::vec::Vec::<::std::sync::Arc::<dyn ::std::any::Any + ::std::marker::Sync + ::std::marker::Send>>) -> ::std::io::Result::<crate::data::StructWithInt8> {
+ let a = crate::transient_0::decode_int_8(reader, shared_values)?;
+ let b = crate::transient_0::decode_int_8(reader, shared_values)?;
+ ::std::io::Result::Ok(crate::data::StructWithInt8 { a: a, b: b })
+}
+
pub fn encode_struct_with_int_32(value: &crate::data::StructWithInt32, writer: &mut impl std::io::Write, shared_values: &mut ::std::collections::HashMap::<::core::primitive::usize, ::core::primitive::i64>) -> ::std::io::Result::<()> {
crate::transient_0::encode_int_32(&value.a, writer, shared_values)?;
crate::transient_0::encode_int_32(&value.b, writer, shared_values)?;
diff --git a/examples/12-transient-0/output/rust/src/gen/transient_0.rs b/examples/12-transient-0/output/rust/src/gen/transient_0.rs
index d88284e..6505408 100644
--- a/examples/12-transient-0/output/rust/src/gen/transient_0.rs
+++ b/examples/12-transient-0/output/rust/src/gen/transient_0.rs
@@ -25,6 +25,20 @@ pub fn decode_bool(reader: &mut impl std::io::Read, shared_values: &mut ::std::v
})
}
+pub fn encode_int_8(value: &::core::primitive::i8, writer: &mut impl std::io::Write, shared_values: &mut ::std::collections::HashMap::<::core::primitive::usize, ::core::primitive::i64>) -> ::std::io::Result::<()> {
+ writer.write_all(&value.to_le_bytes())?;
+ ::std::io::Result::Ok(())
+}
+
+pub fn decode_int_8(reader: &mut impl std::io::Read, shared_values: &mut ::std::vec::Vec::<::std::sync::Arc::<dyn ::std::any::Any + ::std::marker::Sync + ::std::marker::Send>>) -> ::std::io::Result::<::core::primitive::i8> {
+ let bytes = {
+ let mut bytes = [0; 1];
+ reader.read_exact(&mut bytes)?;
+ bytes
+ };
+ ::std::io::Result::Ok(::core::primitive::i8::from_le_bytes(bytes))
+}
+
pub fn encode_int_32(value: &::core::primitive::i32, writer: &mut impl std::io::Write, shared_values: &mut ::std::collections::HashMap::<::core::primitive::usize, ::core::primitive::i64>) -> ::std::io::Result::<()> {
writer.write_all(&value.to_le_bytes())?;
::std::io::Result::Ok(())
diff --git a/examples/12-transient-0/output/rust/src/lib.rs b/examples/12-transient-0/output/rust/src/lib.rs
index 365a352..b858f24 100644
--- a/examples/12-transient-0/output/rust/src/lib.rs
+++ b/examples/12-transient-0/output/rust/src/lib.rs
@@ -8,7 +8,7 @@ mod test {
use std::path::PathBuf;
use std::sync::Arc;
use std::collections::HashMap;
- use super::data::{EnumWithVariants, StructSingleton, StructWithBool, StructWithDifferentSharedTypes, StructWithEnum, StructWithInt32, StructWithInt64, StructWithList, StructWithListOfShared, StructWithOption, StructWithSharedSumAndVariant, StructWithString, StructWithStruct, StructWithSum, SumWithVariants, VariantOne, VariantTwo };
+ use super::data::{EnumWithVariants, StructSingleton, StructWithBool, StructWithDifferentSharedTypes, StructWithEnum, StructWithInt8, StructWithInt32, StructWithInt64, StructWithList, StructWithListOfShared, StructWithOption, StructWithSharedSumAndVariant, StructWithString, StructWithStruct, StructWithSum, SumWithVariants, VariantOne, VariantTwo };
#[test]
fn struct_singleton() {
@@ -35,6 +35,18 @@ mod test {
}
#[test]
+ fn struct_with_int_8() {
+ let value = StructWithInt8 { a: 10, b: 25 };
+
+ assert_round_trip_encoding(
+ "StructWithInt8",
+ value,
+ super::data::transient_0::encode_struct_with_int_8,
+ super::data::transient_0::decode_struct_with_int_8,
+ );
+ }
+
+ #[test]
fn struct_with_int_32() {
let value = StructWithInt32 { a: 10, b: 25 };