2017-03-07 10:15 GMT-08:00 Ethan Furman <et...@stoneleaf.us>: > On 03/07/2017 09:41 AM, Brett Cannon wrote: > > I don't think a common practice has bubbled up yet for when there's both >> synchronous and asynchronous versions of an API >> (closest I have seen is appending an "a" to the async version but that >> just looks like a spelling mistake to me most of >> the time). This is why the question of whether separate modules are a >> better idea is coming up. >> > > I'm undoubtedly going to show my ignorance with this question, but is it > feasible to have both sync and async support in the same object? > > It's possible, but it quickly gets awkward and will require a lot of code duplication. For example, we could make @contextmanager work for async functions by making the _GeneratorContextManager class implement both enter/exit and aenter/aexit, but then you'd get an obscure error if you used with on an async contextmanager or async with on a non-async contextmanager.
> -- > ~Ethan~ > > _______________________________________________ > Python-Dev mailing list > Python-Dev@python.org > https://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: https://mail.python.org/mailman/options/python-dev/jelle. > zijlstra%40gmail.com >
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com