public async T foo (T bar) { return bar; } void main () { MainLoop loop = new MainLoop (); foo.begin ("test", (s,r) => { assert (foo.end (r) == "test"); loop.quit (); }); loop.run (); }