#callback #await #converting #results #obtaining #async-std #assist

callback-result

Assists in converting the callback function's method of obtaining results into the await method

4 releases

new 0.1.3 May 11, 2024
0.1.2 Apr 10, 2024
0.1.1 Apr 9, 2024
0.1.0 Mar 20, 2024

#498 in Asynchronous

Download history 123/week @ 2024-03-16 14/week @ 2024-03-23 15/week @ 2024-03-30 252/week @ 2024-04-06 27/week @ 2024-04-13

280 downloads per month

MIT license

16KB
378 lines

callback-result

Assists in converting the callback function's method of obtaining results into the await method

let waiter = Arc::new(CallbackWaiter::new());
let callback_id = 1;
let result_future = waiter.create_result_future(callback_id);
let tmp_waiter = waiter.clone();
async_std::task::spawn(async move {
    async_std::task::sleep(Duration::from_millis(1000)).await;
    tmp_waiter.set_result(callback_id, 1);
});
let ret = result_future.await.unwrap();
assert_eq!(ret, 1);

Dependencies

~5–14MB
~176K SLoC