diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-07-26 00:55:32 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-07-26 00:55:32 +0100 |
| commit | f47074c2955d97c581255886b6597bbc95a4ff10 (patch) | |
| tree | b110a54e4f2f464965708d52fd8a5a749ceaadbf /examples/11-transient-0/output/rust/src/gen/transient_0.rs | |
| parent | 6925ba376ee030738d5634574b3f3e353fd19d47 (diff) | |
Implement shared values for rust-transient-0
Diffstat (limited to 'examples/11-transient-0/output/rust/src/gen/transient_0.rs')
| -rw-r--r-- | examples/11-transient-0/output/rust/src/gen/transient_0.rs | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/examples/11-transient-0/output/rust/src/gen/transient_0.rs b/examples/11-transient-0/output/rust/src/gen/transient_0.rs index 560fe51..393b397 100644 --- a/examples/11-transient-0/output/rust/src/gen/transient_0.rs +++ b/examples/11-transient-0/output/rust/src/gen/transient_0.rs @@ -1,6 +1,6 @@ // Generated by hobgoblin. -pub fn encode_bool(value: &::core::primitive::bool, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> { +pub fn encode_bool(value: &::core::primitive::bool, writer: &mut impl std::io::Write, shared_values: &mut ::std::collections::HashMap::<::core::primitive::usize, ::core::primitive::i64>) -> ::std::io::Result::<()> { if *value { writer.write_all(&1u8.to_le_bytes())?; } else { @@ -9,7 +9,7 @@ pub fn encode_bool(value: &::core::primitive::bool, writer: &mut impl std::io::W ::std::io::Result::Ok(()) } -pub fn decode_bool(reader: &mut impl std::io::Read) -> ::std::io::Result::<::core::primitive::bool> { +pub fn decode_bool(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::bool> { let int_value = { let bytes = { let mut bytes = [0; 1]; @@ -25,12 +25,12 @@ pub fn decode_bool(reader: &mut impl std::io::Read) -> ::std::io::Result::<::cor }) } -pub fn encode_int_32(value: &::core::primitive::i32, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> { +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(()) } -pub fn decode_int_32(reader: &mut impl std::io::Read) -> ::std::io::Result::<::core::primitive::i32> { +pub fn decode_int_32(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::i32> { let bytes = { let mut bytes = [0; 4]; reader.read_exact(&mut bytes)?; @@ -39,12 +39,12 @@ pub fn decode_int_32(reader: &mut impl std::io::Read) -> ::std::io::Result::<::c std::io::Result::Ok(::core::primitive::i32::from_le_bytes(bytes)) } -pub fn encode_int_64(value: &::core::primitive::i64, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> { +pub fn encode_int_64(value: &::core::primitive::i64, 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_64(reader: &mut impl std::io::Read) -> ::std::io::Result::<::core::primitive::i64> { +pub fn decode_int_64(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::i64> { let bytes = { let mut bytes = [0; 8]; reader.read_exact(&mut bytes)?; @@ -53,14 +53,14 @@ pub fn decode_int_64(reader: &mut impl std::io::Read) -> ::std::io::Result::<::c std::io::Result::Ok(::core::primitive::i64::from_le_bytes(bytes)) } -pub fn encode_string(value: &::std::string::String, writer: &mut impl std::io::Write) -> ::std::io::Result::<()> { - crate::transient_0::encode_int_64(&((value.len()).try_into()).map_err(|error| ::std::io::Error::new(::std::io::ErrorKind::InvalidData, error))?, writer)?; +pub fn encode_string(value: &::std::string::String, 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_64(&((value.len()).try_into()).map_err(|error| ::std::io::Error::new(::std::io::ErrorKind::InvalidData, error))?, writer, shared_values)?; writer.write_all(value.as_bytes())?; ::std::io::Result::Ok(()) } -pub fn decode_string(reader: &mut impl std::io::Read) -> ::std::io::Result::<::std::string::String> { - let len = crate::transient_0::decode_int_64(reader)?; +pub fn decode_string(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::<::std::string::String> { + let len = crate::transient_0::decode_int_64(reader, shared_values)?; let bytes = { let mut bytes = vec![0u8; (len.try_into()).map_err(|error| ::std::io::Error::new(::std::io::ErrorKind::InvalidData, error))?]; reader.read_exact(&mut bytes)?; |
