holey-bytes/hblang/examples/structs.hb

27 lines
321 B
Plaintext
Raw Normal View History

2024-05-12 10:16:40 +00:00
Ty := struct {
a: int,
b: int,
2024-05-12 10:16:40 +00:00
}
2024-05-12 18:10:50 +00:00
Ty2 := struct {
ty: Ty,
c: int,
}
2024-05-12 10:16:40 +00:00
main := fn(): int {
2024-05-13 07:38:33 +00:00
finst := Ty2.{ ty: Ty.{ a: 4, b: 1 }, c: 3 };
inst := odher_pass(finst);
2024-05-12 18:10:50 +00:00
if inst.c == 3 {
2024-05-12 20:40:28 +00:00
return pass(&inst.ty);
2024-05-12 18:10:50 +00:00
}
return 0;
}
2024-05-12 20:40:28 +00:00
pass := fn(t: *Ty): int {
2024-05-12 18:10:50 +00:00
return t.a - t.b;
2024-05-12 10:16:40 +00:00
}
2024-05-13 07:38:33 +00:00
odher_pass := fn(t: Ty2): Ty2 {
return t;
}