From 5113f2157c5aa257ad7ebf555cb6a551701d169a Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 10 Aug 2026 10:19:49 +0100 Subject: Add generic struct example without any outputs --- .../16-transient-0/output/rust/src/gen/data.rs | 151 +++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 examples/16-transient-0/output/rust/src/gen/data.rs (limited to 'examples/16-transient-0/output/rust/src/gen/data.rs') diff --git a/examples/16-transient-0/output/rust/src/gen/data.rs b/examples/16-transient-0/output/rust/src/gen/data.rs new file mode 100644 index 0000000..6f1d5b5 --- /dev/null +++ b/examples/16-transient-0/output/rust/src/gen/data.rs @@ -0,0 +1,151 @@ +// Generated by hobgoblin. + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructSingleton; + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithBool { + pub a: ::core::primitive::bool, + pub b: ::core::primitive::bool, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithInt8 { + pub a: ::core::primitive::i8, + pub b: ::core::primitive::i8, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithInt32 { + pub a: ::core::primitive::i32, + pub b: ::core::primitive::i32, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithInt64 { + pub a: ::core::primitive::i64, + pub b: ::core::primitive::i64, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithString { + pub a: ::std::string::String, + pub b: ::std::string::String, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithStruct { + pub inner: crate::data::StructWithInt32, + pub c: ::core::primitive::i32, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithList { + pub a: ::std::vec::Vec::<::core::primitive::i64>, + pub b: ::std::vec::Vec::, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithOption { + pub a: ::std::option::Option::<::core::primitive::i64>, + pub b: ::std::option::Option::, +} + +#[derive(Clone, Copy, Debug, Hash, PartialEq)] +pub enum EnumWithVariants { + Zero, + One, + Two, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithEnum { + pub inner: crate::data::EnumWithVariants, + pub c: ::core::primitive::i32, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub enum SumWithVariants { + VariantOne(crate::data::VariantOne), + VariantTwo(crate::data::VariantTwo), +} + +impl ::std::convert::From:: for crate::data::SumWithVariants { + fn from(value: crate::data::VariantOne) -> Self { + Self::VariantOne(value) + } +} + +impl ::std::convert::From:: for crate::data::SumWithVariants { + fn from(value: crate::data::VariantTwo) -> Self { + Self::VariantTwo(value) + } +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct VariantOne { + pub a: ::core::primitive::i32, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct VariantTwo { + pub a: ::core::primitive::i64, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub enum SumWithBoxedVariants { + VariantOne(::std::boxed::Box::), + VariantTwo(::std::boxed::Box::), +} + +impl ::std::convert::From:: for crate::data::SumWithBoxedVariants { + fn from(value: crate::data::VariantOne) -> Self { + Self::VariantOne(::std::boxed::Box::new(value)) + } +} + +impl ::std::convert::From:: 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, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithNative { + pub a: crate::data::Native, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithGenericNative { + pub a: crate::data::GenericNative::<::core::primitive::i32, ::std::string::String>, + pub b: crate::data::GenericNative::<::std::option::Option::<::std::string::String>, crate::data::GenericNative::<::std::option::Option::<::std::string::String>, crate::data::GenericNative::<::std::string::String, ::std::string::String>>>, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithBox { + pub inner: ::std::boxed::Box::, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithListOfShared { + pub inner: ::std::vec::Vec::<::std::sync::Arc::>, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithDifferentSharedTypes { + pub a: ::std::sync::Arc::, + pub b: ::std::sync::Arc::, + pub c: ::std::sync::Arc::, +} + +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct StructWithSharedSumAndVariant { + pub a: ::std::sync::Arc::, + pub b: ::std::sync::Arc::, +} -- cgit v1.2.3