struct Foo { mut: func1 fn (int) = unsafe { nil } func2 fn (int) = do } fn do(a int) { println('hello') } mut foo := Foo{} foo.func1 = do mut p := spawn foo.func1(1) p.wait() p = spawn foo.func2(1) p.wait()