struct Foo { a string b ?string c int d ?int e struct { i ?int } } fn run[T](val T) { $for field in T.fields { dump(val.$(field.name)) } println('ok') } fn test_main() { foo := Foo{'c', 'd', 1, 0, struct {100}} run(foo) }