A not-actually-async async runner (for coroutines, etc).
Lets you run futures in the current thread, blocking until they await or exit.
Primairly intended as a coroutine alternative, when you want a separate thread of executiong but want to run it synchronously with your main thread. Can also be used for testing, and also functions as a basic example of how to execute futures, as a stepping stone to writing your own scheduler.
It's not very big, and the code has comments. Check the tests for some simple examples.
use runner;
use Poll;
use ;
use ;
let = channel;
sender.try_send.unwrap;
sender.try_send.unwrap;
sender.try_send.unwrap;
sender.close_channel;
let coro = runner;
pin_mut!;
// Ready immediately since the messages are all there
assert_eq!;