Skip to main content

Crate waker_tables

Crate waker_tables 

Source

Macros§

declare_raw_waker_vtable
Declare a RawWakerVTable for a specific UnsafeWakeable type.
derive_arc_unsafe_wakeable
Helper macro for the common Arc<T>-backed case.
derive_unsafe_wakeable_vtable
Derive an UnsafeWakeableVTable for a concrete type that implements UnsafeWakeableTask.

Structs§

RegisteredTask
Safer wrapper that couples a task pointer with the key used to resolve its vtable.
SmartWakerPtr
Cheap wrapper for Arc<T> + a RawWakerVTable.
UnsafeWakeablePtr
Thin pointer + vtable pair.
UnsafeWakeableVTable
Function-pointer vtable for UnsafeWakeableTask.
VTableKey
Key for identifying which vtable to use for a given task kind.
VTableRegistry
Global-ish registry of task vtables.

Statics§

GLOBAL_VTABLE_REGISTRY
One global registry (optional; you can ignore it and build your own).

Traits§

UnsafeWakeable
Safety
UnsafeWakeableTask
Trait describing an object that can be polled + woken + dropped via a manual vtable.

Functions§

raw_waker_from_ptr
Build a RawWaker from a raw pointer and pre-declared vtable.
waker_from_arc
Build a Waker from an Arc<T> + vtable.