summaryrefslogtreecommitdiff
path: root/examples/12-transient-0/src
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-31 10:50:10 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-31 10:50:10 +0100
commit578bf1f04b48f48225cfa794a27426cca4f6384a (patch)
treefc5c2737ffa65e20305f165a593111463a36166d /examples/12-transient-0/src
parent1831d27671abe87bcbea5da40517093c37efb9b7 (diff)
Support singleton structs
Diffstat (limited to 'examples/12-transient-0/src')
-rw-r--r--examples/12-transient-0/src/data.hob78
1 files changed, 78 insertions, 0 deletions
diff --git a/examples/12-transient-0/src/data.hob b/examples/12-transient-0/src/data.hob
new file mode 100644
index 0000000..9c715e9
--- /dev/null
+++ b/examples/12-transient-0/src/data.hob
@@ -0,0 +1,78 @@
+struct StructWithBool {
+ field a: Bool;
+ field b: Bool;
+}
+
+struct StructWithInt32 {
+ field a: Int32;
+ field b: Int32;
+}
+
+struct StructWithInt64 {
+ field a: Int64;
+ field b: Int64;
+}
+
+struct StructWithString {
+ field a: String;
+ field b: String;
+}
+
+struct StructWithStruct {
+ field inner: StructWithInt32;
+ field c: Int32;
+}
+
+struct StructWithList {
+ field a: List[Int64];
+ field b: List[StructWithInt32];
+}
+
+struct StructWithOption {
+ field a: Option[Int64];
+ field b: Option[StructWithInt32];
+}
+
+enum EnumWithVariants {
+ variant zero;
+ variant one;
+ variant two;
+}
+
+struct StructWithEnum {
+ field inner: EnumWithVariants;
+ field c: Int32;
+}
+
+sum SumWithVariants {
+ variant VariantOne;
+ variant VariantTwo;
+}
+
+struct VariantOne {
+ field a: Int32;
+}
+
+struct VariantTwo {
+ field a: Int64;
+}
+
+struct StructWithSum {
+ field inner: SumWithVariants;
+ field b: Int32;
+}
+
+struct StructWithListOfShared {
+ field inner: List[Shared[StructWithInt32]];
+}
+
+struct StructWithDifferentSharedTypes {
+ field a: Shared[StructWithInt32];
+ field b: Shared[StructWithInt64];
+ field c: Shared[StructWithInt32];
+}
+
+struct StructWithSharedSumAndVariant {
+ field a: Shared[SumWithVariants];
+ field b: Shared[VariantOne];
+}