21 lines
299 B
Plaintext
21 lines
299 B
Plaintext
import leaf.reflection.comptime
|
|
|
|
add :: fn(a: u32, b: u32) u32 {
|
|
a + b
|
|
}
|
|
|
|
Vector :: fn(T: type, count: usize) type {
|
|
NAMES :: ["x", "y", "z", "w"]
|
|
|
|
ty := TypeBuilder.struct()
|
|
for i in 0..count {
|
|
ty.push(Field {
|
|
name: NAMES[i],
|
|
type: T,
|
|
flags: FieldFlags.Public
|
|
})
|
|
}
|
|
|
|
ty.build()
|
|
}
|