vua/multiarray_test.v
2025-06-19 22:38:38 -05:00

32 lines
640 B
V

module multiarray
union SoA {
nil nil = unsafe { nil }
int int
bool bool
}
fn test_basics() {
mut arr := MultiArray.new(0, 10, SoA{})
// test: add an int
arr.add('int' , SoA{ int: 42 })
arr.add('int' , SoA{ int: 43 })
arr.add('int' , SoA{ int: 44 })
arr.add('bool', SoA{ bool: true })
arr.add('nil' , SoA{})
arr.add('nil' , SoA{})
arr.add('nil' , SoA{})
arr.add('nil' , SoA{})
it := arr.iter()
for item in it {
println('Iterating over MultiArray[${item.tag}]:')
if item.tag == 'int' {
println('${item.tag}s > ${unsafe{item.data.int}}')
}
}
println('Created MultiArray with len: $arr.len, cap: $arr.cap')
}