struct Foo {
	test int
	name string
}

fn test[T]() {
	mut t := T{}
	$for f in T.fields {
		$if f.typ is string {
			t.$(f) = '3'
			fv := Foo{}
			_ = t.$(fv.name)
		}
	}
	_ = t.$(f.name)
}

fn main() {
	test[Foo]()
}
