summaryrefslogtreecommitdiff
path: root/examples/13-transient-0/src/data.hob
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-31 12:34:40 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-31 12:41:53 +0100
commit5148cdd9343e28e945c3e4c206d5d29c5790c001 (patch)
tree191b5f9b494dfa046f61286185c09d6d4ef5ed81 /examples/13-transient-0/src/data.hob
parent4bf0bacb0f369962144f51ad4491ac58875532a0 (diff)
Support circular imports
Diffstat (limited to 'examples/13-transient-0/src/data.hob')
-rw-r--r--examples/13-transient-0/src/data.hob87
1 files changed, 87 insertions, 0 deletions
diff --git a/examples/13-transient-0/src/data.hob b/examples/13-transient-0/src/data.hob
new file mode 100644
index 0000000..39a55c9
--- /dev/null
+++ b/examples/13-transient-0/src/data.hob
@@ -0,0 +1,87 @@
+struct StructSingleton {
+ singleton;
+}
+
+struct StructWithBool {
+ field a: Bool;
+ field b: Bool;
+}
+
+struct StructWithInt8 {
+ field a: Int8;
+ field b: Int8;
+}
+
+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];
+}