run() is the key part that makes the hybrid async-sync possible in httpout. This function is used to run a coroutine and then return a concurrent.futures.Future object.

Unlike asyncio.run, this function (along with wait) does not create a new event loop but uses the existing one.

Example:

import httpout

async def main():
    pass

httpout.run(main())