api
async.ch
Declarations in async.ch
1 declarationscore
Declarations
Public only
core#
Publicnamespace
namespace core
The async/await runtime protocol (design Section 4.2/4.3).
async#
Publicnamespace
namespace async
Poll#
Publicvariant
The output of polling a future.
WakerVTable#
Publicstruct
struct WakerVTable {
var wake : func(*void) : void
var clone : func(*void) : Waker
var drop : func(*void) : void
}
A type-erased wake callback table. `data` is the task handle.
Waker#
Publicstruct
A cloneable, type-erased wake callback. `data` points at the task.
Context#
Publicstruct
Passed to every poll; carries the waker for the current task.
Future#
Publicinterface
interface Future<T>
The contract a hand-authored future implements. An `async func` does NOT
FutureTable#
Publicstruct
The vtable behind every runtime future handle.
FutureHandle#
Publicstruct
The concrete, move-only representation of every future. `@delete` is what
delete#
Publicfunction
func delete(self : &FutureHandle) : void
chemical_async_frame_alloc#
Publicfunction
func chemical_async_frame_alloc(size : u64, align : u64) : *void
Frame allocation hooks, provided by the runtime library (`lang/libs/async`).
chemical_async_frame_free#
Publicfunction
func chemical_async_frame_free(ptr : *void, size : u64, align : u64) : void