Skip to main content

Convert async coroutines to normal python functions

Project description

Convert async coroutine functions to normal ones.

Installation

$ pip install async_to_sync

Usage

import async_to_sync as sync

# an async object method to demonstrate use
class async_class:
    async def sum(self, a, b):
        return a + b
async_object = async_class()

# wrap all async methods of an object
sync_object = sync.methods(async_object)

assert sync_object.sum(1,2) == 3

# wrap a single async callable
sync_function = sync.function(async_object.sum)

assert sync_function(4,5) == 9

# wait for a coroutine
sync_result = sync.coroutine(async_object.sum(6,7))

assert sync_result == 13

# manually stop default event loop
sync.stop()

# manually start default event loop
sync.start()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

async_to_sync-0.2.3.tar.gz (4.2 kB view hashes)

Uploaded Source

Built Distribution

async_to_sync-0.2.3-py2.py3-none-any.whl (3.4 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page