std :: async::coro
Macro AWAIT_INTO
#define AWAIT_INTO(k, dst, fut) *__async_st = __async_point_##k; __async_resume_##k: { auto __async_p = (fut).poll(cx); if (__async_p.is_pending() != 0) { __async_p.drop(); return Poll::pending(); } (dst) = __async_p.unwrap(); }