Async runtime
The C side of async and await: installing the runtime, driving it once per frame, and settling a Future from native code.
The runtime does not run itself. sqasync::pump advances every task that waits on a Future. In a host that never calls it, async functions start and never finish. See The async runtime for where to put that call and how to shut down cleanly.
The descriptions here come from the header, which documents these functions in more detail.
Install the async runtime into the VM's shared state and build the Future class.
Drain the inbox + internal step queue.
True iff the runtime has work it can drive forward on its own (queue or inbox non-empty, or a deferred unhandled-fault sweep is pending).
Schedule fn(user) to run on the VM thread inside the next pump().
Thread-safe variant of post_on_vm_thread: any thread may call.
Push the cached Future class onto the stack.
Create a fresh Future instance and write an addref'd handle into *out.
Settle a Future from C.
Settles a Future from C with a thrown value, the failure counterpart of future_resolve.
SqModules RegFunc-shaped entry point.